diff --git a/Build/BuildDavid.fbp5 b/Build/Build.fbp5 similarity index 67% rename from Build/BuildDavid.fbp5 rename to Build/Build.fbp5 index 6664f43d..defe384e 100644 --- a/Build/BuildDavid.fbp5 +++ b/Build/Build.fbp5 @@ -47,11 +47,11 @@ False - + 16711680 - + False True @@ -102,11 +102,13 @@ False - + 0 False + + True True True @@ -142,7 +144,7 @@ False 0 1000 - False + True True 2 @@ -155,6 +157,163 @@ False False + + # + 16711680 + + # + False + True + False + True + False + + 0 + False + 0 + 1000 + False + + + # + 16711680 + + # + False + True + False + True + False + + 0 + False + 0 + 1000 + False + + + + + 16711680 + + + + False + True + False + True + False + + 0 + False + 0 + 1000 + False + + + # + 16711680 + + # + False + True + False + True + False + + 0 + False + 0 + 1000 + False + + + + + 8388736 + + + + True + True + False + True + False + + 0 + False + 0 + 1000 + False + + + + 0 + + True + True + False + _aux_path + False + True + False + + + + 0 + False + 0 + 1000 + True + False + + + + 0 + + True + True + %_aux_path% + True + False + True + False + + 0 + False + 0 + 1000 + False + + + + + + 0 + + True + True + _aux_path + False + True + False + + 0 + False + 0 + 1000 + False + + # 16711680 @@ -172,6 +331,23 @@ 1000 False + + # + 16711680 + + # + False + True + False + True + False + + 0 + False + 0 + 1000 + False + @@ -192,10 +368,12 @@ False - + 0 + + True True True @@ -210,226 +388,16 @@ 1000 False - - # - 16711680 - - # - False - True - False - True - False - - 0 - False - 0 - 1000 - False - - - - - 16711680 - - - - False - True - False - True - False - - 0 - False - 0 - 1000 - False - - - # - 16711680 - - # - False - True - False - True - False - - 0 - False - 0 - 1000 - False - - - - - 0 - - - - True - True - False - True - False - - 0 - False - 0 - 1000 - False - - - - 0 - - True - - - False - True - False - False - True - - - True - False - - False - - True - False - True - - 0 - False - - - 0 - 0 - tpNormal - True - 1000 - rcEqualTo - 0 - %source_path% - False - True - 1 - True - - - - - 0 - - %source_path%\ClearFiles.msbuild - True - False - True - - - False - - False - - True - False - llDetailed - - 0 - 1.2 - False - False - False - True - 0 - 0 - tpNormal - - - False - 1000 - v2.0 - False - CleanFiles - True - 2 - - - - # - 16711680 - - # - False - True - False - True - False - - 0 - False - 0 - 1000 - False - - - # - 16711680 - - # - False - True - False - True - False - - 0 - False - 0 - 1000 - False - - - - - 0 - - - - True - True - search_path - False - True - False - - 0 - False - 0 - SOFTWARE\Borland\BDS\4.0\Library - -2147483647 - rtString - - - 1000 - False - @@ -465,7 +433,7 @@ source_path 0 1000 False - + 0 @@ -477,7 +445,7 @@ source_path True 0 1252 - 11 + 12 Release False @@ -486,7 +454,7 @@ source_path True False - %source_path%\Iconos\Servidor.ico + %project_path%\Resources\Iconos\Servidor.ico False True True @@ -499,16 +467,16 @@ source_path False False True - 3081 + 3082 - 2 + 3 0 - 2 + 0 False 0 %source_path%\Servidor\FactuGES_Server.dpr True - 2 + 0 rcBorland @@ -518,43 +486,40 @@ source_path True False False - [usPackages,usVersionInfo] + [usPackages,usCompiler,usLinker,usVersionInfo] False True False False - False - True + False + False False True False False - + False - True + False - True + False False True @@ -568,7 +533,7 @@ CompileDate=martes, 28 de agosto de 2007 17:06 True %library_path% 0 - True + False 3 1048576 16384 @@ -577,18 +542,18 @@ CompileDate=martes, 28 de agosto de 2007 17:06 True %output_path%\Servidor False - rtl;vclx;vcl;dbrtl;vcldb;dbxcds;dbexpress;vclib;ibxpress;indy;dclofficexp;vclsmp;dsnap;bdertl;teeui;teedb;tee;vcldbx;vclactnband;dxbarextitemsd10;dxcomnd10;dxbard10;cxlibraryd10;cxeditorsd10;dxthemed10;cxdatad10;cxexteditorsd10;cxgridd10;cxpagecontrold10;cxschedulerd10;cxtreelistd10;cxverticalgridd10;dxbardbnavd10;dxbarextdbitemsd10;tbx_d10;tb2k_d10;ccpack10;ccpack10dsg;cxexportd10;cxintl5d10;adortl;dataabstract_core_d10;dataabstract_dbxdriver_d10;dataabstract_scripting_d10;dxdockingd10;dxlayoutcontrold10;dxnavbard10;dxpscored10;dxsbd10;fqb100;dxlayoutcontrolcxeditadaptersd10;dxpscxcommond10;dxpslnksd10;vclshlctrls;dxpscxextcommond10;dxpscxgridlnkd10;dxpscxpcprodd10;dxpscxscheduler2lnkd10;dxpscxtllnkd10;dxpsdbteechartd10;dxpsteechartd10;dxpsdxlclnkd10;dxpsprvwadvd10;guisdk_d10;jvappfrmd10r;jvcored10r;jcl;jclvcl;jvsystemd10r;jvstdctrlsd10r;jvbandsd10r;jvdbd10r;jvdlgsd10r;jvbded10r;jvcmpd10r;jvcryptd10r;jvctrlsd10r;jvcustomd10r;jvdockingd10r;jvdotnetctrlsd10r;jvedid10r;jvglobusd10r;jvhmid10r;jvinterpreterd10r;jvjansd10r;jvmanagedthreadsd10r;jvmmd10r;jvnetd10r;jvpagecompsd10r;jvplugind10r;jvprintpreviewd10r;jvruntimedesignd10r;jvtimeframeworkd10r;jvuibd10r;jvvalidatorsd10r;jvwizardd10r;jvxpctrlsd10r;pluginsdk_d10r;png_d10;pngcomponentsd10;inet;remobjects_webbroker_d10;remobjects_rodx_d10;remobjects_bpdx_d10;remobjects_indy_d10;pascalscript_ro_d10;indyprotocols;indycore;indysystem;dataabstract_ide_d10;fstee10;fs10;frx10;frxado10;frxbde10;frxdb10;frxdbx10;frxe10;frxibx10;frxtee10;fsado10;fsbde10;fsdb10;fsibx10 + False fa8 - True + False False - ..\DataAbstract_D10\Lib + True True False False WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; - + .\ False False True @@ -650,7 +615,7 @@ CompileDate=martes, 28 de agosto de 2007 17:06 Base - 255 + 8388736 Base True @@ -664,134 +629,6 @@ CompileDate=martes, 28 de agosto de 2007 17:06 0 1000 False - - - - 0 - - True - False - False - True - True - 0 - 1252 - 11 - Release - False - - - True - True - - False - - False - False - False - True - False - False - False - False - False - False - False - False - 3081 - - 0 - 0 - 0 - False - 0 - %source_path%\DataAbstract_D10\DataAbstract_D10.dpk - True - 0 - - - rcBorland - 1000 - - False - False - False - False - [] - False - False - - - - False - False - False - True - True - True - False - False - %package_path% - - - - False - %base_dcp_path% - True - - True - - False - True - False - False - True - 4194304 - False - False - False - True - %library_path% - 0 - True - 0 - 1048576 - 16384 - - True - True - - False - 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 - False - fa8 - True - False - %search_path% - True - True - False - False - WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; - - False - False - True - - @@ -804,8 +641,8 @@ Comments= True 0 1252 - 11 - Release + 12 + Debug False @@ -816,7 +653,7 @@ Comments= False False - False + True True False False @@ -826,9 +663,9 @@ Comments= False False False - 3081 + 3082 - 0 + 1 0 0 False @@ -845,35 +682,31 @@ Comments= False False False - [] + [usPackages,usCompiler,usLinker,usVersionInfo] False False False False False - True - True + False + False True False False %package_path% - + False @@ -900,18 +733,143 @@ Comments= 16384 True - True - + False + %output_path%\Cliente False False fa8 True False - %search_path% + True True - False + True + False + WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; + + False + False + True + + + + + + 0 + + True + False + False + True + True + 0 + 1252 + 12 + Debug + False + + + True + True + + False + + False + False + True + True + False + False + False + False + False + False + False + False + 3082 + + 1 + 0 + 0 + False + 0 + %source_path%\GUIBase\GUIBase.dpk + True + 0 + + + rcBorland + 1000 + + False + False + False + False + [usPackages,usCompiler,usLinker,usVersionInfo] + False + False + + + + False + False + False + False + False + True + False + False + %package_path% + + + + False + %base_dcp_path% + True + + True + + False + True + False + False + True + 4194304 + False + False + True + True + %library_path% + 0 + True + 3 + 1048576 + 16384 + + True + False + %output_path%\Cliente + False + + False + fa8 + True + False + + True + True + True False WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; @@ -921,7 +879,7 @@ Comments= - + 0 @@ -932,10 +890,10 @@ Comments= True 0 1252 - 11 - Release + 12 + Debug False - + True True @@ -944,7 +902,7 @@ Comments= False False - False + True True False False @@ -954,14 +912,14 @@ Comments= False False False - 3081 + 3082 - 0 + 1 0 0 False 0 - %source_path%\Base\ControllerBase\ControllerBase.dpk + %source_path%\ApplicationBase\ApplicationBase.dpk True 0 @@ -973,18 +931,18 @@ Comments= False False False - [] + [usPackages,usCompiler,usLinker,usVersionInfo] False False @@ -992,16 +950,13 @@ Comments= False False False - True - True + False + False True False False %package_path% - + False @@ -1029,142 +984,14 @@ Comments= True True - %output_path% + %output_path%\Cliente False False fa8 True False - %search_path% - True - True - False - False - WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; - - False - False - True - - - - - - 0 - - True - False - False - True - True - 0 - 1252 - 11 - Release - False - - - True - True - - False - - False - False - False - True - False - False - False - False - False - False - False - False - 3081 - - 0 - 0 - 0 - False - 0 - %source_path%\Base\GUIBase\GUIBase.dpk - True - 0 - - - rcBorland - 1000 - - False - False - False - False - [] - False - False - - - - False - False - False - True - True - True - False - False - %package_path% - - - - False - %base_dcp_path% - True - - True - - False - True - False - False - True - 4194304 - False - False - False - True - %library_path% - 0 - True - 0 - 1048576 - 16384 - - True - True - %output_path% - False - - False - fa8 - True - False - %search_path% + True True False @@ -1177,7 +1004,7 @@ Comments= - + Módulos 0 @@ -1193,7 +1020,7 @@ Comments= 0 1000 False - + General 0 @@ -1205,796 +1032,11 @@ Comments= False 0 - True + False 0 1000 False - - Empresas - 0 - - Empresas - True - True - False - True - False - - 0 - False - 0 - 1000 - False - - - - 0 - - True - False - False - True - True - 0 - 1252 - 11 - Release - False - - - True - True - - False - - False - False - False - True - False - False - False - False - False - False - False - False - 3081 - - 0 - 0 - 0 - False - 0 - %source_path%\Modulos\Empresas\Model\Empresas_model.dpk - True - 0 - - - rcBorland - 1000 - - False - False - False - False - [] - False - False - - - - False - False - False - True - True - True - False - False - %package_path% - - - - False - %modules_dcp_path% - True - - True - - False - True - False - False - True - 4194304 - False - False - False - True - %library_path% - 0 - True - 0 - 1048576 - 16384 - - True - True - %output_path% - False - - False - fa8 - True - False - %search_path% - True - True - False - False - WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; - - False - False - True - - - - - - 0 - - True - False - False - True - True - 0 - 1252 - 11 - Release - False - - - True - True - - False - - False - False - False - True - False - False - False - False - False - False - False - False - 3081 - - 0 - 0 - 0 - False - 0 - %source_path%\Modulos\Empresas\Data\Empresas_data.dpk - True - 0 - - - rcBorland - 1000 - - False - False - False - False - [] - False - False - - - - False - False - False - True - True - True - False - False - %package_path% - - - - False - %modules_dcp_path% - True - - True - - False - True - False - False - True - 4194304 - False - False - False - True - %library_path% - 0 - True - 0 - 1048576 - 16384 - - True - True - %output_path% - False - - False - fa8 - True - False - %search_path% - True - True - False - False - WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; - - False - False - True - - - - - - 0 - - True - False - False - True - True - 0 - 1252 - 11 - Release - False - - - True - True - - False - - False - False - False - True - False - False - False - False - False - False - False - False - 3081 - - 0 - 0 - 0 - False - 0 - %source_path%\Modulos\Empresas\Controller\Empresas_controller.dpk - True - 0 - - - rcBorland - 1000 - - False - False - False - False - [] - False - False - - - - False - False - False - True - True - True - False - False - %package_path% - - - - False - %modules_dcp_path% - True - - True - - False - True - False - False - True - 4194304 - False - False - False - True - %library_path% - 0 - True - 0 - 1048576 - 16384 - - True - True - %output_path% - False - - False - fa8 - True - False - %search_path% - True - True - False - False - WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; - - False - False - True - - - - - - 0 - - True - False - False - True - True - 0 - 1252 - 11 - Release - False - - - True - True - - False - - False - False - False - True - False - False - False - False - False - False - False - False - 3081 - - 0 - 0 - 0 - False - 0 - %source_path%\Base\Usuarios\Usuarios.dpk - True - 0 - - - rcBorland - 1000 - - False - False - False - False - [] - False - False - - - - False - False - False - True - True - True - False - False - %package_path% - - - - False - %modules_dcp_path% - True - - True - - False - True - False - False - True - 4194304 - False - False - False - True - %library_path% - 0 - True - 0 - 1048576 - 16384 - - True - True - %output_path% - False - - False - fa8 - True - False - %search_path% - True - True - False - False - WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; - - False - False - True - - - - - - 0 - - True - False - False - True - True - 0 - 1252 - 11 - Release - False - - - True - True - - False - - False - False - False - True - False - False - False - False - False - False - False - False - 3081 - - 0 - 0 - 0 - False - 0 - %source_path%\Modulos\Empresas\Views\Empresas_view.dpk - True - 0 - - - rcBorland - 1000 - - False - False - False - False - [] - False - False - - - - False - False - False - True - True - True - False - False - %package_path% - - - - False - %modules_dcp_path% - True - - True - - False - True - False - False - True - 4194304 - False - False - False - True - %library_path% - 0 - True - 0 - 1048576 - 16384 - - True - True - %output_path% - False - - False - fa8 - True - False - %search_path% - True - True - False - False - WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; - - False - False - True - - - - - - 0 - - True - False - False - True - True - 0 - 1252 - 11 - Release - False - - - True - True - - False - - False - False - False - True - False - False - False - False - False - False - False - False - 3081 - - 0 - 0 - 0 - False - 0 - %source_path%\Modulos\Empresas\Plugin\Empresas_plugin.dpk - True - 0 - - - rcBorland - 1000 - - False - False - False - False - [] - False - False - - - - False - False - False - True - True - True - False - False - %package_path% - - - - False - %modules_dcp_path% - True - - True - - False - True - False - False - True - 4194304 - False - False - False - True - %library_path% - 0 - True - 0 - 1048576 - 16384 - - True - True - %output_path% - False - - False - fa8 - True - False - %search_path% - True - True - False - False - WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; - - False - False - True - - - - + 0 @@ -2012,7 +1054,7 @@ Comments= 0 1000 False - + 0 @@ -2024,7 +1066,7 @@ Comments= True 0 1252 - 11 + 12 Release False @@ -2036,7 +1078,7 @@ Comments= False False - False + True True False False @@ -2046,9 +1088,9 @@ Comments= False False False - 3081 + 3082 - 0 + 1 0 0 False @@ -2066,42 +1108,39 @@ Comments= False False False - [] + [usPackages,usCompiler,usLinker,usVersionInfo] False False False False - False - True - True + False + False + False True False False %package_path% - + False %modules_dcp_path% - True + False - True + False False True @@ -2115,7 +1154,7 @@ Comments= True %library_path% 0 - True + False 0 1048576 16384 @@ -2127,9 +1166,9 @@ Comments= False fa8 - True + False False - %search_path% + True True False @@ -2141,7 +1180,7 @@ Comments= True - + 0 @@ -2153,7 +1192,7 @@ Comments= True 0 1252 - 11 + 12 Release False @@ -2177,7 +1216,7 @@ Comments= False 3081 - 0 + 1 0 0 False @@ -2195,42 +1234,30 @@ Comments= False False False - [] + [usPackages,usCompiler,usLinker,usVersionInfo] False False - False False - False - True - True + False + False + False True False False %package_path% - + False %modules_dcp_path% - True + False - True + False False True @@ -2244,7 +1271,7 @@ Comments= True %library_path% 0 - True + False 0 1048576 16384 @@ -2256,9 +1283,9 @@ Comments= False fa8 - True + False False - %search_path% + True True False @@ -2270,7 +1297,7 @@ Comments= True - + 0 @@ -2282,7 +1309,7 @@ Comments= True 0 1252 - 11 + 12 Release False @@ -2306,7 +1333,7 @@ Comments= False 3081 - 0 + 1 0 0 False @@ -2324,42 +1351,30 @@ Comments= False False False - [] + [usPackages,usCompiler,usLinker,usVersionInfo] False False - False False - False - True - True + False + False + False True False False %package_path% - + False %modules_dcp_path% - True + False - True + False False True @@ -2373,7 +1388,7 @@ Comments= True %library_path% 0 - True + False 0 1048576 16384 @@ -2385,9 +1400,9 @@ Comments= False fa8 - True + False False - %search_path% + True True False @@ -2399,7 +1414,7 @@ Comments= True - + 0 @@ -2411,7 +1426,7 @@ Comments= True 0 1252 - 11 + 12 Release False @@ -2423,7 +1438,7 @@ Comments= False False - False + True True False False @@ -2433,9 +1448,9 @@ Comments= False False False - 3081 + 3082 - 0 + 1 0 0 False @@ -2453,42 +1468,39 @@ Comments= False False False - [] + [usPackages,usCompiler,usLinker,usVersionInfo] False False False False - False - True - True + False + False + False True False False %package_path% - + False %modules_dcp_path% - True + False - True + False False True @@ -2502,7 +1514,7 @@ Comments= True %library_path% 0 - True + False 0 1048576 16384 @@ -2514,9 +1526,9 @@ Comments= False fa8 - True + False False - %search_path% + True True False @@ -2528,7 +1540,7 @@ Comments= True - + 0 @@ -2540,7 +1552,7 @@ Comments= True 0 1252 - 11 + 12 Release False @@ -2564,7 +1576,7 @@ Comments= False 3081 - 0 + 1 0 0 False @@ -2582,42 +1594,30 @@ Comments= False False False - [] + [usPackages,usCompiler,usLinker,usVersionInfo] False False - False False - False - True - True + False + False + False True False False %package_path% - + False %modules_dcp_path% - True + False - True + False False True @@ -2631,7 +1631,7 @@ Comments= True %library_path% 0 - True + False 0 1048576 16384 @@ -2643,9 +1643,9 @@ Comments= False fa8 - True + False False - %search_path% + True True False @@ -2658,7 +1658,7 @@ Comments= - + 0 @@ -2672,11 +1672,11 @@ Comments= False 0 - True + False 0 1000 False - + 0 @@ -2688,7 +1688,7 @@ Comments= True 0 1252 - 11 + 12 Release False @@ -2700,7 +1700,7 @@ Comments= False False - False + True True False False @@ -2710,9 +1710,9 @@ Comments= False False False - 3081 + 3082 - 0 + 1 0 0 False @@ -2730,42 +1730,39 @@ Comments= False False False - [] + [usPackages,usCompiler,usLinker,usVersionInfo] False False False False - False - True - True + False + False + False True False False %package_path% - + False %modules_dcp_path% - True + False - True + False False True @@ -2779,8 +1776,8 @@ Comments= True %library_path% 0 - True - 0 + False + 3 1048576 16384 @@ -2791,9 +1788,9 @@ Comments= False fa8 - True + False False - %search_path% + True True False @@ -2805,7 +1802,7 @@ Comments= True - + 0 @@ -2817,7 +1814,7 @@ Comments= True 0 1252 - 11 + 12 Release False @@ -2829,7 +1826,7 @@ Comments= False False - False + True True False False @@ -2839,9 +1836,9 @@ Comments= False False False - 3081 + 3082 - 0 + 1 0 0 False @@ -2859,42 +1856,39 @@ Comments= False False False - [] + [usPackages,usCompiler,usLinker,usVersionInfo] False False False False - False - True - True + False + False + False True False False %package_path% - + False %modules_dcp_path% - True + False - True + False False True @@ -2908,8 +1902,8 @@ Comments= True %library_path% 0 - True - 0 + False + 3 1048576 16384 @@ -2920,9 +1914,9 @@ Comments= False fa8 - True + False False - %search_path% + True True False @@ -2934,7 +1928,7 @@ Comments= True - + 0 @@ -2946,7 +1940,7 @@ Comments= True 0 1252 - 11 + 12 Release False @@ -2958,7 +1952,7 @@ Comments= False False - False + True True False False @@ -2968,9 +1962,9 @@ Comments= False False False - 3081 + 3082 - 0 + 1 0 0 False @@ -2988,42 +1982,39 @@ Comments= False False False - [] + [usPackages,usCompiler,usLinker,usVersionInfo] False False False False - False - True - True + False + False + False True False False %package_path% - + False %modules_dcp_path% - True + False - True + False False True @@ -3037,7 +2028,7 @@ Comments= True %library_path% 0 - True + False 0 1048576 16384 @@ -3049,9 +2040,9 @@ Comments= False fa8 - True + False False - %search_path% + True True False @@ -3063,7 +2054,7 @@ Comments= True - + 0 @@ -3075,7 +2066,7 @@ Comments= True 0 1252 - 11 + 12 Release False @@ -3087,7 +2078,7 @@ Comments= False False - False + True True False False @@ -3097,9 +2088,9 @@ Comments= False False False - 3081 + 3082 - 0 + 1 0 0 False @@ -3117,42 +2108,39 @@ Comments= False False False - [] + [usPackages,usCompiler,usLinker,usVersionInfo] False False False False - False - True - True + False + False + False True False False %package_path% - + False %modules_dcp_path% - True + False - True + False False True @@ -3166,7 +2154,7 @@ Comments= True %library_path% 0 - True + False 0 1048576 16384 @@ -3178,9 +2166,9 @@ Comments= False fa8 - True + False False - %search_path% + True True False @@ -3192,7 +2180,7 @@ Comments= True - + 0 @@ -3204,7 +2192,7 @@ Comments= True 0 1252 - 11 + 12 Release False @@ -3216,7 +2204,7 @@ Comments= False False - False + True True False False @@ -3226,9 +2214,9 @@ Comments= False False False - 3081 + 3082 - 0 + 1 0 0 False @@ -3246,42 +2234,39 @@ Comments= False False False - [] + [usPackages,usCompiler,usLinker,usVersionInfo] False False False False - False - True - True + False + False + False True False False %package_path% - + False %modules_dcp_path% - True + False - True + False False True @@ -3295,7 +2280,7 @@ Comments= True %library_path% 0 - True + False 0 1048576 16384 @@ -3307,9 +2292,9 @@ Comments= False fa8 - True + False False - %search_path% + True True False @@ -3322,664 +2307,7 @@ Comments= - - Contactos - 0 - - Contactos - True - True - False - True - False - - 0 - True - 0 - 1000 - False - - - - 0 - - True - False - False - True - True - 0 - 1252 - 11 - Release - False - - - True - True - - False - - False - False - False - True - False - False - False - False - False - False - False - False - 3081 - - 0 - 0 - 0 - False - 0 - %source_path%\Modulos\Contactos\Model\Contactos_model.dpk - True - 0 - - - rcBorland - 1000 - - False - False - False - False - [] - False - False - - - - False - False - False - True - True - True - False - False - %package_path% - - - - False - %modules_dcp_path% - True - - True - - False - True - False - False - True - 4194304 - False - False - False - True - %library_path% - 0 - True - 0 - 1048576 - 16384 - - True - True - %output_path% - False - - False - fa8 - True - False - %search_path% - True - True - False - False - WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; - - False - False - True - - - - - - 0 - - True - False - False - True - True - 0 - 1252 - 11 - Release - False - - - True - True - - False - - False - False - False - True - False - False - False - False - False - False - False - False - 3081 - - 0 - 0 - 0 - False - 0 - %source_path%\Modulos\Contactos\Data\Contactos_data.dpk - True - 0 - - - rcBorland - 1000 - - False - False - False - False - [] - False - False - - - - False - False - False - True - True - True - False - False - %package_path% - - - - False - %modules_dcp_path% - True - - True - - False - True - False - False - True - 4194304 - False - False - False - True - %library_path% - 0 - True - 0 - 1048576 - 16384 - - True - True - %output_path% - False - - False - fa8 - True - False - %search_path% - True - True - False - False - WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; - - False - False - True - - - - - - 0 - - True - False - False - True - True - 0 - 1252 - 11 - Release - False - - - True - True - - False - - False - False - False - True - False - False - False - False - False - False - False - False - 3081 - - 0 - 0 - 0 - False - 0 - %source_path%\Modulos\Contactos\Controller\Contactos_controller.dpk - True - 0 - - - rcBorland - 1000 - - False - False - False - False - [] - False - False - - - - False - False - False - True - True - True - False - False - %package_path% - - - - False - %modules_dcp_path% - True - - True - - False - True - False - False - True - 4194304 - False - False - False - True - %library_path% - 0 - True - 0 - 1048576 - 16384 - - True - True - %output_path% - False - - False - fa8 - True - False - %search_path% - True - True - False - False - WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; - - False - False - True - - - - - - 0 - - True - False - False - True - True - 0 - 1252 - 11 - Release - False - - - True - True - - False - - False - False - False - True - False - False - False - False - False - False - False - False - 3081 - - 0 - 0 - 0 - False - 0 - %source_path%\Modulos\Contactos\Views\Contactos_view.dpk - True - 0 - - - rcBorland - 1000 - - False - False - False - False - [] - False - False - - - - False - False - False - True - True - True - False - False - %package_path% - - - - False - %modules_dcp_path% - True - - True - - False - True - False - False - True - 4194304 - False - False - False - True - %library_path% - 0 - True - 0 - 1048576 - 16384 - - True - True - %output_path% - False - - False - fa8 - True - False - %search_path% - True - True - False - False - WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; - - False - False - True - - - - - - 0 - - True - False - False - True - True - 0 - 1252 - 11 - Release - False - - - True - True - - False - - False - False - False - True - False - False - False - False - False - False - False - False - 3081 - - 0 - 0 - 0 - False - 0 - %source_path%\Modulos\Contactos\Plugin\Contactos_plugin.dpk - True - 0 - - - rcBorland - 1000 - - False - False - False - False - [] - False - False - - - - False - False - False - True - True - True - False - False - %package_path% - - - - False - %modules_dcp_path% - True - - True - - False - True - False - False - True - 4194304 - False - False - False - True - %library_path% - 0 - True - 0 - 1048576 - 16384 - - True - True - %output_path% - False - - False - fa8 - True - False - %search_path% - True - True - False - False - WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; - - False - False - True - - - - + Familias 0 @@ -3991,11 +2319,11 @@ Comments= False 0 - True + False 0 1000 False - + 0 @@ -4007,7 +2335,7 @@ Comments= True 0 1252 - 11 + 12 Release False @@ -4048,7 +2376,7 @@ Comments= False False False - [] + [usPackages,usCompiler,usLinker,usVersionInfo] False False False False - False - True - True + False + False + False True False False @@ -4111,7 +2439,7 @@ Comments= fa8 True False - %search_path% + True True False @@ -4123,7 +2451,7 @@ Comments= True - + 0 @@ -4135,7 +2463,7 @@ Comments= True 0 1252 - 11 + 12 Release False @@ -4176,7 +2504,7 @@ Comments= False False False - [] + [usPackages,usCompiler,usLinker,usVersionInfo] False False False False - False - True - True + False + False + False True False False @@ -4239,7 +2567,7 @@ Comments= fa8 True False - %search_path% + True True False @@ -4251,7 +2579,7 @@ Comments= True - + 0 @@ -4263,7 +2591,7 @@ Comments= True 0 1252 - 11 + 12 Release False @@ -4304,7 +2632,7 @@ Comments= False False False - [] + [usPackages,usCompiler,usLinker,usVersionInfo] False False False False - False - True - True + False + False + False True False False @@ -4367,7 +2695,7 @@ Comments= fa8 True False - %search_path% + True True False @@ -4379,7 +2707,7 @@ Comments= True - + 0 @@ -4391,7 +2719,7 @@ Comments= True 0 1252 - 11 + 12 Release False @@ -4432,7 +2760,7 @@ Comments= False False False - [] + [usPackages,usCompiler,usLinker,usVersionInfo] False False False False - False - True - True + False + False + False True False False @@ -4495,7 +2823,7 @@ Comments= fa8 True False - %search_path% + True True False @@ -4507,7 +2835,7 @@ Comments= True - + 0 @@ -4519,7 +2847,7 @@ Comments= True 0 1252 - 11 + 12 Release False @@ -4560,7 +2888,7 @@ Comments= False False False - [] + [usPackages,usCompiler,usLinker,usVersionInfo] False False False False - False - True - True + False + False + False True False False @@ -4623,7 +2951,654 @@ Comments= fa8 True False - %search_path% + + True + True + False + False + WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; + + False + False + True + + + + + Contactos + 0 + +<<<<<<< .mine + Contactos + True +======= + Contactos + False +>>>>>>> .r42 + True + False + True + False + + 0 + False + 0 + 1000 + False + + + + 0 + + True + False + False + True + True + 0 + 1252 + 12 + Release + False + + + True + True + + False + + False + False + True + True + False + False + False + False + False + False + False + False + 3082 + + 1 + 0 + 0 + False + 0 + %source_path%\Modulos\Contactos\Model\Contactos_model.dpk + True + 0 + + + rcBorland + 1000 + + False + False + False + False + [usPackages,usCompiler,usLinker,usVersionInfo] + False + False + + + + False + False + False + False + False + True + False + False + %package_path% + + + + False + %modules_dcp_path% + False + + False + + False + True + False + False + True + 4194304 + False + False + False + True + %library_path% + 0 + False + 3 + 1048576 + 16384 + + True + True + %output_path% + False + + False + fa8 + False + False + + True + True + False + False + WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; + + False + False + True + + + + + + 0 + + True + False + False + True + True + 0 + 1252 + 12 + Release + False + + + True + True + + False + + False + False + True + True + False + False + False + False + False + False + False + False + 3082 + + 1 + 0 + 0 + False + 0 + %source_path%\Modulos\Contactos\Data\Contactos_data.dpk + True + 0 + + + rcBorland + 1000 + + False + False + False + False + [usPackages,usCompiler,usLinker,usVersionInfo] + False + False + + + + False + False + False + False + False + True + False + False + %package_path% + + + + False + %modules_dcp_path% + False + + False + + False + True + False + False + True + 4194304 + False + False + False + True + %library_path% + 0 + False + 3 + 1048576 + 16384 + + True + True + %output_path% + False + + False + fa8 + False + False + + True + True + False + False + WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; + + False + False + True + + + + + + 0 + + True + False + False + True + True + 0 + 1252 + 12 + Release + False + + + True + True + + False + + False + False + True + True + False + False + False + False + False + False + False + False + 3082 + + 1 + 0 + 0 + False + 0 + %source_path%\Modulos\Contactos\Controller\Contactos_controller.dpk + True + 0 + + + rcBorland + 1000 + + False + False + False + False + [usPackages,usCompiler,usLinker,usVersionInfo] + False + False + + + + False + False + False + False + False + True + False + False + %package_path% + + + + False + %modules_dcp_path% + False + + False + + False + True + False + False + True + 4194304 + False + False + False + True + %library_path% + 0 + False + 3 + 1048576 + 16384 + + True + True + %output_path% + False + + False + fa8 + False + False + + True + True + False + False + WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; + + False + False + True + + + + + + 0 + + True + False + False + True + True + 0 + 1252 + 12 + Release + False + + + True + True + + False + + False + False + True + True + False + False + False + False + False + False + False + False + 3082 + + 1 + 0 + 0 + False + 0 + %source_path%\Modulos\Contactos\Views\Contactos_view.dpk + True + 0 + + + rcBorland + 1000 + + False + False + False + False + [usPackages,usCompiler,usLinker,usVersionInfo] + False + False + + + + False + False + False + False + False + True + False + False + %package_path% + + + + False + %modules_dcp_path% + False + + False + + False + True + False + False + True + 4194304 + False + False + False + True + %library_path% + 0 + False + 3 + 1048576 + 16384 + + True + True + %output_path% + False + + False + fa8 + False + False + + True + True + False + False + WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; + + False + False + True + + + + + + 0 + + True + False + False + True + True + 0 + 1252 + 12 + Release + False + + + True + True + + False + + False + False + True + True + False + False + False + False + False + False + False + False + 3082 + + 1 + 0 + 0 + False + 0 + %source_path%\Modulos\Contactos\Plugin\Contactos_plugin.dpk + True + 0 + + + rcBorland + 1000 + + False + False + False + False + [usPackages,usCompiler,usLinker,usVersionInfo] + False + False + + + + False + False + False + False + False + True + False + False + %package_path% + + + + False + %modules_dcp_path% + False + + False + + False + True + False + False + True + 4194304 + False + False + False + True + %library_path% + 0 + False + 3 + 1048576 + 16384 + + True + True + %output_path% + False + + False + fa8 + False + False + True True False @@ -4637,25 +3612,25 @@ Comments= - + 0 - True + False True False True False 0 - True + False 0 1000 False - + 0 @@ -4726,7 +3701,7 @@ Comments= False False - False + False True True True @@ -4771,7 +3746,7 @@ Comments= fa8 True False - %search_path% + True True False @@ -4783,7 +3758,7 @@ Comments= True - + 0 @@ -4854,7 +3829,7 @@ Comments= False False - False + False True True True @@ -4899,7 +3874,7 @@ Comments= fa8 True False - %search_path% + True True False @@ -4911,7 +3886,7 @@ Comments= True - + 0 @@ -4982,7 +3957,7 @@ Comments= False False - False + False True True True @@ -5027,7 +4002,7 @@ Comments= fa8 True False - %search_path% + True True False @@ -5039,7 +4014,7 @@ Comments= True - + 0 @@ -5110,7 +4085,7 @@ Comments= False False - False + False True True True @@ -5155,7 +4130,7 @@ Comments= fa8 True False - %search_path% + True True False @@ -5167,7 +4142,7 @@ Comments= True - + 0 @@ -5238,7 +4213,7 @@ Comments= False False - False + False True True True @@ -5283,7 +4258,7 @@ Comments= fa8 True False - %search_path% + True True False @@ -5296,25 +4271,25 @@ Comments= - + 0 - True + False True False True False 0 - True + False 0 1000 False - + 0 @@ -5385,7 +4360,7 @@ Comments= False False - False + False True True True @@ -5430,7 +4405,7 @@ Comments= fa8 True False - %search_path% + True True False @@ -5442,7 +4417,7 @@ Comments= True - + 0 @@ -5513,7 +4488,7 @@ Comments= False False - False + False True True True @@ -5558,7 +4533,7 @@ Comments= fa8 True False - %search_path% + True True False @@ -5570,7 +4545,7 @@ Comments= True - + 0 @@ -5641,7 +4616,7 @@ Comments= False False - False + False True True True @@ -5686,7 +4661,7 @@ Comments= fa8 True False - %search_path% + True True False @@ -5698,7 +4673,7 @@ Comments= True - + 0 @@ -5769,7 +4744,7 @@ Comments= False False - False + False True True True @@ -5814,7 +4789,7 @@ Comments= fa8 True False - %search_path% + True True False @@ -5826,7 +4801,7 @@ Comments= True - + 0 @@ -5897,7 +4872,7 @@ Comments= False False - False + False True True True @@ -5942,7 +4917,7 @@ Comments= fa8 True False - %search_path% + True True False @@ -5955,12 +4930,12 @@ Comments= - + Ventas 0 Ventas - True + False True False True @@ -5971,7 +4946,7 @@ Comments= 0 1000 False - + 0 @@ -5985,11 +4960,11 @@ Comments= False 0 - True + False 0 1000 False - + 0 @@ -6061,7 +5036,7 @@ Comments= False False - False + False True True True @@ -6106,7 +5081,7 @@ Comments= fa8 True False - %search_path% + True True False @@ -6118,7 +5093,7 @@ Comments= True - + 0 @@ -6190,7 +5165,7 @@ Comments= False False - False + False True True True @@ -6235,7 +5210,7 @@ Comments= fa8 True False - %search_path% + True True False @@ -6247,7 +5222,7 @@ Comments= True - + 0 @@ -6319,7 +5294,7 @@ Comments= False False - False + False True True True @@ -6364,7 +5339,7 @@ Comments= fa8 True False - %search_path% + True True False @@ -6376,7 +5351,7 @@ Comments= True - + 0 @@ -6448,7 +5423,7 @@ Comments= False False - False + False True True True @@ -6493,7 +5468,7 @@ Comments= fa8 True False - %search_path% + True True False @@ -6505,7 +5480,7 @@ Comments= True - + 0 @@ -6577,7 +5552,7 @@ Comments= False False - False + False True True True @@ -6622,7 +5597,7 @@ Comments= fa8 True False - %search_path% + True True False @@ -6635,7 +5610,7 @@ Comments= - + 0 @@ -6649,11 +5624,11 @@ Comments= False 0 - True + False 0 1000 False - + 0 @@ -6725,7 +5700,7 @@ Comments= False False - False + False True True True @@ -6770,7 +5745,7 @@ Comments= fa8 True False - %search_path% + True True False @@ -6782,7 +5757,7 @@ Comments= True - + 0 @@ -6854,7 +5829,7 @@ Comments= False False - False + False True True True @@ -6899,7 +5874,7 @@ Comments= fa8 True False - %search_path% + True True False @@ -6911,7 +5886,7 @@ Comments= True - + 0 @@ -6983,7 +5958,7 @@ Comments= False False - False + False True True True @@ -7028,7 +6003,7 @@ Comments= fa8 True False - %search_path% + True True False @@ -7040,7 +6015,7 @@ Comments= True - + 0 @@ -7112,7 +6087,7 @@ Comments= False False - False + False True True True @@ -7157,7 +6132,7 @@ Comments= fa8 True False - %search_path% + True True False @@ -7169,7 +6144,7 @@ Comments= True - + 0 @@ -7241,7 +6216,7 @@ Comments= False False - False + False True True True @@ -7286,7 +6261,7 @@ Comments= fa8 True False - %search_path% + True True False @@ -7298,7 +6273,7 @@ Comments= True - + 0 @@ -7370,7 +6345,7 @@ Comments= False False - False + False True True True @@ -7415,7 +6390,7 @@ Comments= fa8 True False - %search_path% + True True False @@ -7427,7 +6402,7 @@ Comments= True - + 0 @@ -7499,7 +6474,7 @@ Comments= False False - False + False True True True @@ -7544,7 +6519,7 @@ Comments= fa8 True False - %search_path% + True True False @@ -7557,7 +6532,7 @@ Comments= - + 0 @@ -7571,11 +6546,11 @@ Comments= False 0 - True + False 0 1000 False - + 0 @@ -7647,7 +6622,7 @@ Comments= False False - False + False True True True @@ -7692,7 +6667,7 @@ Comments= fa8 True False - %search_path% + True True False @@ -7704,7 +6679,7 @@ Comments= True - + 0 @@ -7776,7 +6751,7 @@ Comments= False False - False + False True True True @@ -7821,7 +6796,7 @@ Comments= fa8 True False - %search_path% + True True False @@ -7833,7 +6808,7 @@ Comments= True - + 0 @@ -7905,7 +6880,7 @@ Comments= False False - False + False True True True @@ -7950,7 +6925,7 @@ Comments= fa8 True False - %search_path% + True True False @@ -7963,7 +6938,7 @@ Comments= - + 0 @@ -7977,11 +6952,11 @@ Comments= False 0 - True + False 0 1000 False - + 0 @@ -8053,7 +7028,7 @@ Comments= False False - False + False True True True @@ -8098,7 +7073,7 @@ Comments= fa8 True False - %search_path% + True True False @@ -8110,7 +7085,7 @@ Comments= True - + 0 @@ -8182,7 +7157,7 @@ Comments= False False - False + False True True True @@ -8227,7 +7202,7 @@ Comments= fa8 True False - %search_path% + True True False @@ -8239,7 +7214,7 @@ Comments= True - + 0 @@ -8311,7 +7286,7 @@ Comments= False False - False + False True True True @@ -8356,7 +7331,7 @@ Comments= fa8 True False - %search_path% + True True False @@ -8369,7 +7344,7 @@ Comments= - + 0 @@ -8383,11 +7358,11 @@ Comments= False 0 - True + False 0 1000 False - + 0 @@ -8459,7 +7434,7 @@ Comments= False False - False + False True True True @@ -8504,7 +7479,7 @@ Comments= fa8 True False - %search_path% + True True False @@ -8516,7 +7491,7 @@ Comments= True - + 0 @@ -8588,7 +7563,7 @@ Comments= False False - False + False True True True @@ -8633,7 +7608,7 @@ Comments= fa8 True False - %search_path% + True True False @@ -8645,7 +7620,7 @@ Comments= True - + 0 @@ -8717,7 +7692,7 @@ Comments= False False - False + False True True True @@ -8762,7 +7737,7 @@ Comments= fa8 True False - %search_path% + True True False @@ -8775,7 +7750,7 @@ Comments= - + 0 @@ -8789,11 +7764,11 @@ Comments= False 0 - True + False 0 1000 False - + 0 @@ -8864,7 +7839,7 @@ Comments= False False - False + False True True True @@ -8909,7 +7884,7 @@ Comments= fa8 True False - %search_path% + True True False @@ -8921,7 +7896,7 @@ Comments= True - + 0 @@ -8992,7 +7967,7 @@ Comments= False False - False + False True True True @@ -9037,7 +8012,7 @@ Comments= fa8 True False - %search_path% + True True False @@ -9049,7 +8024,7 @@ Comments= True - + 0 @@ -9120,7 +8095,7 @@ Comments= False False - False + False True True True @@ -9165,7 +8140,7 @@ Comments= fa8 True False - %search_path% + True True False @@ -9179,31 +8154,12 @@ Comments= - + Compras 0 Compras - True - True - False - True - False - - 0 - True - 0 - 1000 - False - - - - - 0 - - - - True + False True False True @@ -9214,64 +8170,82 @@ Comments= 0 1000 False - - + + 0 - True - False - False - True - True - 0 - 1252 - 11 - Release - False - + True True - - False - False - False - False True False - False - False - False - False - False - False - False - 3081 - 0 0 - 0 False 0 - - - True - 0 - - - rcBorland 1000 - False - False - False - False - [] - False - False - + + + 0 + + True + False + False + True + True + 0 + 1252 + 11 + Release + False + + + True + True + + False + + False + False + False + True + False + False + False + False + False + False + False + False + 3081 + + 0 + 0 + 0 + False + 0 + + + True + 0 + + + rcBorland + 1000 + + False + False + False + False + [] + False + False + - - - False - False - False - True - True - True - False - False - %package_path% - + + False + False + False + True + True + True + False + False + %package_path% + + + + False + %modules_dcp_path% + True + + True + + False + True + False + False + True + 4194304 + False + False + False + True + %library_path% + 0 + True + 0 + 1048576 + 16384 + + True + True + %output_path% + False + + False + fa8 + True + False + + True + True + False + False + WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; + + False + False + True + + + + - - False - %modules_dcp_path% - True - - True - - False - True - False - False - True - 4194304 - False - False - False - True - %library_path% - 0 - True - 0 - 1048576 - 16384 - - True - True - %output_path% - False - - False - fa8 - True - False - %search_path% - True - True - False - False - WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; - - False - False - True + 0 + + True + False + False + True + True + 0 + 1252 + 11 + Release + False + + + True + True + + False + + False + False + False + True + False + False + False + False + False + False + False + False + 3081 + + 0 + 0 + 0 + False + 0 + + + True + 0 + + + rcBorland + 1000 + + False + False + False + False + [] + False + False + + + + False + False + False + False + False + True + False + False + %package_path% + + + + False + %modules_dcp_path% + True + + True + + False + True + False + False + True + 4194304 + False + False + False + True + %library_path% + 0 + True + 0 + 1048576 + 16384 + + True + True + %output_path% + False + + False + fa8 + True + False + + True + True + False + False + WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; + + False + False + True + + + + + + 0 + + True + False + False + True + True + 0 + 1252 + 11 + Release + False + + + True + True + + False + + False + False + False + True + False + False + False + False + False + False + False + False + 3081 + + 0 + 0 + 0 + False + 0 + + + True + 0 + + + rcBorland + 1000 + + False + False + False + False + [] + False + False + + + + False + False + False + True + True + True + False + False + %package_path% + + + + False + %modules_dcp_path% + True + + True + + False + True + False + False + True + 4194304 + False + False + False + True + %library_path% + 0 + True + 0 + 1048576 + 16384 + + True + True + %output_path% + False + + False + fa8 + True + False + + True + True + False + False + WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; + + False + False + True + + + + + + 0 + + True + False + False + True + True + 0 + 1252 + 11 + Release + False + + + True + True + + False + + False + False + False + True + False + False + False + False + False + False + False + False + 3081 + + 0 + 0 + 0 + False + 0 + + + True + 0 + + + rcBorland + 1000 + + False + False + False + False + [] + False + False + + + + False + False + False + True + True + True + False + False + %package_path% + + + + False + %modules_dcp_path% + True + + True + + False + True + False + False + True + 4194304 + False + False + False + True + %library_path% + 0 + True + 0 + 1048576 + 16384 + + True + True + %output_path% + False + + False + fa8 + True + False + + True + True + False + False + WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; + + False + False + True + - - + + 0 - True - False - False - True - True - 0 - 1252 - 11 - Release - False - + True True - - False - False - False - False True False - False - False - False - False - False - False - False - 3081 - 0 0 - 0 False 0 - - - True - 0 - - - rcBorland 1000 - False - False - False - False - [] - False - False - + + + 0 + + True + False + False + True + True + 0 + 1252 + 11 + Release + False + + + True + True + + False + + False + False + False + True + False + False + False + False + False + False + False + False + 3081 + + 0 + 0 + 0 + False + 0 + + + True + 0 + + + rcBorland + 1000 + + False + False + False + False + [] + False + False + - - - False - False - False - True - True - True - False - False - %package_path% - + + False + False + False + True + True + True + False + False + %package_path% + - - - False - %modules_dcp_path% - True - - True - - False - True - False - False - True - 4194304 - False - False - False - True - %library_path% - 0 - True - 0 - 1048576 - 16384 - - True - True - %output_path% - False - - False - fa8 - True - False - %search_path% - True - True - False - False - WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; - - False - False - True + + + False + %modules_dcp_path% + True + + True + + False + True + False + False + True + 4194304 + False + False + False + True + %library_path% + 0 + True + 0 + 1048576 + 16384 + + True + True + %output_path% + False + + False + fa8 + True + False + + True + True + False + False + WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; + + False + False + True + - - - - - 0 - - True - False - False - True - True - 0 - 1252 - 11 - Release - False - - - True - True - - False - - False - False - False - True - False - False - False - False - False - False - False - False - 3081 - - 0 - 0 - 0 - False - 0 - - - True - 0 - - - rcBorland - 1000 - - False - False - False - False - [] - False - False - + + + 0 + + True + False + False + True + True + 0 + 1252 + 11 + Release + False + + + True + True + + False + + False + False + False + True + False + False + False + False + False + False + False + False + 3081 + + 0 + 0 + 0 + False + 0 + + + True + 0 + + + rcBorland + 1000 + + False + False + False + False + [] + False + False + - - - False - False - False - True - True - True - False - False - %package_path% - + + False + False + False + True + True + True + False + False + %package_path% + - - - False - %modules_dcp_path% - True - - True - - False - True - False - False - True - 4194304 - False - False - False - True - %library_path% - 0 - True - 0 - 1048576 - 16384 - - True - True - %output_path% - False - - False - fa8 - True - False - %search_path% - True - True - False - False - WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; - - False - False - True + + + False + %modules_dcp_path% + True + + True + + False + True + False + False + True + 4194304 + False + False + False + True + %library_path% + 0 + True + 0 + 1048576 + 16384 + + True + True + %output_path% + False + + False + fa8 + True + False + + True + True + False + False + WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; + + False + False + True + - - - - - 0 - - True - False - False - True - True - 0 - 1252 - 11 - Release - False - - - True - True - - False - - False - False - False - True - False - False - False - False - False - False - False - False - 3081 - - 0 - 0 - 0 - False - 0 - - - True - 0 - - - rcBorland - 1000 - - False - False - False - False - [] - False - False - + + + 0 + + True + False + False + True + True + 0 + 1252 + 11 + Release + False + + + True + True + + False + + False + False + False + True + False + False + False + False + False + False + False + False + 3081 + + 0 + 0 + 0 + False + 0 + + + True + 0 + + + rcBorland + 1000 + + False + False + False + False + [] + False + False + - - - False - False - False - True - True - True - False - False - %package_path% - + + False + False + False + True + True + True + False + False + %package_path% + + + + False + %modules_dcp_path% + True + + True + + False + True + False + False + True + 4194304 + False + False + False + True + %library_path% + 0 + True + 0 + 1048576 + 16384 + + True + True + %output_path% + False + + False + fa8 + True + False + + True + True + False + False + WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; + + False + False + True + + + + - - False - %modules_dcp_path% - True - - True - - False - True - False - False - True - 4194304 - False - False - False - True - + 0 + + True + False + False + True + True + 0 + 1252 + 11 + Release + False + - 0 - True - 0 - 1048576 - 16384 - - True - True - %output_path% - False - - False - fa8 - True - False - - True - True - False - False - WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; - - False - False - True + True + True + + False + + False + False + False + True + False + False + False + False + False + False + False + False + 3081 + + 0 + 0 + 0 + False + 0 + + + True + 0 + + + rcBorland + 1000 + + False + False + False + False + [] + False + False + + + + False + False + False + True + True + True + False + False + %package_path% + + + + False + %modules_dcp_path% + True + + True + + False + True + False + False + True + 4194304 + False + False + False + True + %library_path% + 0 + True + 0 + 1048576 + 16384 + + True + True + %output_path% + False + + False + fa8 + True + False + + True + True + False + False + WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; + + False + False + True + + + + + + 0 + + True + False + False + True + True + 0 + 1252 + 11 + Release + False + + + True + True + + False + + False + False + False + True + False + False + False + False + False + False + False + False + 3081 + + 0 + 0 + 0 + False + 0 + + + True + 0 + + + rcBorland + 1000 + + False + False + False + False + [] + False + False + + + + False + False + False + True + True + True + False + False + %package_path% + + + + False + %modules_dcp_path% + True + + True + + False + True + False + False + True + 4194304 + False + False + False + True + %library_path% + 0 + True + 0 + 1048576 + 16384 + + True + True + %output_path% + False + + False + fa8 + True + False + + True + True + False + False + WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; + + False + False + True + - - - - 0 - - - - True - True - False - True - False - - 0 - False - 0 - 1000 - False - - - - 0 - - True - False - False - True - True - 0 - 1252 - 11 - Release - False - - - True - True - - False - - False - False - False - True - False - False - False - False - False - False - False - False - 3081 - - 0 - 0 - 0 - False - 0 - - - True - 0 - - - rcBorland - 1000 - - False - False - False - False - [] - False - False - - - - False - False - False - True - True - True - False - False - %package_path% - - - - False - %modules_dcp_path% - True - - True - - False - True - False - False - True - 4194304 - False - False - False - True - - - 0 - True - 0 - 1048576 - 16384 - - True - True - %output_path% - False - - False - fa8 - True - False - - True - True - False - False - WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; - - False - False - True - - - - - - 0 - - True - False - False - True - True - 0 - 1252 - 11 - Release - False - - - True - True - - False - - False - False - False - True - False - False - False - False - False - False - False - False - 3081 - - 0 - 0 - 0 - False - 0 - - - True - 0 - - - rcBorland - 1000 - - False - False - False - False - [] - False - False - - - - False - False - False - True - True - True - False - False - %package_path% - - - - False - %modules_dcp_path% - True - - True - - False - True - False - False - True - 4194304 - False - False - False - True - - - 0 - True - 0 - 1048576 - 16384 - - True - True - %output_path% - False - - False - fa8 - True - False - - True - True - False - False - WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; - - False - False - True - - - - - - 0 - - True - False - False - True - True - 0 - 1252 - 11 - Release - False - - - True - True - - False - - False - False - False - True - False - False - False - False - False - False - False - False - 3081 - - 0 - 0 - 0 - False - 0 - - - True - 0 - - - rcBorland - 1000 - - False - False - False - False - [] - False - False - - - - False - False - False - True - True - True - False - False - %package_path% - - - - False - %modules_dcp_path% - True - - True - - False - True - False - False - True - 4194304 - False - False - False - True - - - 0 - True - 0 - 1048576 - 16384 - - True - True - %output_path% - False - - False - fa8 - True - False - - True - True - False - False - WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; - - False - False - True - - - - - - 0 - - True - False - False - True - True - 0 - 1252 - 11 - Release - False - - - True - True - - False - - False - False - False - True - False - False - False - False - False - False - False - False - 3081 - - 0 - 0 - 0 - False - 0 - - - True - 0 - - - rcBorland - 1000 - - False - False - False - False - [] - False - False - - - - False - False - False - True - True - True - False - False - %package_path% - - - - False - %modules_dcp_path% - True - - True - - False - True - False - False - True - 4194304 - False - False - False - True - - - 0 - True - 0 - 1048576 - 16384 - - True - True - %output_path% - False - - False - fa8 - True - False - - True - True - False - False - WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; - - False - False - True - - - - - - 0 - - True - False - False - True - True - 0 - 1252 - 11 - Release - False - - - True - True - - False - - False - False - False - True - False - False - False - False - False - False - False - False - 3081 - - 0 - 0 - 0 - False - 0 - - - True - 0 - - - rcBorland - 1000 - - False - False - False - False - [] - False - False - - - - False - False - False - True - True - True - False - False - %package_path% - - - - False - %modules_dcp_path% - True - - True - - False - True - False - False - True - 4194304 - False - False - False - True - - - 0 - True - 0 - 1048576 - 16384 - - True - True - %output_path% - False - - False - fa8 - True - False - - True - True - False - False - WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; - - False - False - True - - - - + Logística 0 Logística - True + False True False True @@ -10417,7 +9386,7 @@ Comments= 0 1000 False - + 0 @@ -10435,7 +9404,7 @@ Comments= 0 1000 False - + 0 @@ -10506,7 +9475,7 @@ Comments= False False - False + False True True True @@ -10551,7 +9520,7 @@ Comments= fa8 True False - %search_path% + True True False @@ -10563,7 +9532,7 @@ Comments= True - + 0 @@ -10634,7 +9603,7 @@ Comments= False False - False + False True True True @@ -10679,7 +9648,7 @@ Comments= fa8 True False - %search_path% + True True False @@ -10691,7 +9660,7 @@ Comments= True - + 0 @@ -10762,7 +9731,7 @@ Comments= False False - False + False True True True @@ -10807,7 +9776,7 @@ Comments= fa8 True False - %search_path% + True True False @@ -10820,12 +9789,12 @@ Comments= - - + + 0 - + True True @@ -10838,7 +9807,7 @@ Comments= 0 1000 False - + 0 @@ -10910,7 +9879,7 @@ Comments= False False - False + False True True True @@ -10955,7 +9924,7 @@ Comments= fa8 True False - %search_path% + True True False @@ -10967,7 +9936,7 @@ Comments= True - + 0 @@ -11039,7 +10008,7 @@ Comments= False False - False + False True True True @@ -11084,7 +10053,7 @@ Comments= fa8 True False - %search_path% + True True False @@ -11096,7 +10065,7 @@ Comments= True - + 0 @@ -11168,7 +10137,7 @@ Comments= False False - False + False True True True @@ -11213,7 +10182,413 @@ Comments= fa8 True False - %search_path% + + True + True + False + False + WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; + + False + False + True + + + + + + + 0 + + + + True + True + False + True + False + + 0 + False + 0 + 1000 + False + + + + 0 + + True + False + False + True + True + 0 + 1252 + 11 + Release + False + + + True + True + + False + + False + False + False + True + False + False + False + False + False + False + False + False + 3081 + + 0 + 0 + 0 + False + 0 + + + True + 0 + + + rcBorland + 1000 + + False + False + False + False + [] + False + False + + + + False + False + False + True + True + True + False + False + %package_path% + + + + False + %modules_dcp_path% + True + + True + + False + True + False + False + True + 4194304 + False + False + False + True + %library_path% + 0 + True + 0 + 1048576 + 16384 + + True + True + %output_path% + False + + False + fa8 + True + False + + True + True + False + False + WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; + + False + False + True + + + + + + 0 + + True + False + False + True + True + 0 + 1252 + 11 + Release + False + + + True + True + + False + + False + False + False + True + False + False + False + False + False + False + False + False + 3081 + + 0 + 0 + 0 + False + 0 + + + True + 0 + + + rcBorland + 1000 + + False + False + False + False + [] + False + False + + + + False + False + False + True + True + True + False + False + %package_path% + + + + False + %modules_dcp_path% + True + + True + + False + True + False + False + True + 4194304 + False + False + False + True + %library_path% + 0 + True + 0 + 1048576 + 16384 + + True + True + %output_path% + False + + False + fa8 + True + False + + True + True + False + False + WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; + + False + False + True + + + + + + 0 + + True + False + False + True + True + 0 + 1252 + 11 + Release + False + + + True + True + + False + + False + False + False + True + False + False + False + False + False + False + False + False + 3081 + + 0 + 0 + 0 + False + 0 + + + True + 0 + + + rcBorland + 1000 + + False + False + False + False + [] + False + False + + + + False + False + False + True + True + True + False + False + %package_path% + + + + False + %modules_dcp_path% + True + + True + + False + True + False + False + True + 4194304 + False + False + False + True + %library_path% + 0 + True + 0 + 1048576 + 16384 + + True + True + %output_path% + False + + False + fa8 + True + False + True True False @@ -11227,431 +10602,25 @@ Comments= - - - - 0 - - - - True - True - False - True - False - - 0 - True - 0 - 1000 - False - - - - 0 - - True - False - False - True - True - 0 - 1252 - 11 - Release - False - - - True - True - - False - - False - False - False - True - False - False - False - False - False - False - False - False - 3081 - - 0 - 0 - 0 - False - 0 - - - True - 0 - - - rcBorland - 1000 - - False - False - False - False - [] - False - False - - - - False - False - False - True - True - True - False - False - %package_path% - - - - False - %modules_dcp_path% - True - - True - - False - True - False - False - True - 4194304 - False - False - False - True - %library_path% - 0 - True - 0 - 1048576 - 16384 - - True - True - %output_path% - False - - False - fa8 - True - False - %search_path% - True - True - False - False - WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; - - False - False - True - - - - - - 0 - - True - False - False - True - True - 0 - 1252 - 11 - Release - False - - - True - True - - False - - False - False - False - True - False - False - False - False - False - False - False - False - 3081 - - 0 - 0 - 0 - False - 0 - - - True - 0 - - - rcBorland - 1000 - - False - False - False - False - [] - False - False - - - - False - False - False - True - True - True - False - False - %package_path% - - - - False - %modules_dcp_path% - True - - True - - False - True - False - False - True - 4194304 - False - False - False - True - %library_path% - 0 - True - 0 - 1048576 - 16384 - - True - True - %output_path% - False - - False - fa8 - True - False - %search_path% - True - True - False - False - WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; - - False - False - True - - - - - - 0 - - True - False - False - True - True - 0 - 1252 - 11 - Release - False - - - True - True - - False - - False - False - False - True - False - False - False - False - False - False - False - False - 3081 - - 0 - 0 - 0 - False - 0 - - - True - 0 - - - rcBorland - 1000 - - False - False - False - False - [] - False - False - - - - False - False - False - True - True - True - False - False - %package_path% - - - - False - %modules_dcp_path% - True - - True - - False - True - False - False - True - 4194304 - False - False - False - True - %library_path% - 0 - True - 0 - 1048576 - 16384 - - True - True - %output_path% - False - - False - fa8 - True - False - %search_path% - True - True - False - False - WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; - - False - False - True - - - - + 0 - True + False True False True False 0 - True + False 0 1000 False - + 0 @@ -11723,7 +10692,7 @@ Comments= False False - False + False True True True @@ -11752,8 +10721,7 @@ Comments= False False True - - + %library_path% 0 True 0 @@ -11781,7 +10749,7 @@ Comments= True - + 0 @@ -11853,7 +10821,7 @@ Comments= False False - False + False True True True @@ -11882,8 +10850,7 @@ Comments= False False True - - + %library_path% 0 True 0 @@ -11911,7 +10878,7 @@ Comments= True - + 0 @@ -11983,7 +10950,7 @@ Comments= False False - False + False True True True @@ -12012,8 +10979,7 @@ Comments= False False True - - + %library_path% 0 True 0 @@ -12042,23 +11008,23 @@ Comments= - + Relaciones 0 Relaciones - True + False True False True False 0 - True + False 0 1000 False - + 0 @@ -12130,7 +11096,7 @@ Comments= False False - False + False True True True @@ -12175,7 +11141,7 @@ Comments= fa8 True False - %search_path% + True True False @@ -12187,7 +11153,7 @@ Comments= True - + 0 @@ -12259,7 +11225,7 @@ Comments= False False - False + False True True True @@ -12304,7 +11270,7 @@ Comments= fa8 True False - %search_path% + True True False @@ -12316,7 +11282,7 @@ Comments= True - + @@ -12390,7 +11356,7 @@ Comments= False False - False + False True True True @@ -12419,7 +11385,7 @@ Comments= False False True - + 0 True @@ -12448,7 +11414,7 @@ Comments= True - + @@ -12522,7 +11488,7 @@ Comments= False False - False + False True True True @@ -12551,7 +11517,7 @@ Comments= False False True - + 0 True @@ -12580,7 +11546,7 @@ Comments= True - + @@ -12654,7 +11620,7 @@ Comments= False False - False + False True True True @@ -12683,7 +11649,7 @@ Comments= False False True - + 0 True @@ -12712,7 +11678,7 @@ Comments= True - + @@ -12786,7 +11752,7 @@ Comments= False False - False + False True True True @@ -12815,7 +11781,7 @@ Comments= False False True - + 0 True @@ -12844,7 +11810,7 @@ Comments= True - + 0 @@ -12916,7 +11882,7 @@ Comments= False False - False + False True True True @@ -12973,7 +11939,7 @@ Comments= True - + 0 @@ -13045,7 +12011,7 @@ Comments= False False - False + False True True True @@ -13074,8 +12040,7 @@ Comments= False False True - - + %library_path% 0 True 0 @@ -13103,7 +12068,7 @@ Comments= True - + 0 @@ -13175,7 +12140,7 @@ Comments= False False - False + False True True True @@ -13204,8 +12169,7 @@ Comments= False False True - - + %library_path% 0 True 0 @@ -13234,14 +12198,14 @@ Comments= - + 0 - True + False True False True @@ -13252,7 +12216,7 @@ Comments= 0 1000 False - + 0 @@ -13324,7 +12288,7 @@ Comments= False False - False + False True True True @@ -13369,7 +12333,7 @@ Comments= fa8 True False - %search_path% + True True False @@ -13381,7 +12345,7 @@ Comments= True - + 0 @@ -13453,7 +12417,7 @@ Comments= False False - False + False True True True @@ -13498,7 +12462,7 @@ Comments= fa8 True False - %search_path% + True True False @@ -13510,7 +12474,7 @@ Comments= True - + 0 @@ -13582,7 +12546,7 @@ Comments= False False - False + False True True True @@ -13627,7 +12591,7 @@ Comments= fa8 True False - %search_path% + True True False @@ -13639,7 +12603,7 @@ Comments= True - + 0 @@ -13711,7 +12675,7 @@ Comments= False False - False + False True True True @@ -13756,7 +12720,7 @@ Comments= fa8 True False - %search_path% + True True False @@ -13768,7 +12732,7 @@ Comments= True - + 0 @@ -13840,7 +12804,7 @@ Comments= False False - False + False True True True @@ -13885,7 +12849,7 @@ Comments= fa8 True False - %search_path% + True True False @@ -13897,7 +12861,7 @@ Comments= True - + 0 @@ -13969,7 +12933,7 @@ Comments= False False - False + False True True True @@ -14014,7 +12978,7 @@ Comments= fa8 True False - %search_path% + True True False @@ -14026,7 +12990,7 @@ Comments= True - + 0 @@ -14097,7 +13061,7 @@ Comments= False False - False + False True True True @@ -14142,7 +13106,7 @@ Comments= fa8 True False - %search_path% + True True False @@ -14154,7 +13118,7 @@ Comments= True - + 0 @@ -14225,7 +13189,7 @@ Comments= False False - False + False True True True @@ -14270,1037 +13234,6 @@ Comments= fa8 True False - %search_path% - True - True - False - False - WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; - - False - False - True - - - - - - 0 - - True - False - False - True - True - 0 - 1252 - 11 - Release - False - - - True - True - - False - - False - False - False - True - False - False - False - False - False - False - False - False - 3081 - - 0 - 0 - 0 - False - 0 - - - True - 0 - - - rcBorland - 1000 - - False - False - False - False - [] - False - False - - - - False - False - False - True - True - True - False - False - %package_path% - - - - False - %modules_dcp_path% - True - - True - - False - True - False - False - True - 4194304 - False - False - False - True - %library_path% - 0 - True - 0 - 1048576 - 16384 - - True - True - %output_path% - False - - False - fa8 - True - False - %search_path% - True - True - False - False - WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; - - False - False - True - - - - - - 0 - - True - False - False - True - True - 0 - 1252 - 11 - Release - False - - - True - True - - False - - False - False - False - True - False - False - False - False - False - False - False - False - 3081 - - 0 - 0 - 0 - False - 0 - - - True - 0 - - - rcBorland - 1000 - - False - False - False - False - [] - False - False - - - - False - False - False - True - True - True - False - False - %package_path% - - - - False - %modules_dcp_path% - True - - True - - False - True - False - False - True - 4194304 - False - False - False - True - %library_path% - 0 - True - 0 - 1048576 - 16384 - - True - True - %output_path% - False - - False - fa8 - True - False - %search_path% - True - True - False - False - WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; - - False - False - True - - - - - - 0 - - True - False - False - True - True - 0 - 1252 - 11 - Release - False - - - True - True - - False - - False - False - False - True - False - False - False - False - False - False - False - False - 3081 - - 0 - 0 - 0 - False - 0 - - - True - 0 - - - rcBorland - 1000 - - False - False - False - False - [] - False - False - - - - False - False - False - True - True - True - False - False - %package_path% - - - - False - %modules_dcp_path% - True - - True - - False - True - False - False - True - 4194304 - False - False - False - True - %library_path% - 0 - True - 0 - 1048576 - 16384 - - True - True - %output_path% - False - - False - fa8 - True - False - %search_path% - True - True - False - False - WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; - - False - False - True - - - - - - 0 - - True - False - False - True - True - 0 - 1252 - 11 - Release - False - - - True - True - - False - - False - False - False - True - False - False - False - False - False - False - False - False - 3081 - - 0 - 0 - 0 - False - 0 - - - True - 0 - - - rcBorland - 1000 - - False - False - False - False - [] - False - False - - - - False - False - False - True - True - True - False - False - %package_path% - - - - False - %modules_dcp_path% - True - - True - - False - True - False - False - True - 4194304 - False - False - False - True - %library_path% - 0 - True - 0 - 1048576 - 16384 - - True - True - %output_path% - False - - False - fa8 - True - False - %search_path% - True - True - False - False - WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; - - False - False - True - - - - - - 0 - - True - False - False - True - True - 0 - 1252 - 11 - Release - False - - - True - True - - False - - False - False - False - True - False - False - False - False - False - False - False - False - 3081 - - 0 - 0 - 0 - False - 0 - - - True - 0 - - - rcBorland - 1000 - - False - False - False - False - [] - False - False - - - - False - False - False - True - True - True - False - False - %package_path% - - - - False - %modules_dcp_path% - True - - True - - False - True - False - False - True - 4194304 - False - False - False - True - %library_path% - 0 - True - 0 - 1048576 - 16384 - - True - True - %output_path% - False - - False - fa8 - True - False - %search_path% - True - True - False - False - WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; - - False - False - True - - - - - - 0 - - True - False - False - True - True - 0 - 1252 - 11 - Release - False - - - True - True - - False - - False - False - False - True - False - False - False - False - False - False - False - False - 3081 - - 0 - 0 - 0 - False - 0 - %source_path%\Modulos\Comisiones\Views\Comisiones_view.dpk - True - 0 - - - rcBorland - 1000 - - False - False - False - False - [] - False - False - - - - False - False - False - True - True - True - False - False - %package_path% - - - - False - %modules_dcp_path% - True - - True - - False - True - False - False - True - 4194304 - False - False - False - True - %library_path% - 0 - True - 0 - 1048576 - 16384 - - True - True - %output_path% - False - - False - fa8 - True - False - %search_path% - True - True - False - False - WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; - - False - False - True - - - - - - 0 - - True - False - False - True - True - 0 - 1252 - 11 - Release - False - - - True - True - - False - - False - False - False - True - False - False - False - False - False - False - False - False - 3081 - - 0 - 0 - 0 - False - 0 - %source_path%\Modulos\Comisiones\Plugin\Comisiones_plugin.dpk - True - 0 - - - rcBorland - 1000 - - False - False - False - False - [] - False - False - - - - False - False - False - True - True - True - False - False - %package_path% - - - - False - %modules_dcp_path% - True - - True - - False - True - False - False - True - 4194304 - False - False - False - True - %library_path% - 0 - True - 0 - 1048576 - 16384 - - True - True - %output_path% - False - - False - fa8 - True - False - %search_path% - True - True - False - False - WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; - - False - False - True - - - - - - 0 - - True - False - False - True - True - 0 - 1252 - 11 - Release - False - - - True - True - - False - - False - False - False - True - False - False - False - False - False - False - False - False - 3081 - - 0 - 0 - 0 - False - 0 - - - True - 0 - - - rcBorland - 1000 - - False - False - False - False - [] - False - False - - - - False - False - False - True - True - True - False - False - %package_path% - - - - False - %modules_dcp_path% - True - - True - - False - True - False - False - True - 4194304 - False - False - False - True - - - 0 - True - 0 - 1048576 - 16384 - - True - True - %output_path% - False - - False - fa8 - True - False True True @@ -15313,397 +13246,7 @@ Comments= True - - - - 0 - - True - False - False - True - True - 0 - 1252 - 11 - Release - False - - - True - True - - False - - False - False - False - True - False - False - False - False - False - False - False - False - 3081 - - 0 - 0 - 0 - False - 0 - - - True - 0 - - - rcBorland - 1000 - - False - False - False - False - [] - False - False - - - - False - False - False - True - True - True - False - False - %package_path% - - - - False - %modules_dcp_path% - True - - True - - False - True - False - False - True - 4194304 - False - False - False - True - - - 0 - True - 0 - 1048576 - 16384 - - True - True - %output_path% - False - - False - fa8 - True - False - - True - True - False - False - WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; - - False - False - True - - - - - - 0 - - True - False - False - True - True - 0 - 1252 - 11 - Release - False - - - True - True - - False - - False - False - False - True - False - False - False - False - False - False - False - False - 3081 - - 0 - 0 - 0 - False - 0 - - - True - 0 - - - rcBorland - 1000 - - False - False - False - False - [] - False - False - - - - False - False - False - True - True - True - False - False - %package_path% - - - - False - %modules_dcp_path% - True - - True - - False - True - False - False - True - 4194304 - False - False - False - True - - - 0 - True - 0 - 1048576 - 16384 - - True - True - %output_path% - False - - False - fa8 - True - False - - True - True - False - False - WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; - - False - False - True - - - - - - 0 - - True - False - False - True - True - 0 - 1252 - 11 - Release - False - - - True - True - - False - - False - False - False - True - False - False - False - False - False - False - False - False - 3081 - - 0 - 0 - 0 - False - 0 - - - True - 0 - - - rcBorland - 1000 - - False - False - False - False - [] - False - False - - - - False - False - False - True - True - True - False - False - %package_path% - - - - False - %modules_dcp_path% - True - - True - - False - True - False - False - True - 4194304 - False - False - False - True - - - 0 - True - 0 - 1048576 - 16384 - - True - True - %output_path% - False - - False - fa8 - True - False - - True - True - False - False - WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; - - False - False - True - - - + 0 @@ -15775,7 +13318,7 @@ Comments= False False - False + False True True True @@ -15804,8 +13347,7 @@ Comments= False False True - - + %library_path% 0 True 0 @@ -15833,7 +13375,7 @@ Comments= True - + 0 @@ -15905,7 +13447,7 @@ Comments= False False - False + False True True True @@ -15934,8 +13476,1424 @@ Comments= False False True - + %library_path% + 0 + True + 0 + 1048576 + 16384 + + True + True + %output_path% + False + + False + fa8 + True + False + + True + True + False + False + WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; + + False + False + True + + + + + + 0 + + True + False + False + True + True + 0 + 1252 + 11 + Release + False + + + True + True + + False + + False + False + False + True + False + False + False + False + False + False + False + False + 3081 + + 0 + 0 + 0 + False + 0 + + + True + 0 + + + rcBorland + 1000 + + False + False + False + False + [] + False + False + + + + False + False + False + True + True + True + False + False + %package_path% + + + False + %modules_dcp_path% + True + + True + + False + True + False + False + True + 4194304 + False + False + False + True + %library_path% + 0 + True + 0 + 1048576 + 16384 + + True + True + %output_path% + False + + False + fa8 + True + False + + True + True + False + False + WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; + + False + False + True + + + + + + 0 + + True + False + False + True + True + 0 + 1252 + 11 + Release + False + + + True + True + + False + + False + False + False + True + False + False + False + False + False + False + False + False + 3081 + + 0 + 0 + 0 + False + 0 + + + True + 0 + + + rcBorland + 1000 + + False + False + False + False + [] + False + False + + + + False + False + False + True + True + True + False + False + %package_path% + + + + False + %modules_dcp_path% + True + + True + + False + True + False + False + True + 4194304 + False + False + False + True + %library_path% + 0 + True + 0 + 1048576 + 16384 + + True + True + %output_path% + False + + False + fa8 + True + False + + True + True + False + False + WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; + + False + False + True + + + + + + 0 + + True + False + False + True + True + 0 + 1252 + 11 + Release + False + + + True + True + + False + + False + False + False + True + False + False + False + False + False + False + False + False + 3081 + + 0 + 0 + 0 + False + 0 + + + True + 0 + + + rcBorland + 1000 + + False + False + False + False + [] + False + False + + + + False + False + False + True + True + True + False + False + %package_path% + + + + False + %modules_dcp_path% + True + + True + + False + True + False + False + True + 4194304 + False + False + False + True + %library_path% + 0 + True + 0 + 1048576 + 16384 + + True + True + %output_path% + False + + False + fa8 + True + False + + True + True + False + False + WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; + + False + False + True + + + + + + 0 + + True + False + False + True + True + 0 + 1252 + 11 + Release + False + + + True + True + + False + + False + False + False + True + False + False + False + False + False + False + False + False + 3081 + + 0 + 0 + 0 + False + 0 + + + True + 0 + + + rcBorland + 1000 + + False + False + False + False + [] + False + False + + + + False + False + False + True + True + True + False + False + %package_path% + + + + False + %modules_dcp_path% + True + + True + + False + True + False + False + True + 4194304 + False + False + False + True + %library_path% + 0 + True + 0 + 1048576 + 16384 + + True + True + %output_path% + False + + False + fa8 + True + False + + True + True + False + False + WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; + + False + False + True + + + + + + 0 + + True + False + False + True + True + 0 + 1252 + 11 + Release + False + + + True + True + + False + + False + False + False + True + False + False + False + False + False + False + False + False + 3081 + + 0 + 0 + 0 + False + 0 + + + True + 0 + + + rcBorland + 1000 + + False + False + False + False + [] + False + False + + + + False + False + False + True + True + True + False + False + %package_path% + + + + False + %modules_dcp_path% + True + + True + + False + True + False + False + True + 4194304 + False + False + False + True + %library_path% + 0 + True + 0 + 1048576 + 16384 + + True + True + %output_path% + False + + False + fa8 + True + False + + True + True + False + False + WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; + + False + False + True + + + + + + 0 + + True + False + False + True + True + 0 + 1252 + 11 + Release + False + + + True + True + + False + + False + False + False + True + False + False + False + False + False + False + False + False + 3081 + + 0 + 0 + 0 + False + 0 + %source_path%\Modulos\Comisiones\Views\Comisiones_view.dpk + True + 0 + + + rcBorland + 1000 + + False + False + False + False + [] + False + False + + + + False + False + False + True + True + True + False + False + %package_path% + + + + False + %modules_dcp_path% + True + + True + + False + True + False + False + True + 4194304 + False + False + False + True + %library_path% + 0 + True + 0 + 1048576 + 16384 + + True + True + %output_path% + False + + False + fa8 + True + False + + True + True + False + False + WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; + + False + False + True + + + + + + 0 + + True + False + False + True + True + 0 + 1252 + 11 + Release + False + + + True + True + + False + + False + False + False + True + False + False + False + False + False + False + False + False + 3081 + + 0 + 0 + 0 + False + 0 + %source_path%\Modulos\Comisiones\Plugin\Comisiones_plugin.dpk + True + 0 + + + rcBorland + 1000 + + False + False + False + False + [] + False + False + + + + False + False + False + True + True + True + False + False + %package_path% + + + + False + %modules_dcp_path% + True + + True + + False + True + False + False + True + 4194304 + False + False + False + True + %library_path% + 0 + True + 0 + 1048576 + 16384 + + True + True + %output_path% + False + + False + fa8 + True + False + + True + True + False + False + WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; + + False + False + True + + + + + + 0 + + True + False + False + True + True + 0 + 1252 + 11 + Release + False + + + True + True + + False + + False + False + False + True + False + False + False + False + False + False + False + False + 3081 + + 0 + 0 + 0 + False + 0 + + + True + 0 + + + rcBorland + 1000 + + False + False + False + False + [] + False + False + + + + False + False + False + True + True + True + False + False + %package_path% + + + + False + %modules_dcp_path% + True + + True + + False + True + False + False + True + 4194304 + False + False + False + True + %library_path% + 0 + True + 0 + 1048576 + 16384 + + True + True + %output_path% + False + + False + fa8 + True + False + + True + True + False + False + WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; + + False + False + True + + + + + + 0 + + True + False + False + True + True + 0 + 1252 + 11 + Release + False + + + True + True + + False + + False + False + False + True + False + False + False + False + False + False + False + False + 3081 + + 0 + 0 + 0 + False + 0 + + + True + 0 + + + rcBorland + 1000 + + False + False + False + False + [] + False + False + + + + False + False + False + True + True + True + False + False + %package_path% + + + + False + %modules_dcp_path% + True + + True + + False + True + False + False + True + 4194304 + False + False + False + True + %library_path% + 0 + True + 0 + 1048576 + 16384 + + True + True + %output_path% + False + + False + fa8 + True + False + + True + True + False + False + WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; + + False + False + True + + + + + + 0 + + True + False + False + True + True + 0 + 1252 + 11 + Release + False + + + True + True + + False + + False + False + False + True + False + False + False + False + False + False + False + False + 3081 + + 0 + 0 + 0 + False + 0 + + + True + 0 + + + rcBorland + 1000 + + False + False + False + False + [] + False + False + + + + False + False + False + True + True + True + False + False + %package_path% + + + + False + %modules_dcp_path% + True + + True + + False + True + False + False + True + 4194304 + False + False + False + True + %library_path% + 0 + True + 0 + 1048576 + 16384 + + True + True + %output_path% + False + + False + fa8 + True + False + + True + True + False + False + WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; + + False + False + True + + + + + + 0 + + True + False + False + True + True + 0 + 1252 + 11 + Release + False + + + True + True + + False + + False + False + False + True + False + False + False + False + False + False + False + False + 3081 + + 0 + 0 + 0 + False + 0 + + + True + 0 + + + rcBorland + 1000 + + False + False + False + False + [] + False + False + + + + False + False + False + True + True + True + False + False + %package_path% + + + + False + %modules_dcp_path% + True + + True + + False + True + False + False + True + 4194304 + False + False + False + True + %library_path% 0 True 0 @@ -15964,4243 +14922,8 @@ Comments= - - - - 0 - - - - True - True - False - True - False - - 0 - False - 0 - 1000 - False - - - - 0 - - True - False - False - True - True - 0 - 1252 - 11 - Release - False - - - True - True - - False - - False - False - False - True - False - False - False - False - False - False - False - False - 3081 - - 0 - 0 - 0 - False - 0 - - - True - 0 - - - rcBorland - 1000 - - False - False - False - False - [] - False - False - - - - False - False - False - True - True - True - False - False - %package_path% - - - - False - %modules_dcp_path% - True - - True - - False - True - False - False - True - 4194304 - False - False - False - True - %library_path% - 0 - True - 0 - 1048576 - 16384 - - True - True - %output_path% - False - - False - fa8 - True - False - %search_path% - True - True - False - False - WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; - - False - False - True - - - - - - 0 - - True - False - False - True - True - 0 - 1252 - 11 - Release - False - - - True - True - - False - - False - False - False - True - False - False - False - False - False - False - False - False - 3081 - - 0 - 0 - 0 - False - 0 - - - True - 0 - - - rcBorland - 1000 - - False - False - False - False - [] - False - False - - - - False - False - False - True - True - True - False - False - %package_path% - - - - False - %modules_dcp_path% - True - - True - - False - True - False - False - True - 4194304 - False - False - False - True - %library_path% - 0 - True - 0 - 1048576 - 16384 - - True - True - %output_path% - False - - False - fa8 - True - False - %search_path% - True - True - False - False - WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; - - False - False - True - - - - - - 0 - - True - False - False - True - True - 0 - 1252 - 11 - Release - False - - - True - True - - False - - False - False - False - True - False - False - False - False - False - False - False - False - 3081 - - 0 - 0 - 0 - False - 0 - - - True - 0 - - - rcBorland - 1000 - - False - False - False - False - [] - False - False - - - - False - False - False - True - True - True - False - False - %package_path% - - - - False - %modules_dcp_path% - True - - True - - False - True - False - False - True - 4194304 - False - False - False - True - %library_path% - 0 - True - 0 - 1048576 - 16384 - - True - True - %output_path% - False - - False - fa8 - True - False - %search_path% - True - True - False - False - WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; - - False - False - True - - - - - - 0 - - True - False - False - True - True - 0 - 1252 - 11 - Release - False - - - True - True - - False - - False - False - False - True - False - False - False - False - False - False - False - False - 3081 - - 0 - 0 - 0 - False - 0 - - - True - 0 - - - rcBorland - 1000 - - False - False - False - False - [] - False - False - - - - False - False - False - True - True - True - False - False - %package_path% - - - - False - %modules_dcp_path% - True - - True - - False - True - False - False - True - 4194304 - False - False - False - True - %library_path% - 0 - True - 0 - 1048576 - 16384 - - True - True - %output_path% - False - - False - fa8 - True - False - %search_path% - True - True - False - False - WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; - - False - False - True - - - - - - 0 - - True - False - False - True - True - 0 - 1252 - 11 - Release - False - - - True - True - - False - - False - False - False - True - False - False - False - False - False - False - False - False - 3081 - - 0 - 0 - 0 - False - 0 - - - True - 0 - - - rcBorland - 1000 - - False - False - False - False - [] - False - False - - - - False - False - False - True - True - True - False - False - %package_path% - - - - False - %modules_dcp_path% - True - - True - - False - True - False - False - True - 4194304 - False - False - False - True - %library_path% - 0 - True - 0 - 1048576 - 16384 - - True - True - %output_path% - False - - False - fa8 - True - False - %search_path% - True - True - False - False - WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; - - False - False - True - - - - - - - 0 - - - - True - True - False - True - False - - 0 - False - 0 - 1000 - False - - - - 0 - - True - False - False - True - True - 0 - 1252 - 11 - Release - False - - - True - True - - False - - False - False - False - True - False - False - False - False - False - False - False - False - 3081 - - 0 - 0 - 0 - False - 0 - - - True - 0 - - - rcBorland - 1000 - - False - False - False - False - [] - False - False - - - - False - False - False - True - True - True - False - False - %package_path% - - - - False - %modules_dcp_path% - True - - True - - False - True - False - False - True - 4194304 - False - False - False - True - %library_path% - 0 - True - 0 - 1048576 - 16384 - - True - True - %output_path% - False - - False - fa8 - True - False - %search_path% - True - True - False - False - WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; - - False - False - True - - - - - - 0 - - True - False - False - True - True - 0 - 1252 - 11 - Release - False - - - True - True - - False - - False - False - False - True - False - False - False - False - False - False - False - False - 3081 - - 0 - 0 - 0 - False - 0 - - - True - 0 - - - rcBorland - 1000 - - False - False - False - False - [] - False - False - - - - False - False - False - True - True - True - False - False - %package_path% - - - - False - %modules_dcp_path% - True - - True - - False - True - False - False - True - 4194304 - False - False - False - True - %library_path% - 0 - True - 0 - 1048576 - 16384 - - True - True - %output_path% - False - - False - fa8 - True - False - %search_path% - True - True - False - False - WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; - - False - False - True - - - - - - 0 - - True - False - False - True - True - 0 - 1252 - 11 - Release - False - - - True - True - - False - - False - False - False - True - False - False - False - False - False - False - False - False - 3081 - - 0 - 0 - 0 - False - 0 - - - True - 0 - - - rcBorland - 1000 - - False - False - False - False - [] - False - False - - - - False - False - False - True - True - True - False - False - %package_path% - - - - False - %modules_dcp_path% - True - - True - - False - True - False - False - True - 4194304 - False - False - False - True - %library_path% - 0 - True - 0 - 1048576 - 16384 - - True - True - %output_path% - False - - False - fa8 - True - False - %search_path% - True - True - False - False - WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; - - False - False - True - - - - - - 0 - - True - False - False - True - True - 0 - 1252 - 11 - Release - False - - - True - True - - False - - False - False - False - True - False - False - False - False - False - False - False - False - 3081 - - 0 - 0 - 0 - False - 0 - - - True - 0 - - - rcBorland - 1000 - - False - False - False - False - [] - False - False - - - - False - False - False - True - True - True - False - False - %package_path% - - - - False - %modules_dcp_path% - True - - True - - False - True - False - False - True - 4194304 - False - False - False - True - %library_path% - 0 - True - 0 - 1048576 - 16384 - - True - True - %output_path% - False - - False - fa8 - True - False - %search_path% - True - True - False - False - WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; - - False - False - True - - - - - - 0 - - True - False - False - True - True - 0 - 1252 - 11 - Release - False - - - True - True - - False - - False - False - False - True - False - False - False - False - False - False - False - False - 3081 - - 0 - 0 - 0 - False - 0 - - - True - 0 - - - rcBorland - 1000 - - False - False - False - False - [] - False - False - - - - False - False - False - True - True - True - False - False - %package_path% - - - - False - %modules_dcp_path% - True - - True - - False - True - False - False - True - 4194304 - False - False - False - True - %library_path% - 0 - True - 0 - 1048576 - 16384 - - True - True - %output_path% - False - - False - fa8 - True - False - %search_path% - True - True - False - False - WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; - - False - False - True - - - - - Referencias - 0 - - Referencias - True - True - False - True - False - - 0 - False - 0 - 1000 - False - - - - 0 - - True - False - False - True - True - 0 - 1252 - 11 - Release - False - - - True - True - - False - - False - False - False - True - False - False - False - False - False - False - False - False - 3081 - - 0 - 0 - 0 - False - 0 - %source_path%\Modulos\Referencias\Model\Referencias_model.dpk - True - 0 - - - rcBorland - 1000 - - False - False - False - False - [] - False - False - - - - False - False - False - True - True - True - False - False - %package_path% - - - - False - %modules_dcp_path% - True - - True - - False - True - False - False - True - 4194304 - False - False - False - True - %library_path% - 0 - True - 0 - 1048576 - 16384 - - True - True - %output_path% - False - - False - fa8 - True - False - %search_path% - True - True - False - False - WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; - - False - False - True - - - - - - 0 - - True - False - False - True - True - 0 - 1252 - 11 - Release - False - - - True - True - - False - - False - False - False - True - False - False - False - False - False - False - False - False - 3081 - - 0 - 0 - 0 - False - 0 - %source_path%\Modulos\Referencias\Data\Referencias_data.dpk - True - 0 - - - rcBorland - 1000 - - False - False - False - False - [] - False - False - - - - False - False - False - True - True - True - False - False - %package_path% - - - - False - %modules_dcp_path% - True - - True - - False - True - False - False - True - 4194304 - False - False - False - True - %library_path% - 0 - True - 0 - 1048576 - 16384 - - True - True - %output_path% - False - - False - fa8 - True - False - %search_path% - True - True - False - False - WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; - - False - False - True - - - - - - 0 - - True - False - False - True - True - 0 - 1252 - 11 - Release - False - - - True - True - - False - - False - False - False - True - False - False - False - False - False - False - False - False - 3081 - - 0 - 0 - 0 - False - 0 - %source_path%\Modulos\Referencias\Controller\Referencias_controller.dpk - True - 0 - - - rcBorland - 1000 - - False - False - False - False - [] - False - False - - - - False - False - False - True - True - True - False - False - %package_path% - - - - False - %modules_dcp_path% - True - - True - - False - True - False - False - True - 4194304 - False - False - False - True - %library_path% - 0 - True - 0 - 1048576 - 16384 - - True - True - %output_path% - False - - False - fa8 - True - False - %search_path% - True - True - False - False - WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; - - False - False - True - - - - - - 0 - - True - False - False - True - True - 0 - 1252 - 11 - Release - False - - - True - True - - False - - False - False - False - True - False - False - False - False - False - False - False - False - 3081 - - 0 - 0 - 0 - False - 0 - %source_path%\Modulos\Referencias\Views\Referencias_view.dpk - True - 0 - - - rcBorland - 1000 - - False - False - False - False - [] - False - False - - - - False - False - False - True - True - True - False - False - %package_path% - - - - False - %modules_dcp_path% - True - - True - - False - True - False - False - True - 4194304 - False - False - False - True - %library_path% - 0 - True - 0 - 1048576 - 16384 - - True - True - %output_path% - False - - False - fa8 - True - False - %search_path% - True - True - False - False - WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; - - False - False - True - - - - - - 0 - - True - False - False - True - True - 0 - 1252 - 11 - Release - False - - - True - True - - False - - False - False - False - True - False - False - False - False - False - False - False - False - 3081 - - 0 - 0 - 0 - False - 0 - %source_path%\Modulos\Referencias\Plugin\Referencias_plugin.dpk - True - 0 - - - rcBorland - 1000 - - False - False - False - False - [] - False - False - - - - False - False - False - True - True - True - False - False - %package_path% - - - - False - %modules_dcp_path% - True - - True - - False - True - False - False - True - 4194304 - False - False - False - True - %library_path% - 0 - True - 0 - 1048576 - 16384 - - True - True - %output_path% - False - - False - fa8 - True - False - %search_path% - True - True - False - False - WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; - - False - False - True - - - - - - - 0 - - - - True - True - False - True - False - - 0 - False - 0 - 1000 - False - - - - 0 - - True - False - False - True - True - 0 - 1252 - 11 - Release - False - - - True - True - - False - - False - False - False - True - False - False - False - False - False - False - False - False - 3081 - - 0 - 0 - 0 - False - 0 - - - True - 0 - - - rcBorland - 1000 - - False - False - False - False - [] - False - False - - - - False - False - False - True - True - True - False - False - %package_path% - - - - False - %modules_dcp_path% - True - - True - - False - True - False - False - True - 4194304 - False - False - False - True - %library_path% - 0 - True - 0 - 1048576 - 16384 - - True - True - %output_path% - False - - False - fa8 - True - False - %search_path% - True - True - False - False - WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; - - False - False - True - - - - - - 0 - - True - False - False - True - True - 0 - 1252 - 11 - Release - False - - - True - True - - False - - False - False - False - True - False - False - False - False - False - False - False - False - 3081 - - 0 - 0 - 0 - False - 0 - - - True - 0 - - - rcBorland - 1000 - - False - False - False - False - [] - False - False - - - - False - False - False - True - True - True - False - False - %package_path% - - - - False - %modules_dcp_path% - True - - True - - False - True - False - False - True - 4194304 - False - False - False - True - %library_path% - 0 - True - 0 - 1048576 - 16384 - - True - True - %output_path% - False - - False - fa8 - True - False - %search_path% - True - True - False - False - WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; - - False - False - True - - - - - - 0 - - True - False - False - True - True - 0 - 1252 - 11 - Release - False - - - True - True - - False - - False - False - False - True - False - False - False - False - False - False - False - False - 3081 - - 0 - 0 - 0 - False - 0 - - - True - 0 - - - rcBorland - 1000 - - False - False - False - False - [] - False - False - - - - False - False - False - True - True - True - False - False - %package_path% - - - - False - %modules_dcp_path% - True - - True - - False - True - False - False - True - 4194304 - False - False - False - True - %library_path% - 0 - True - 0 - 1048576 - 16384 - - True - True - %output_path% - False - - False - fa8 - True - False - %search_path% - True - True - False - False - WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; - - False - False - True - - - - - - 0 - - True - False - False - True - True - 0 - 1252 - 11 - Release - False - - - True - True - - False - - False - False - False - True - False - False - False - False - False - False - False - False - 3081 - - 0 - 0 - 0 - False - 0 - - - True - 0 - - - rcBorland - 1000 - - False - False - False - False - [] - False - False - - - - False - False - False - True - True - True - False - False - %package_path% - - - - False - %modules_dcp_path% - True - - True - - False - True - False - False - True - 4194304 - False - False - False - True - %library_path% - 0 - True - 0 - 1048576 - 16384 - - True - True - %output_path% - False - - False - fa8 - True - False - %search_path% - True - True - False - False - WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; - - False - False - True - - - - - - 0 - - True - False - False - True - True - 0 - 1252 - 11 - Release - False - - - True - True - - False - - False - False - False - True - False - False - False - False - False - False - False - False - 3081 - - 0 - 0 - 0 - False - 0 - - - True - 0 - - - rcBorland - 1000 - - False - False - False - False - [] - False - False - - - - False - False - False - True - True - True - False - False - %package_path% - - - - False - %modules_dcp_path% - True - - True - - False - True - False - False - True - 4194304 - False - False - False - True - %library_path% - 0 - True - 0 - 1048576 - 16384 - - True - True - %output_path% - False - - False - fa8 - True - False - %search_path% - True - True - False - False - WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; - - False - False - True - - - - - - 0 - - True - False - False - True - True - 0 - 1252 - 11 - Release - False - - - True - True - - False - - False - False - False - True - False - False - False - False - False - False - False - False - 3081 - - 0 - 0 - 0 - False - 0 - - - True - 0 - - - rcBorland - 1000 - - False - False - False - False - [] - False - False - - - - False - False - False - True - True - True - False - False - %package_path% - - - - False - %modules_dcp_path% - True - - True - - False - True - False - False - True - 4194304 - False - False - False - True - %library_path% - 0 - True - 0 - 1048576 - 16384 - - True - True - %output_path% - False - - False - fa8 - True - False - %search_path% - True - True - False - False - WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; - - False - False - True - - - - - - 0 - - True - False - False - True - True - 0 - 1252 - 11 - Release - False - - - True - True - - False - - False - False - False - True - False - False - False - False - False - False - False - False - 3081 - - 0 - 0 - 0 - False - 0 - - - True - 0 - - - rcBorland - 1000 - - False - False - False - False - [] - False - False - - - - False - False - False - True - True - True - False - False - %package_path% - - - - False - %modules_dcp_path% - True - - True - - False - True - False - False - True - 4194304 - False - False - False - True - %library_path% - 0 - True - 0 - 1048576 - 16384 - - True - True - %output_path% - False - - False - fa8 - True - False - %search_path% - True - True - False - False - WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; - - False - False - True - - - - - - - 0 - - - - True - True - False - True - False - - 0 - False - 0 - 1000 - False - - - - 0 - - True - False - False - True - True - 0 - 1252 - 11 - Release - False - - - True - True - - False - - False - False - False - True - False - False - False - False - False - False - False - False - 3081 - - 0 - 0 - 0 - False - 0 - - - True - 0 - - - rcBorland - 1000 - - False - False - False - False - [] - False - False - - - - False - False - False - True - True - True - False - False - %package_path% - - - - False - %modules_dcp_path% - True - - True - - False - True - False - False - True - 4194304 - False - False - False - True - %library_path% - 0 - True - 0 - 1048576 - 16384 - - True - True - %output_path% - False - - False - fa8 - True - False - %search_path% - True - True - False - False - WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; - - False - False - True - - - - - - 0 - - True - False - False - True - True - 0 - 1252 - 11 - Release - False - - - True - True - - False - - False - False - False - True - False - False - False - False - False - False - False - False - 3081 - - 0 - 0 - 0 - False - 0 - - - True - 0 - - - rcBorland - 1000 - - False - False - False - False - [] - False - False - - - - False - False - False - True - True - True - False - False - %package_path% - - - - False - %modules_dcp_path% - True - - True - - False - True - False - False - True - 4194304 - False - False - False - True - %library_path% - 0 - True - 0 - 1048576 - 16384 - - True - True - %output_path% - False - - False - fa8 - True - False - %search_path% - True - True - False - False - WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; - - False - False - True - - - - - - 0 - - True - False - False - True - True - 0 - 1252 - 11 - Release - False - - - True - True - - False - - False - False - False - True - False - False - False - False - False - False - False - False - 3081 - - 0 - 0 - 0 - False - 0 - - - True - 0 - - - rcBorland - 1000 - - False - False - False - False - [] - False - False - - - - False - False - False - True - True - True - False - False - %package_path% - - - - False - %modules_dcp_path% - True - - True - - False - True - False - False - True - 4194304 - False - False - False - True - %library_path% - 0 - True - 0 - 1048576 - 16384 - - True - True - %output_path% - False - - False - fa8 - True - False - %search_path% - True - True - False - False - WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; - - False - False - True - - - - - - 0 - - True - False - False - True - True - 0 - 1252 - 11 - Release - False - - - True - True - - False - - False - False - False - True - False - False - False - False - False - False - False - False - 3081 - - 0 - 0 - 0 - False - 0 - - - True - 0 - - - rcBorland - 1000 - - False - False - False - False - [] - False - False - - - - False - False - False - True - True - True - False - False - %package_path% - - - - False - %modules_dcp_path% - True - - True - - False - True - False - False - True - 4194304 - False - False - False - True - %library_path% - 0 - True - 0 - 1048576 - 16384 - - True - True - %output_path% - False - - False - fa8 - True - False - %search_path% - True - True - False - False - WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; - - False - False - True - - - - - - 0 - - True - False - False - True - True - 0 - 1252 - 11 - Release - False - - - True - True - - False - - False - False - False - True - False - False - False - False - False - False - False - False - 3081 - - 0 - 0 - 0 - False - 0 - - - True - 0 - - - rcBorland - 1000 - - False - False - False - False - [] - False - False - - - - False - False - False - True - True - True - False - False - %package_path% - - - - False - %modules_dcp_path% - True - - True - - False - True - False - False - True - 4194304 - False - False - False - True - %library_path% - 0 - True - 0 - 1048576 - 16384 - - True - True - %output_path% - False - - False - fa8 - True - False - %search_path% - True - True - False - False - WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; - - False - False - True - - - - - - - 0 - - - - True - True - False - True - False - - 0 - False - 0 - 1000 - False - - - - 0 - - True - False - False - True - True - 0 - 1252 - 11 - Release - False - - - True - True - - False - - False - False - False - True - False - False - False - False - False - False - False - False - 3081 - - 0 - 0 - 0 - False - 0 - - - True - 0 - - - rcBorland - 1000 - - False - False - False - False - [] - False - False - - - - False - False - False - True - True - True - False - False - %package_path% - - - - False - %modules_dcp_path% - True - - True - - False - True - False - False - True - 4194304 - False - False - False - True - %library_path% - 0 - True - 0 - 1048576 - 16384 - - True - True - %output_path% - False - - False - fa8 - True - False - %search_path% - True - True - False - False - WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; - - False - False - True - - - - - - 0 - - True - False - False - True - True - 0 - 1252 - 11 - Release - False - - - True - True - - False - - False - False - False - True - False - False - False - False - False - False - False - False - 3081 - - 0 - 0 - 0 - False - 0 - - - True - 0 - - - rcBorland - 1000 - - False - False - False - False - [] - False - False - - - - False - False - False - True - True - True - False - False - %package_path% - - - - False - %modules_dcp_path% - True - - True - - False - True - False - False - True - 4194304 - False - False - False - True - %library_path% - 0 - True - 0 - 1048576 - 16384 - - True - True - %output_path% - False - - False - fa8 - True - False - %search_path% - True - True - False - False - WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; - - False - False - True - - - - - - 0 - - True - False - False - True - True - 0 - 1252 - 11 - Release - False - - - True - True - - False - - False - False - False - True - False - False - False - False - False - False - False - False - 3081 - - 0 - 0 - 0 - False - 0 - - - True - 0 - - - rcBorland - 1000 - - False - False - False - False - [] - False - False - - - - False - False - False - True - True - True - False - False - %package_path% - - - - False - %modules_dcp_path% - True - - True - - False - True - False - False - True - 4194304 - False - False - False - True - %library_path% - 0 - True - 0 - 1048576 - 16384 - - True - True - %output_path% - False - - False - fa8 - True - False - %search_path% - True - True - False - False - WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; - - False - False - True - - - - - - 0 - - True - False - False - True - True - 0 - 1252 - 11 - Release - False - - - True - True - - False - - False - False - False - True - False - False - False - False - False - False - False - False - 3081 - - 0 - 0 - 0 - False - 0 - - - True - 0 - - - rcBorland - 1000 - - False - False - False - False - [] - False - False - - - - False - False - False - True - True - True - False - False - %package_path% - - - - False - %modules_dcp_path% - True - - True - - False - True - False - False - True - 4194304 - False - False - False - True - %library_path% - 0 - True - 0 - 1048576 - 16384 - - True - True - %output_path% - False - - False - fa8 - True - False - %search_path% - True - True - False - False - WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; - - False - False - True - - - - - - 0 - - True - False - False - True - True - 0 - 1252 - 11 - Release - False - - - True - True - - False - - False - False - False - True - False - False - False - False - False - False - False - False - 3081 - - 0 - 0 - 0 - False - 0 - - - True - 0 - - - rcBorland - 1000 - - False - False - False - False - [] - False - False - - - - False - False - False - True - True - True - False - False - %package_path% - - - - False - %modules_dcp_path% - True - - True - - False - True - False - False - True - 4194304 - False - False - False - True - %library_path% - 0 - True - 0 - 1048576 - 16384 - - True - True - %output_path% - False - - False - fa8 - True - False - %search_path% - True - True - False - False - WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; - - False - False - True - - - - + Cliente 0 @@ -20216,7 +14939,7 @@ Comments= 0 1000 False - + 0 @@ -20228,8 +14951,8 @@ Comments= True 0 1252 - 11 - Release + 12 + Debug False @@ -20237,7 +14960,7 @@ Comments= True False - %source_path%\Iconos\Factuges.ico + %project_path%\Resources\Iconos\Factuges.ico False False True @@ -20254,12 +14977,12 @@ Comments= 2 0 - 1 + 2 False 0 %source_path%\Cliente\FactuGES.dpr True - 0 + 2 rcBorland @@ -20269,39 +14992,36 @@ Comments= False False False - [usPackages,usVersionInfo] + [usCompiler,usLinker,usVersionInfo] False False False False - False - True - True + False + False + False True False False - %output_path% - + .\ + - + DEBUG; False - + .\ True True @@ -20316,29 +15036,29 @@ Comments= False False True - %library_path% + %library_path%;%modules_dcp_path%; 0 True - 0 + 3 1048576 16384 True - True + False %output_path%\Cliente False - pluginsdk_d10r;guisdk_d10;dataabstract_d10;base;guibase;usuarios;contactos_plugin;empresas_plugin;empresas_controller;empresas_model;rtl + PluginSDK_D10R;GUISDK_D11;Base;GUIBase;ApplicationBase; False fa8 True False - %search_path% + True True - False + True False WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; - + .\ False True True @@ -20352,7 +15072,7 @@ Comments= - True + False True False True @@ -20434,35 +15154,50 @@ Comments= False - - + + - 0 + 8388736 + + True - False True - efHTML False - True - True - True - True - True - True - True True False 0 False - - - %project_path%\Build\buildlog.html 0 1000 False - + + + + 0 + + False + True + True + False + False + %source_path%\Informes\*.* + True + False + True + False + + 0 + False + False + 0 + False + 1000 + False + %output_path%\Servidor\Informes + True + @@ -20499,20 +15234,10 @@ Comments= output_path vtProject - - - - False - False - False - search_path - vtProject - - - - False + %DELPHI2007DIR%\Lib;%DELPHI2007DIR%\Imports;%library_3rdparty_path%;%base_dcp_path% + True False False library_path @@ -20552,7 +15277,7 @@ Comments= vtProject - %DELPHI2006% + %DELPHI2007% False False False @@ -20567,6 +15292,32 @@ Comments= source_path vtProject + + %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; + True + False + False + library_3rdparty_path + vtProject + + + C:\Varela_D2007\Output + True + False + False + path_aux + vtProject + + + + + False + False + False + _aux_path + vtProject + diff --git a/Build/Build.fbv b/Build/Build.fbv new file mode 100644 index 00000000..411786d2 --- /dev/null +++ b/Build/Build.fbv @@ -0,0 +1 @@ + diff --git a/Build/BuildDavid.fbw b/Build/Build.fbw similarity index 100% rename from Build/BuildDavid.fbw rename to Build/Build.fbw diff --git a/Build/Build.log b/Build/Build.log new file mode 100644 index 00000000..4bde328a --- /dev/null +++ b/Build/Build.log @@ -0,0 +1,456 @@ + +Project Validated Successfully + +Project File: C:\Codigo Tecsitel\Build\Build.fbp5 + +Build Started: 25/09/2007 10:07:26 + + +[Start ActionList: Main] + +[Set Variable project_path to [ C:\Codigo Tecsitel\Build ]] + +[String Replace] +String Replace: \\Build has been replaced with + +[Borrar ficheros temporales] + +[Run DOS Command [ C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\msbuild.exe "C:\Codigo Tecsitel\Source\ClearFiles.msbuild" ]] +Microsoft (R) Build Engine Version 2.0.50727.42 +[Microsoft .NET Framework, Version 2.0.50727.42] +Copyright (C) Microsoft Corporation 2005. All rights reserved. + +Build started 25/09/2007 10:07:28. +__________________________________________________ +Project "C:\Codigo Tecsitel\Source\ClearFiles.msbuild" (default targets): + +Target ShowFiles: + Base\Base.dcu;Base\ClassRegistry\uClassRegistryUtils.dcu;Base\ClassRegistry\uEditorRegistryUtils.dcu;Base\ClassRegistry\uInformeRegistryUtils.dcu;Base\ClassRegistry\uViewRegistryUtils.dcu;Base\ControllerBase\ControllerBase.dcu;Base\ControllerBase\uControllerBase.dcu;Base\ControllerBase\uControllerDetallesBase.dcu;Base\ControllerBase\uControllerDetallesDTO.dcu;Base\GUIBase\GUIBase.dcu;Base\GUIBase\uBizInformesAware.dcu;Base\GUIBase\uDialogBase.dcu;Base\GUIBase\uEditorBase.dcu;Base\GUIBase\uEditorBasico.dcu;Base\GUIBase\uEditorDBBase.dcu;Base\GUIBase\uEditorDBItem.dcu;Base\GUIBase\uEditorGridBase.dcu;Base\GUIBase\uEditorItem.dcu;Base\GUIBase\uEditorPreview.dcu;Base\GUIBase\uViewBarraSeleccion.dcu;Base\GUIBase\uViewBase.dcu;Base\GUIBase\uViewDetallesBase.dcu;Base\GUIBase\uViewDetallesDTO.dcu;Base\GUIBase\uViewDetallesGenerico.dcu;Base\GUIBase\uViewFiltroBase.dcu;Base\GUIBase\uViewFormaPago.dcu;Base\GUIBase\uViewGrid.dcu;Base\GUIBase\uViewGrid2Niveles.dcu;Base\GUIBase\uViewGridBase.dcu;Base\GUIBase\uViewIncidencias.dcu;Base\GUIBase\uViewObservaciones.dcu;Base\GUIBase\uViewPreview.dcu;Base\GUIBase\uViewTotales.dcu;Base\uActualizacion.dcu;Base\uConfigurarConexion.dcu;Base\uDataModuleBase.dcu;Base\uDataModuleConexion.dcu;Base\uDataModuleConfiguracion.dcu;Base\Usuarios\uCambiarPassword.dcu;Base\Usuarios\uDataModuleUsuarios.dcu;Base\Usuarios\uLoginForm.dcu;Base\Usuarios\Usuarios.dcu;Base\Usuarios\uUsuario.dcu;Base\Usuarios\uUsuarios.dcu;Base\Utiles\MD5.dcu;Base\Utiles\uDataTableUtils.dcu;Base\Utiles\uDateUtils.dcu;Base\Utiles\uDBSelectionListUtils.dcu;Base\Utiles\uDialogUtils.dcu;Base\Utiles\uGridUtils.dcu;Base\Utiles\uInfoProjectUtils.dcu;Base\Utiles\uIntegerListUtils.dcu;Base\Utiles\uNumUtils.dcu;Base\Utiles\uPasswordUtils.dcu;Base\Utiles\uSistemaFunc.dcu;Modulos\Contactos\Controller\uContactosController.dcu;Modulos\Contactos\Controller\uDireccionesContactoController.dcu;Modulos\Contactos\Controller\uEmpleadosController.dcu;Modulos\Contactos\Controller\uEtiquetasContactosReportController.dcu;Modulos\Contactos\Controller\uFichasEmpleadoReportController.dcu;Modulos\Contactos\Controller\View\uIEditorCliente.dcu;Modulos\Contactos\Controller\View\uIEditorClientes.dcu;Modulos\Contactos\Controller\View\uIEditorContacto.dcu;Modulos\Contactos\Controller\View\uIEditorContactos.dcu;Modulos\Contactos\Controller\View\uIEditorDireccionContacto.dcu;Modulos\Contactos\Controller\View\uIEditorElegirClientes.dcu;Modulos\Contactos\Controller\View\uIEditorElegirContactos.dcu;Modulos\Contactos\Controller\View\uIEditorElegirDireccionEntrega.dcu;Modulos\Contactos\Controller\View\uIEditorEmpleado.dcu;Modulos\Contactos\Controller\View\uIEditorEmpleados.dcu;Modulos\Contactos\Controller\View\uIEditorEtiquetasContactosPreview.dcu;Modulos\Contactos\Controller\View\uIEditorFichasEmpleadoPreview.dcu;Modulos\Contactos\Data\Contactos_data.dcu;Modulos\Contactos\Data\uDataModuleClientes.dcu;Modulos\Contactos\Data\uDataModuleContactos.dcu;Modulos\Contactos\Data\uDataModuleEmpleados.dcu;Modulos\Contactos\Data\uDataModuleProveedores.dcu;Modulos\Contactos\Model\Contactos_model.dcu;Modulos\Contactos\Model\Data\uIDataModuleClientes.dcu;Modulos\Contactos\Model\Data\uIDataModuleContactos.dcu;Modulos\Contactos\Model\Data\uIDataModuleEmpleados.dcu;Modulos\Contactos\Model\Data\uIDataModuleEtiquetasContactosReport.dcu;Modulos\Contactos\Model\Data\uIDataModuleFichasEmpleadoReport.dcu;Modulos\Contactos\Model\Data\uIDataModuleProveedores.dcu;Modulos\Contactos\Model\schContactosClient_Intf.dcu;Modulos\Contactos\Model\schContactosServer_Intf.dcu;Modulos\Contactos\Model\uBizCategoriasContacto.dcu;Modulos\Contactos\Model\uBizClientesDescuentos.dcu;Modulos\Contactos\Model\uBizContactos.dcu;Modulos\Contactos\Model\uBizContactosDatosBancarios.dcu;Modulos\Contactos\Model\uBizDireccionesContacto.dcu;Modulos\Contactos\Model\uBizGruposCliente.dcu;Modulos\Contactos\Model\uBizGruposEmpleado.dcu;Modulos\Contactos\Model\uBizGruposProveedor.dcu;Modulos\Contactos\Utiles\uRegimenIVAUtils.dcu;Modulos\Empresas\Controller\Empresas_controller.dcu;Modulos\Empresas\Controller\uDatosBancariosEmpresaController.dcu;Modulos\Empresas\Controller\uEmpresasController.dcu;Modulos\Empresas\Controller\View\uIEditorDatosBancarioEmpresa.dcu;Modulos\Empresas\Controller\View\uIEditorEmpresa.dcu;Modulos\Empresas\Controller\View\uIEditorEmpresas.dcu;Modulos\Empresas\Data\Empresas_data.dcu;Modulos\Empresas\Data\uDataModuleEmpresas.dcu;Modulos\Empresas\Model\Data\uIDataModuleEmpresas.dcu;Modulos\Empresas\Model\Empresas_model.dcu;Modulos\Empresas\Model\schEmpresasClient_Intf.dcu;Modulos\Empresas\Model\schEmpresasServer_Intf.dcu;Modulos\Empresas\Model\uBizEmpresas.dcu;Modulos\Empresas\Model\uBizEmpresasDatosBancarios.dcu;Modulos\Empresas\Plugin\Empresas_plugin.dcu;Modulos\Empresas\Plugin\uPluginEmpresas.dcu;Modulos\Empresas\Views\Empresas_view.dcu;Modulos\Empresas\Views\uEditorDatosBancariosEmpresa.dcu;Modulos\Empresas\Views\uEditorEmpresa.dcu;Modulos\Empresas\Views\uEmpresasViewRegister.dcu;Modulos\Empresas\Views\uViewDatosBancarios.dcu;Modulos\Empresas\Views\uViewEmpresa.dcu;Modulos\Formas de pago\Controller\FormasPago_controller.dcu;Modulos\Formas de pago\Controller\uFormasPagoController.dcu;Modulos\Formas de pago\Controller\uFormasPagoPlazosController.dcu;Modulos\Formas de pago\Controller\View\uIEditorFormaPago.dcu;Modulos\Formas de pago\Controller\View\uIEditorFormasPago.dcu;Modulos\Formas de pago\Data\FormasPago_data.dcu;Modulos\Formas de pago\Data\uDataModuleFormasPago.dcu;Modulos\Formas de pago\Model\Data\uIDataModuleFormasPago.dcu;Modulos\Formas de pago\Model\FormasPago_model.dcu;Modulos\Formas de pago\Model\schFormasPagoClient_Intf.dcu;Modulos\Formas de pago\Model\schFormasPagoServer_Intf.dcu;Modulos\Formas de pago\Model\uBizFormasPago.dcu;Modulos\Formas de pago\Model\uBizFormasPagoPlazos.dcu;Modulos\Formas de pago\Plugin\FormasPago_plugin.dcu;Modulos\Formas de pago\Plugin\uPluginFormasPago.dcu;Modulos\Formas de pago\Views\FormasPago_view.dcu;Modulos\Formas de pago\Views\uEditorFormaPago.dcu;Modulos\Formas de pago\Views\uEditorFormasPago.dcu;Modulos\Formas de pago\Views\uFormasPagoViewRegister.dcu;Modulos\Tipos de IVA\Controller\TiposIVA_controller.dcu;Modulos\Tipos de IVA\Controller\uTiposIVAController.dcu;Modulos\Tipos de IVA\Controller\View\uIEditorTipoIVA.dcu;Modulos\Tipos de IVA\Controller\View\uIEditorTiposIVA.dcu;Modulos\Tipos de IVA\Data\TiposIVA_data.dcu;Modulos\Tipos de IVA\Data\uDataModuleTiposIVA.dcu;Modulos\Tipos de IVA\Model\Data\uIDataModuleTiposIVA.dcu;Modulos\Tipos de IVA\Model\schTiposIVAClient_Intf.dcu;Modulos\Tipos de IVA\Model\schTiposIVAServer_Intf.dcu;Modulos\Tipos de IVA\Model\TiposIVA_model.dcu;Modulos\Tipos de IVA\Model\uBizTiposIVA.dcu;Modulos\Tipos de IVA\Plugin\TiposIVA_plugin.dcu;Modulos\Tipos de IVA\Plugin\uPluginTiposIVA.dcu;Modulos\Tipos de IVA\Views\TiposIVA_view.dcu;Modulos\Tipos de IVA\Views\uEditorTipoIVA.dcu;Modulos\Tipos de IVA\Views\uEditorTiposIVA.dcu;Modulos\Tipos de IVA\Views\uTiposIVAViewRegister.dcu;Servicios\FactuGES_Intf.dcu;Servidor\DARemoteService_Impl.dcu;Servidor\DataAbstract3_Intf.dcu;Servidor\DataAbstract4_Intf.dcu;Servidor\DataAbstract4_Invk.dcu;Servidor\DataAbstractService_Impl.dcu;Servidor\FactuGES_Intf.dcu;Servidor\FactuGES_Invk.dcu;Servidor\RegExpr.dcu;Servidor\schContactosClient_Intf.dcu;Servidor\schContactosServer_Intf.dcu;Servidor\schEmpresasClient_Intf.dcu;Servidor\schEmpresasServer_Intf.dcu;Servidor\schFamiliasClient_Intf.dcu;Servidor\schFamiliasServer_Intf.dcu;Servidor\schFormasPagoClient_Intf.dcu;Servidor\schFormasPagoServer_Intf.dcu;Servidor\schTiposIVAClient_Intf.dcu;Servidor\schTiposIVAServer_Intf.dcu;Servidor\srvConfiguracion_Impl.dcu;Servidor\srvContactos_Impl.dcu;Servidor\srvEmpresas_Impl.dcu;Servidor\srvFamilias_Impl.dcu;Servidor\srvFormasPago_Impl.dcu;Servidor\srvLogin_Impl.dcu;Servidor\srvTiposIVA_Impl.dcu;Servidor\uAcercaDe.dcu;Servidor\uBizClientesServer.dcu;Servidor\uBizContactosServer.dcu;Servidor\uBizEmpleadosServer.dcu;Servidor\uBizProveedoresServer.dcu;Servidor\uBusinessUtils.dcu;Servidor\uConexionBD.dcu;Servidor\uConfGeneral.dcu;Servidor\uConfiguracion.dcu;Servidor\uDAADODriver.dcu;Servidor\uDAADOInterfaces.dcu;Servidor\uDABin2DataStreamer.dcu;Servidor\uDABINAdapter.dcu;Servidor\uDABusinessProcessor.dcu;Servidor\uDACache.dcu;Servidor\uDAClasses.dcu;Servidor\uDADatasetWrapper.dcu;Servidor\uDADataStreamer.dcu;Servidor\uDADataTable.dcu;Servidor\uDADataTableReferenceCollection.dcu;Servidor\uDADelta.dcu;Servidor\uDADriverManager.dcu;Servidor\uDAEngine.dcu;Servidor\uDAExceptions.dcu;Servidor\uDAExpressionEvaluator.dcu;Servidor\uDAHelpers.dcu;Servidor\uDAIBInterfaces.dcu;Servidor\uDAIBXDriver.dcu;Servidor\uDAInterfaces.dcu;Servidor\uDAInterfacesEx.dcu;Servidor\uDAMacroProcessors.dcu;Servidor\uDAMacros.dcu;Servidor\uDAMemDataset.dcu;Servidor\uDAMemDataTable.dcu;Servidor\uDAOracleInterfaces.dcu;Servidor\uDAPostgresInterfaces.dcu;Servidor\uDARegExpr.dcu;Servidor\uDARes.dcu;Servidor\uDAScriptingProvider.dcu;Servidor\uDASQL92Interfaces.dcu;Servidor\uDASQL92QueryBuilder.dcu;Servidor\uDASupportClasses.dcu;Servidor\uDatabaseUtils.dcu;Servidor\uDataModuleServer.dcu;Servidor\uDAUtils.dcu;Servidor\uDAWhere.dcu;Servidor\uDAXMLUtils.dcu;Servidor\uFrameConfiguracion.dcu;Servidor\uReferenciasUtils.dcu;Servidor\uRestriccionesUsuarioUtils.dcu;Servidor\uROBinaryHelpers.dcu;Servidor\uROBinMessage.dcu;Servidor\uROCipher.dcu;Servidor\uroCipher1.dcu;Servidor\uROCiphers.dcu;Servidor\uROClasses.dcu;Servidor\uROClient.dcu;Servidor\uROClientIntf.dcu;Servidor\uROComInit.dcu;Servidor\uROCompression.dcu;Servidor\uRODECConst.dcu;Servidor\uRODECUtil.dcu;Servidor\uRODL.dcu;Servidor\uRODLToXML.dcu;Servidor\uRODynamicRequest.dcu;Servidor\uROEncryption.dcu;Servidor\uROEventRepository.dcu;Servidor\uROHash.dcu;Servidor\uROHtmlServerInfo.dcu;Servidor\uROHTTPDispatch.dcu;Servidor\uROHTTPTools.dcu;Servidor\uROIndyHTTPServer.dcu;Servidor\uROIndyTCPServer.dcu;Servidor\uROMSXML2_TLB.dcu;Servidor\uROMSXMLImpl.dcu;Servidor\uROPoweredByRemObjectsButton.dcu;Servidor\uRORemoteDataModule.dcu;Servidor\uRORemoteService.dcu;Servidor\uRORes.dcu;Servidor\uROSerializer.dcu;Servidor\uROServer.dcu;Servidor\uROServerIntf.dcu;Servidor\uROSessions.dcu;Servidor\uROStreamSerializer.dcu;Servidor\uROTypes.dcu;Servidor\uROXMLIntf.dcu;Servidor\uROZLib.dcu;Servidor\uSchemaUtilsServer.dcu;Servidor\uServerAppUtils.dcu;Servidor\uServerMainForm.dcu;Servidor\uSesionesUtils.dcu;Servidor\uUsersManager.dcu;Lib\Base.dcp;Lib\ControllerBase.dcp;Lib\GUIBase.dcp;Modulos\Lib\Contactos_data.dcp;Modulos\Lib\Contactos_model.dcp;Modulos\Lib\Empresas_controller.dcp;Modulos\Lib\Empresas_data.dcp;Modulos\Lib\Empresas_model.dcp;Modulos\Lib\Empresas_plugin.dcp;Modulos\Lib\Empresas_view.dcp;Modulos\Lib\FormasPago_controller.dcp;Modulos\Lib\FormasPago_data.dcp;Modulos\Lib\FormasPago_model.dcp;Modulos\Lib\FormasPago_plugin.dcp;Modulos\Lib\FormasPago_view.dcp;Modulos\Lib\TiposIVA_controller.dcp;Modulos\Lib\TiposIVA_data.dcp;Modulos\Lib\TiposIVA_model.dcp;Modulos\Lib\TiposIVA_plugin.dcp;Modulos\Lib\TiposIVA_view.dcp;Modulos\Lib\Usuarios.dcp + +Build succeeded. + 0 Warning(s) + 0 Error(s) + +Time Elapsed 00:00:00.04 +Program returned code : 0 + +[Crear directorios de salida] + +[List Iterator] +Setting items... +Found 8 Items + +[Create Directory [ C:\Codigo Tecsitel\Output\Debug\Database ]] +Created directory : C:\Codigo Tecsitel\Output\Debug\Database + +[List Iterator] + +[Create Directory [ C:\Codigo Tecsitel\Output\Debug\Cliente ]] +Created directory : C:\Codigo Tecsitel\Output\Debug\Cliente + +[List Iterator] + +[Create Directory [ C:\Codigo Tecsitel\Output\Debug\Servidor ]] +Created directory : C:\Codigo Tecsitel\Output\Debug\Servidor + +[List Iterator] + +[Create Directory [ C:\Codigo Tecsitel\Output\Debug\Servidor\Informes ]] +Created directory : C:\Codigo Tecsitel\Output\Debug\Servidor\Informes + +[List Iterator] + +[Create Directory [ C:\Codigo Tecsitel\Output\Release\Database ]] +Created directory : C:\Codigo Tecsitel\Output\Release\Database + +[List Iterator] + +[Create Directory [ C:\Codigo Tecsitel\Output\Release\Cliente ]] +Created directory : C:\Codigo Tecsitel\Output\Release\Cliente + +[List Iterator] + +[Create Directory [ C:\Codigo Tecsitel\Output\Release\Servidor ]] +Created directory : C:\Codigo Tecsitel\Output\Release\Servidor + +[List Iterator] + +[Create Directory [ C:\Codigo Tecsitel\Output\Release\Servidor\Informes ]] +Created directory : C:\Codigo Tecsitel\Output\Release\Servidor\Informes + +[List Iterator] + +[Reset Variable to Default] + +[Listar valores de las variables del proyecto] +Current variable values : +base_dcp_path = C:\Codigo Tecsitel\Source\Lib +library_3rdparty_path = C:\Archivos de programa\CodeGear\RAD Studio\5.0\Lib\Indy10;C:\Codigo Tecsitel\Lib;C:\Codigo Tecsitel\Lib\RemObjects\RemObjects_SDK;C:\Codigo Tecsitel\Lib\RemObjects\Data_Abstract;C:\Codigo Tecsitel\Lib\CCPack;C:\Codigo Tecsitel\Lib\CFPack;C:\Codigo Tecsitel\Lib\GUISDK;C:\Codigo Tecsitel\Lib\PluginSDK;C:\Codigo Tecsitel\Lib\DevExpressVCL;C:\Codigo Tecsitel\Lib\FastReport3;C:\Codigo Tecsitel\Lib\JCL;C:\Codigo Tecsitel\Lib\JVCL;C:\Codigo Tecsitel\Lib\PngComponents;C:\Codigo Tecsitel\Lib\cxIntl5;C:\Codigo Tecsitel\Lib\cxIntlPrintSys3;C:\Codigo Tecsitel\Lib\TB2k+TBX;C:\Codigo Tecsitel\Lib\Mustangpeak\MPCommonLib;C:\Codigo Tecsitel\Lib\Mustangpeak\EasyListview;C:\Codigo Tecsitel\Lib\JSDialog; +library_path = C:\Archivos de programa\CodeGear\RAD Studio\5.0\Lib;C:\Archivos de programa\CodeGear\RAD Studio\5.0\Imports;C:\Archivos de programa\CodeGear\RAD Studio\5.0\Lib\Indy10;C:\Codigo Tecsitel\Lib;C:\Codigo Tecsitel\Lib\RemObjects\RemObjects_SDK;C:\Codigo Tecsitel\Lib\RemObjects\Data_Abstract;C:\Codigo Tecsitel\Lib\CCPack;C:\Codigo Tecsitel\Lib\CFPack;C:\Codigo Tecsitel\Lib\GUISDK;C:\Codigo Tecsitel\Lib\PluginSDK;C:\Codigo Tecsitel\Lib\DevExpressVCL;C:\Codigo Tecsitel\Lib\FastReport3;C:\Codigo Tecsitel\Lib\JCL;C:\Codigo Tecsitel\Lib\JVCL;C:\Codigo Tecsitel\Lib\PngComponents;C:\Codigo Tecsitel\Lib\cxIntl5;C:\Codigo Tecsitel\Lib\cxIntlPrintSys3;C:\Codigo Tecsitel\Lib\TB2k+TBX;C:\Codigo Tecsitel\Lib\Mustangpeak\MPCommonLib;C:\Codigo Tecsitel\Lib\Mustangpeak\EasyListview;C:\Codigo Tecsitel\Lib\JSDialog;;C:\Codigo Tecsitel\Source\Lib +modules_dcp_path = C:\Codigo Tecsitel\Source\Modulos\Lib +output_path = C:\Codigo Tecsitel\Output\Debug +package_path = C:\Codigo Tecsitel\Output\Debug\Cliente +project_path = C:\Codigo Tecsitel +source_path = C:\Codigo Tecsitel\Source + +[Servidor] + +[Compile Servidor\FactuGES_Server.dpr] +Running Borland Resource compiler.... +Borland Resource Compiler Version 5.40 +Copyright (c) 1990, 1999 Inprise Corporation. All rights reserved. +Resource Compiled OK. +Running Delphi compiler.... +Using Command Line : /B "C:\Codigo Tecsitel\Source\Servidor\FactuGES_Server.dpr" /Q +CodeGear Delphi for Win32 compiler version 18.5 +Copyright (c) 1983,2007 CodeGear +C:\Codigo Tecsitel\Source\Modulos\Contactos\Model\uBizContactosServer.pas(34) Warning: W1006 Unit 'DARemoteService_Impl' is deprecated +Utiles\uBusinessUtils.pas(13) Warning: W1006 Unit 'DARemoteService_Impl' is deprecated +Utiles\uBusinessUtils.pas(20) Warning: W1000 Symbol 'TDARemoteService' is deprecated +Utiles\uBusinessUtils.pas(21) Warning: W1000 Symbol 'TDARemoteService' is deprecated +C:\Codigo Tecsitel\Source\Modulos\Contactos\Model\uBizEmpleadosServer.pas(23) Warning: W1006 Unit 'DARemoteService_Impl' is deprecated +C:\Codigo Tecsitel\Source\Modulos\Contactos\Model\uBizClientesServer.pas(23) Warning: W1006 Unit 'DARemoteService_Impl' is deprecated +C:\Codigo Tecsitel\Source\Modulos\Contactos\Model\uBizProveedoresServer.pas(23) Warning: W1006 Unit 'DARemoteService_Impl' is deprecated +C:\Codigo Tecsitel\Source\Modulos\Contactos\Servidor\srvContactos_Impl.pas(110) Warning: W1035 Return value of function 'TsrvContactos.GenerateEtiquetasReport' might be undefined +C:\Codigo Tecsitel\Source\Modulos\Contactos\Servidor\srvContactos_Impl.pas(124) Warning: W1035 Return value of function 'TsrvContactos.GenerateFichaEmpleadoReport' might be undefined +Utiles\uSchemaUtilsServer.pas(8) Warning: W1006 Unit 'DARemoteService_Impl' is deprecated +Utiles\uSchemaUtilsServer.pas(17) Warning: W1000 Symbol 'TDARemoteService' is deprecated +Utiles\uSchemaUtilsServer.pas(42) Hint: H2164 Variable 'APos' is declared but never used in 'TReplicarDataSet.GenerateNewSQL' +Utiles\uSchemaUtilsServer.pas(134) Hint: H2164 Variable 'AField' is declared but never used in 'TReplicarDataSet.GetNewDataSet' +26272 lines, 8.33 seconds, 3271728 bytes code, 202776 bytes data. + +[Base] + +[Compile Base\Base.dpk] +Running Borland Resource compiler.... +Borland Resource Compiler Version 5.40 +Copyright (c) 1990, 1999 Inprise Corporation. All rights reserved. +Resource Compiled OK. +Running Delphi compiler.... +Using Command Line : /B "C:\Codigo Tecsitel\Source\Base\Base.dpk" /Q +CodeGear Delphi for Win32 compiler version 18.5 +Copyright (c) 1983,2007 CodeGear +Utiles\uDataTableUtils.pas(205) Hint: H2077 Value assigned to 'CloneDataTable' never used +Utiles\uDataTableUtils.pas(413) Warning: W1000 Symbol 'TDABINAdapter' is deprecated +Utiles\uDataTableUtils.pas(449) Warning: W1000 Symbol 'TDABINAdapter' is deprecated +Utiles\uDataTableUtils.pas(531) Warning: W1036 Variable 'ADetailFields' might not have been initialized +uDataModuleConexion.pas(6) Warning: W1006 Unit 'uROServiceComponent' is deprecated +uDataModuleConexion.pas(17) Warning: W1000 Symbol 'TDABINAdapter' is deprecated +uConfigurarConexion.pas(8) Warning: W1006 Unit 'uROServiceComponent' is deprecated +uDataModuleConfiguracion.pas(6) Warning: W1006 Unit 'uROServiceComponent' is deprecated +uDataModuleConfiguracion.pas(17) Warning: W1000 Symbol 'TDABINAdapter' is deprecated +Utiles\uPasswordUtils.pas(40) Warning: W1012 Constant expression violates subrange bounds +ClassRegistry\uInformeRegistryUtils.pas(48) Hint: H2077 Value assigned to 'aOwner' never used +Base.dpk(87) Warning: W1033 Unit 'JSRichEdit' implicitly imported into package 'Base' +Base.dpk(87) Warning: W1033 Unit 'JSLabel' implicitly imported into package 'Base' +Base.dpk(87) Warning: W1033 Unit 'JSUrlLabel' implicitly imported into package 'Base' +Base.dpk(87) Warning: W1033 Unit 'JSProgressBar' implicitly imported into package 'Base' +Base.dpk(87) Warning: W1033 Unit 'JSCheckBox' implicitly imported into package 'Base' +Base.dpk(87) Warning: W1033 Unit 'JSButton' implicitly imported into package 'Base' +Base.dpk(87) Warning: W1033 Unit 'JSGraphUtil' implicitly imported into package 'Base' +Base.dpk(87) Warning: W1033 Unit 'JSDialogStrs' implicitly imported into package 'Base' +Base.dpk(87) Warning: W1033 Unit 'JSDialog' implicitly imported into package 'Base' +Base.dpk(87) Warning: W1033 Unit 'JSDialogs' implicitly imported into package 'Base' +5054 lines, 4.36 seconds, 132820 bytes code, 888 bytes data. + +[Compile Base\ControllerBase\ControllerBase.dpk] +Running Borland Resource compiler.... +Borland Resource Compiler Version 5.40 +Copyright (c) 1990, 1999 Inprise Corporation. All rights reserved. +Resource Compiled OK. +Running Delphi compiler.... +Using Command Line : /B "C:\Codigo Tecsitel\Source\Base\ControllerBase\ControllerBase.dpk" /Q +CodeGear Delphi for Win32 compiler version 18.5 +Copyright (c) 1983,2007 CodeGear +uControllerDetallesBase.pas(301) Warning: W1036 Variable 'DeletePosicion' might not have been initialized +uControllerDetallesDTO.pas(20) Hint: H2365 Override method TControllerDetallesDTO.ValidarCampos should match case of ancestor TControllerDetallesBase.validarCampos +uControllerDetallesDTO.pas(37) Hint: H2077 Value assigned to 'ImporteTotal' never used +810 lines, 0.27 seconds, 16484 bytes code, 76 bytes data. + +[Compile Base\GUIBase\GUIBase.dpk] +Running Borland Resource compiler.... +Borland Resource Compiler Version 5.40 +Copyright (c) 1990, 1999 Inprise Corporation. All rights reserved. +Resource Compiled OK. +Running Delphi compiler.... +Using Command Line : /B "C:\Codigo Tecsitel\Source\Base\GUIBase\GUIBase.dpk" /Q +CodeGear Delphi for Win32 compiler version 18.5 +Copyright (c) 1983,2007 CodeGear +uEditorBase.pas(141) Warning: W1010 Method 'ShowModal' hides virtual method of base type 'TCustomForm' +uViewGridBase.pas(98) Warning: W1010 Method 'GetPopupMenu' hides virtual method of base type 'TControl' +uViewGridBase.pas(267) Warning: W1035 Return value of function 'TfrViewGridBase.Locate' might be undefined +uEditorPreview.pas(81) Warning: W1010 Method 'FormShow' hides virtual method of base type 'TfEditorBase' +uViewDetallesBase.pas(487) Hint: H2077 Value assigned to 'TfrViewDetallesBase.darPosicionCAMPO' never used +uViewDetallesBase.pas(150) Hint: H2219 Private symbol 'OnSelectChange' declared but never used +4022 lines, 3.59 seconds, 72032 bytes code, 164 bytes data. + +[Módulos] + +[General] + +[Empresas] + +[Compile Modulos\Empresas\Model\Empresas_model.dpk] +Running Borland Resource compiler.... +Borland Resource Compiler Version 5.40 +Copyright (c) 1990, 1999 Inprise Corporation. All rights reserved. +Resource Compiled OK. +Running Delphi compiler.... +Using Command Line : /B "C:\Codigo Tecsitel\Source\Modulos\Empresas\Model\Empresas_model.dpk" /Q +CodeGear Delphi for Win32 compiler version 18.5 +Copyright (c) 1983,2007 CodeGear +2955 lines, 0.73 seconds, 52996 bytes code, 84 bytes data. + +[Compile Modulos\Empresas\Data\Empresas_data.dpk] +Running Borland Resource compiler.... +Borland Resource Compiler Version 5.40 +Copyright (c) 1990, 1999 Inprise Corporation. All rights reserved. +Resource Compiled OK. +Running Delphi compiler.... +Using Command Line : /B "C:\Codigo Tecsitel\Source\Modulos\Empresas\Data\Empresas_data.dpk" /Q +CodeGear Delphi for Win32 compiler version 18.5 +Copyright (c) 1983,2007 CodeGear +uDataModuleEmpresas.pas(6) Warning: W1006 Unit 'uDAClientDataModule' is deprecated +uDataModuleEmpresas.pas(7) Warning: W1006 Unit 'uROServiceComponent' is deprecated +uDataModuleEmpresas.pas(14) Warning: W1000 Symbol 'TDAClientDataModule' is deprecated +151 lines, 0.77 seconds, 8060 bytes code, 72 bytes data. + +[Compile Modulos\Empresas\Controller\Empresas_controller.dpk] +Running Borland Resource compiler.... +Borland Resource Compiler Version 5.40 +Copyright (c) 1990, 1999 Inprise Corporation. All rights reserved. +Resource Compiled OK. +Running Delphi compiler.... +Using Command Line : /B "C:\Codigo Tecsitel\Source\Modulos\Empresas\Controller\Empresas_controller.dpk" /Q +CodeGear Delphi for Win32 compiler version 18.5 +Copyright (c) 1983,2007 CodeGear +uEmpresasController.pas(102) Hint: H2077 Value assigned to 'TEmpresasController.Eliminar' never used +uEmpresasController.pas(184) Hint: H2077 Value assigned to 'TEmpresasController.ValidarEmpresa' never used +442 lines, 1.09 seconds, 13056 bytes code, 84 bytes data. + +[Compile Base\Usuarios\Usuarios.dpk] +Running Borland Resource compiler.... +Borland Resource Compiler Version 5.40 +Copyright (c) 1990, 1999 Inprise Corporation. All rights reserved. +Resource Compiled OK. +Running Delphi compiler.... +Using Command Line : /B "C:\Codigo Tecsitel\Source\Base\Usuarios\Usuarios.dpk" /Q +CodeGear Delphi for Win32 compiler version 18.5 +Copyright (c) 1983,2007 CodeGear +uDataModuleUsuarios.pas(6) Warning: W1006 Unit 'uDAClientDataModule' is deprecated +uDataModuleUsuarios.pas(7) Warning: W1006 Unit 'uROServiceComponent' is deprecated +uDataModuleUsuarios.pas(15) Warning: W1000 Symbol 'TDAClientDataModule' is deprecated +uDataModuleUsuarios.pas(17) Warning: W1000 Symbol 'TDABINAdapter' is deprecated +534 lines, 0.86 seconds, 14828 bytes code, 116 bytes data. + +[Compile Modulos\Empresas\Views\Empresas_view.dpk] +Running Borland Resource compiler.... +Borland Resource Compiler Version 5.40 +Copyright (c) 1990, 1999 Inprise Corporation. All rights reserved. +Resource Compiled OK. +Running Delphi compiler.... +Using Command Line : /B "C:\Codigo Tecsitel\Source\Modulos\Empresas\Views\Empresas_view.dpk" /Q +CodeGear Delphi for Win32 compiler version 18.5 +Copyright (c) 1983,2007 CodeGear +uEditorEmpresa.pas(24) Warning: W1010 Method 'FormShow' hides virtual method of base type 'TfEditorBase' +608 lines, 0.97 seconds, 17276 bytes code, 88 bytes data. + +[Compile Modulos\Empresas\Plugin\Empresas_plugin.dpk] +Running Borland Resource compiler.... +Borland Resource Compiler Version 5.40 +Copyright (c) 1990, 1999 Inprise Corporation. All rights reserved. +Resource Compiled OK. +Running Delphi compiler.... +Using Command Line : /B "C:\Codigo Tecsitel\Source\Modulos\Empresas\Plugin\Empresas_plugin.dpk" /Q +CodeGear Delphi for Win32 compiler version 18.5 +Copyright (c) 1983,2007 CodeGear +186 lines, 0.92 seconds, 10028 bytes code, 72 bytes data. + +[Formas de pago] + +[Compile Modulos\Formas de pago\Model\FormasPago_model.dpk] +Running Borland Resource compiler.... +Borland Resource Compiler Version 5.40 +Copyright (c) 1990, 1999 Inprise Corporation. All rights reserved. +Resource Compiled OK. +Running Delphi compiler.... +Using Command Line : /B "C:\Codigo Tecsitel\Source\Modulos\Formas de pago\Model\FormasPago_model.dpk" /Q +CodeGear Delphi for Win32 compiler version 18.5 +Copyright (c) 1983,2007 CodeGear +1368 lines, 0.48 seconds, 27436 bytes code, 84 bytes data. + +[Compile Modulos\Formas de pago\Data\FormasPago_data.dpk] +Running Borland Resource compiler.... +Borland Resource Compiler Version 5.40 +Copyright (c) 1990, 1999 Inprise Corporation. All rights reserved. +Resource Compiled OK. +Running Delphi compiler.... +Using Command Line : /B "C:\Codigo Tecsitel\Source\Modulos\Formas de pago\Data\FormasPago_data.dpk" /Q +CodeGear Delphi for Win32 compiler version 18.5 +Copyright (c) 1983,2007 CodeGear +uDataModuleFormasPago.pas(6) Warning: W1006 Unit 'uDAClientDataModule' is deprecated +uDataModuleFormasPago.pas(8) Warning: W1006 Unit 'uROServiceComponent' is deprecated +uDataModuleFormasPago.pas(15) Warning: W1000 Symbol 'TDAClientDataModule' is deprecated +129 lines, 0.53 seconds, 7728 bytes code, 72 bytes data. + +[Compile Modulos\Formas de pago\Controller\FormasPago_controller.dpk] +Running Borland Resource compiler.... +Borland Resource Compiler Version 5.40 +Copyright (c) 1990, 1999 Inprise Corporation. All rights reserved. +Resource Compiled OK. +Running Delphi compiler.... +Using Command Line : /B "C:\Codigo Tecsitel\Source\Modulos\Formas de pago\Controller\FormasPago_controller.dpk" /Q +CodeGear Delphi for Win32 compiler version 18.5 +Copyright (c) 1983,2007 CodeGear +uFormasPagoController.pas(81) Warning: W1000 Symbol 'OpenBraket' is deprecated +uFormasPagoController.pas(83) Warning: W1000 Symbol 'CloseBraket' is deprecated +uFormasPagoController.pas(153) Hint: H2077 Value assigned to 'TFormasPagoController.ValidarFormaPago' never used +uFormasPagoController.pas(218) Hint: H2077 Value assigned to 'TFormasPagoController.Eliminar' never used +426 lines, 0.58 seconds, 11632 bytes code, 84 bytes data. + +[Compile Modulos\Formas de pago\Views\FormasPago_view.dpk] +Running Borland Resource compiler.... +Borland Resource Compiler Version 5.40 +Copyright (c) 1990, 1999 Inprise Corporation. All rights reserved. +Resource Compiled OK. +Running Delphi compiler.... +Using Command Line : /B "C:\Codigo Tecsitel\Source\Modulos\Formas de pago\Views\FormasPago_view.dpk" /Q +CodeGear Delphi for Win32 compiler version 18.5 +Copyright (c) 1983,2007 CodeGear +447 lines, 0.67 seconds, 13528 bytes code, 80 bytes data. + +[Compile Modulos\Formas de pago\Plugin\FormasPago_plugin.dpk] +Running Borland Resource compiler.... +Borland Resource Compiler Version 5.40 +Copyright (c) 1990, 1999 Inprise Corporation. All rights reserved. +Resource Compiled OK. +Running Delphi compiler.... +Using Command Line : /B "C:\Codigo Tecsitel\Source\Modulos\Formas de pago\Plugin\FormasPago_plugin.dpk" /Q +CodeGear Delphi for Win32 compiler version 18.5 +Copyright (c) 1983,2007 CodeGear +120 lines, 0.64 seconds, 8620 bytes code, 68 bytes data. + +[Tipos de IVA] + +[Compile Modulos\Tipos de IVA\Model\TiposIVA_model.dpk] +Running Borland Resource compiler.... +Borland Resource Compiler Version 5.40 +Copyright (c) 1990, 1999 Inprise Corporation. All rights reserved. +Resource Compiled OK. +Running Delphi compiler.... +Using Command Line : /B "C:\Codigo Tecsitel\Source\Modulos\Tipos de IVA\Model\TiposIVA_model.dpk" /Q +CodeGear Delphi for Win32 compiler version 18.5 +Copyright (c) 1983,2007 CodeGear +735 lines, 0.41 seconds, 15224 bytes code, 80 bytes data. + +[Compile Modulos\Tipos de IVA\Data\TiposIVA_data.dpk] +Running Borland Resource compiler.... +Borland Resource Compiler Version 5.40 +Copyright (c) 1990, 1999 Inprise Corporation. All rights reserved. +Resource Compiled OK. +Running Delphi compiler.... +Using Command Line : /B "C:\Codigo Tecsitel\Source\Modulos\Tipos de IVA\Data\TiposIVA_data.dpk" /Q +CodeGear Delphi for Win32 compiler version 18.5 +Copyright (c) 1983,2007 CodeGear +uDataModuleTiposIVA.pas(29) Warning: W1006 Unit 'uDAClientDataModule' is deprecated +uDataModuleTiposIVA.pas(31) Warning: W1006 Unit 'uROServiceComponent' is deprecated +uDataModuleTiposIVA.pas(38) Warning: W1000 Symbol 'TDAClientDataModule' is deprecated +146 lines, 0.53 seconds, 7696 bytes code, 72 bytes data. + +[Compile Modulos\Tipos de IVA\Controller\TiposIVA_controller.dpk] +Running Borland Resource compiler.... +Borland Resource Compiler Version 5.40 +Copyright (c) 1990, 1999 Inprise Corporation. All rights reserved. +Resource Compiled OK. +Running Delphi compiler.... +Using Command Line : /B "C:\Codigo Tecsitel\Source\Modulos\Tipos de IVA\Controller\TiposIVA_controller.dpk" /Q +CodeGear Delphi for Win32 compiler version 18.5 +Copyright (c) 1983,2007 CodeGear +uTiposIVAController.pas(192) Hint: H2077 Value assigned to 'TTiposIVAController.ValidarTipoIVA' never used +uTiposIVAController.pas(257) Hint: H2077 Value assigned to 'TTiposIVAController.Eliminar' never used +457 lines, 0.58 seconds, 11072 bytes code, 76 bytes data. + +[Compile Modulos\Tipos de IVA\Views\TiposIVA_view.dpk] +Running Borland Resource compiler.... +Borland Resource Compiler Version 5.40 +Copyright (c) 1990, 1999 Inprise Corporation. All rights reserved. +Resource Compiled OK. +Running Delphi compiler.... +Using Command Line : /B "C:\Codigo Tecsitel\Source\Modulos\Tipos de IVA\Views\TiposIVA_view.dpk" /Q +CodeGear Delphi for Win32 compiler version 18.5 +Copyright (c) 1983,2007 CodeGear +423 lines, 0.67 seconds, 12252 bytes code, 80 bytes data. + +[Compile Modulos\Tipos de IVA\Plugin\TiposIVA_plugin.dpk] +Running Borland Resource compiler.... +Borland Resource Compiler Version 5.40 +Copyright (c) 1990, 1999 Inprise Corporation. All rights reserved. +Resource Compiled OK. +Running Delphi compiler.... +Using Command Line : /B "C:\Codigo Tecsitel\Source\Modulos\Tipos de IVA\Plugin\TiposIVA_plugin.dpk" /Q +CodeGear Delphi for Win32 compiler version 18.5 +Copyright (c) 1983,2007 CodeGear +116 lines, 0.61 seconds, 8420 bytes code, 68 bytes data. + +[Contactos] + +[Compile Modulos\Contactos\Model\Contactos_model.dpk] +Running Borland Resource compiler.... +Borland Resource Compiler Version 5.40 +Copyright (c) 1990, 1999 Inprise Corporation. All rights reserved. +Resource Compiled OK. +Running Delphi compiler.... +Using Command Line : /B "C:\Codigo Tecsitel\Source\Modulos\Contactos\Model\Contactos_model.dpk" /Q +CodeGear Delphi for Win32 compiler version 18.5 +Copyright (c) 1983,2007 CodeGear +14343 lines, 0.97 seconds, 243688 bytes code, 136 bytes data. + +[Compile Modulos\Contactos\Data\Contactos_data.dpk] +Running Borland Resource compiler.... +Borland Resource Compiler Version 5.40 +Copyright (c) 1990, 1999 Inprise Corporation. All rights reserved. +Resource Compiled OK. +Running Delphi compiler.... +Using Command Line : /B "C:\Codigo Tecsitel\Source\Modulos\Contactos\Data\Contactos_data.dpk" /Q +CodeGear Delphi for Win32 compiler version 18.5 +Copyright (c) 1983,2007 CodeGear +uDataModuleContactos.pas(7) Warning: W1006 Unit 'uDAClientDataModule' is deprecated +uDataModuleContactos.pas(9) Warning: W1006 Unit 'uROServiceComponent' is deprecated +uDataModuleContactos.pas(17) Warning: W1000 Symbol 'TDAClientDataModule' is deprecated +uDataModuleClientes.pas(8) Warning: W1006 Unit 'uROServiceComponent' is deprecated +uDataModuleProveedores.pas(8) Warning: W1006 Unit 'uROServiceComponent' is deprecated +uDataModuleProveedores.pas(61) Warning: W1000 Symbol 'OpenBraket' is deprecated +uDataModuleProveedores.pas(63) Warning: W1000 Symbol 'CloseBraket' is deprecated +uDataModuleEmpleados.pas(8) Warning: W1006 Unit 'uROServiceComponent' is deprecated +552 lines, 0.89 seconds, 14988 bytes code, 84 bytes data. + +[Compile Modulos\Contactos\Controller\Contactos_controller.dpk] +Running Borland Resource compiler.... +Borland Resource Compiler Version 5.40 +Copyright (c) 1990, 1999 Inprise Corporation. All rights reserved. +Resource Compiled OK. +Running Delphi compiler.... +Using Command Line : /B "C:\Codigo Tecsitel\Source\Modulos\Contactos\Controller\Contactos_controller.dpk" /Q +CodeGear Delphi for Win32 compiler version 18.5 +Copyright (c) 1983,2007 CodeGear +uContactosController.pas(190) Hint: H2164 Variable 'NuevoID' is declared but never used in 'TContactosController.Guardar' +uContactosController.pas(227) Hint: H2077 Value assigned to 'TContactosController.ValidarContacto' never used +uEmpleadosController.pas(76) Hint: H2077 Value assigned to 'TEmpleadosController.Eliminar' never used +uEmpleadosController.pas(114) Warning: W1036 Variable 'bEliminado' might not have been initialized +uEmpleadosController.pas(177) Warning: W1036 Variable 'ID_Fichas' might not have been initialized +uEmpleadosController.pas(212) Warning: W1036 Variable 'ID_Fichas' might not have been initialized +uClientesController.pas(150) Hint: H2077 Value assigned to 'TClientesController.Eliminar' never used +uClientesController.pas(188) Warning: W1036 Variable 'bEliminado' might not have been initialized +uClientesController.pas(251) Warning: W1036 Variable 'ListaID' might not have been initialized +uClientesController.pas(286) Warning: W1036 Variable 'ListaID' might not have been initialized +uClientesController.pas(293) Hint: H2077 Value assigned to 'TClientesController.TieneDatosBancarios' never used +uClientesController.pas(360) Error: E2250 There is no overloaded version of 'CopyDataTable' that can be called with these arguments +Contactos_controller.dpk(64) Fatal: F2063 Could not compile used unit 'uClientesController.pas' + +[End ActionList: Main] + +Build Failed! + + +Exit with return code: 1 (BUILDFAILED) + diff --git a/Build/BuildDavid.fbl5 b/Build/BuildDavid.fbl5 deleted file mode 100644 index 63974e9b..00000000 Binary files a/Build/BuildDavid.fbl5 and /dev/null differ diff --git a/Build/BuildDavid.fbv b/Build/BuildDavid.fbv deleted file mode 100644 index 50194e95..00000000 --- a/Build/BuildDavid.fbv +++ /dev/null @@ -1 +0,0 @@ - diff --git a/Build/BuildRoberto.fbl5 b/Build/BuildRoberto.fbl5 deleted file mode 100644 index f37e9f60..00000000 Binary files a/Build/BuildRoberto.fbl5 and /dev/null differ diff --git a/Build/BuildRoberto.fbp5 b/Build/BuildRoberto.fbp5 deleted file mode 100644 index ee85c6ab..00000000 --- a/Build/BuildRoberto.fbp5 +++ /dev/null @@ -1,20551 +0,0 @@ - - - - - - base.fbz5 - - - 0 - - - - False - True - Main - {4C1B4E5D-F42F-4877-9F28-41B527858954} - - FinalBuilderAction - 0 - - True - True - False - True - False - - 0 - False - 0 - 1000 - False - - # - 16711680 - - # - False - True - False - True - False - - 0 - False - 0 - 1000 - False - - - - - 16711680 - - - - False - True - False - True - False - - 0 - False - 0 - 1000 - False - - - # - 16711680 - - # - False - True - False - True - False - - 0 - False - 0 - 1000 - False - - - - - 16711680 - - - - False - True - False - True - False - - 0 - False - 0 - 1000 - False - - - - - 0 - - False - cd - False - True - False - False - True - - - True - False - - False - - True - False - False - project_path - 0 - False - cd - 0 - 0 - tpNormal - True - 1000 - rcEqualTo - 0 - ..\ - False - True - 1 - True - - - # - 16711680 - - # - False - True - False - True - False - - 0 - False - 0 - 1000 - False - - - - - 16711680 - - - - False - True - False - True - False - - 0 - False - 0 - 1000 - False - - - - - 0 - - True - True - True - False - True - False - False - - 0 - False - 0 - 1000 - False - - - - - # - 16711680 - - # - False - True - False - True - False - - 0 - False - 0 - 1000 - False - - - - - 16711680 - - - - False - True - False - True - False - - 0 - False - 0 - 1000 - False - - - # - 16711680 - - # - False - True - False - True - False - - 0 - False - 0 - 1000 - False - - - - - 0 - - - - True - True - False - True - False - - 0 - False - 0 - 1000 - False - - - - 0 - - True - - - False - True - False - False - True - - - True - False - - False - - True - False - True - - 0 - False - - - 0 - 0 - tpNormal - True - 1000 - rcEqualTo - 0 - %source_path% - False - True - 1 - True - - - - - 0 - - %source_path%\ClearFiles.msbuild - True - False - True - - - False - - False - - True - False - llDetailed - - 0 - 1.2 - False - False - False - True - 0 - 0 - tpNormal - - - False - 1000 - v2.0 - False - CleanFiles - True - 2 - - - - # - 16711680 - - # - False - True - False - True - False - - 0 - False - 0 - 1000 - False - - - # - 16711680 - - # - False - True - False - True - False - - 0 - False - 0 - 1000 - False - - - - - 0 - - - - True - True - search_path - False - True - False - - 0 - False - 0 - SOFTWARE\Borland\BDS\4.0\Library - -2147483647 - rtString - - - 1000 - False - - - - - 16711680 - - - - False - True - False - True - False - - 0 - False - 0 - 1000 - False - - - Servidor - 0 - - Servidor - True - True - False - True - False - - 0 - False - 0 - 1000 - False - - - - 0 - - True - False - False - True - True - 0 - 1252 - 11 - Release - False - - - True - True - - False - %source_path%\Iconos\Servidor.ico - False - True - True - True - False - False - False - False - False - False - False - True - 3081 - - 2 - 0 - 0 - False - 0 - %source_path%\Servidor\FactuGES_Server.dpr - True - 6 - - - rcBorland - 1000 - %source_path%\Servidor\ - False - True - False - False - [usPackages,usVersionInfo] - False - True - - - - False - False - False - True - False - True - False - False - - - - - False - - True - - True - - False - True - False - False - True - 4194304 - False - False - False - True - %library_path% - 0 - True - 3 - 1048576 - 16384 - - True - True - %output_path%\Servidor - False - rtl;vclx;vcl;dbrtl;vcldb;dbxcds;dbexpress;vclib;ibxpress;indy;dclofficexp;vclsmp;dsnap;bdertl;teeui;teedb;tee;vcldbx;vclactnband;dxbarextitemsd10;dxcomnd10;dxbard10;cxlibraryd10;cxeditorsd10;dxthemed10;cxdatad10;cxexteditorsd10;cxgridd10;cxpagecontrold10;cxschedulerd10;cxtreelistd10;cxverticalgridd10;dxbardbnavd10;dxbarextdbitemsd10;tbx_d10;tb2k_d10;ccpack10;ccpack10dsg;cxexportd10;cxintl5d10;adortl;dataabstract_core_d10;dataabstract_dbxdriver_d10;dataabstract_scripting_d10;dxdockingd10;dxlayoutcontrold10;dxnavbard10;dxpscored10;dxsbd10;fqb100;dxlayoutcontrolcxeditadaptersd10;dxpscxcommond10;dxpslnksd10;vclshlctrls;dxpscxextcommond10;dxpscxgridlnkd10;dxpscxpcprodd10;dxpscxscheduler2lnkd10;dxpscxtllnkd10;dxpsdbteechartd10;dxpsteechartd10;dxpsdxlclnkd10;dxpsprvwadvd10;guisdk_d10;jvappfrmd10r;jvcored10r;jcl;jclvcl;jvsystemd10r;jvstdctrlsd10r;jvbandsd10r;jvdbd10r;jvdlgsd10r;jvbded10r;jvcmpd10r;jvcryptd10r;jvctrlsd10r;jvcustomd10r;jvdockingd10r;jvdotnetctrlsd10r;jvedid10r;jvglobusd10r;jvhmid10r;jvinterpreterd10r;jvjansd10r;jvmanagedthreadsd10r;jvmmd10r;jvnetd10r;jvpagecompsd10r;jvplugind10r;jvprintpreviewd10r;jvruntimedesignd10r;jvtimeframeworkd10r;jvuibd10r;jvvalidatorsd10r;jvwizardd10r;jvxpctrlsd10r;pluginsdk_d10r;png_d10;pngcomponentsd10;inet;remobjects_webbroker_d10;remobjects_rodx_d10;remobjects_bpdx_d10;remobjects_indy_d10;pascalscript_ro_d10;indyprotocols;indycore;indysystem;dataabstract_ide_d10;fstee10;fs10;frx10;frxado10;frxbde10;frxdb10;frxdbx10;frxe10;frxibx10;frxtee10;fsado10;fsbde10;fsdb10;fsibx10 - False - fa8 - True - False - ..\DataAbstract_D10\Lib - True - True - False - False - WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; - - False - False - True - - - - - # - 16711680 - - # - False - True - False - True - False - - 0 - False - 0 - 1000 - False - - - - - 16711680 - - - - False - True - False - True - False - - 0 - False - 0 - 1000 - False - - - # - 16711680 - - # - False - True - False - True - False - - 0 - False - 0 - 1000 - False - - - Base - 255 - - Base - True - True - False - True - False - - 0 - False - 0 - 1000 - False - - - - 0 - - True - False - False - True - True - 0 - 1252 - 11 - Release - False - - - True - True - - False - - False - False - False - True - False - False - False - False - False - False - False - False - 3081 - - 0 - 0 - 0 - False - 0 - %source_path%\DataAbstract_D10\DataAbstract_D10.dpk - True - 0 - - - rcBorland - 1000 - - False - False - False - False - [] - False - False - - - - False - False - False - True - True - True - False - False - %package_path% - - - - False - %base_dcp_path% - True - - True - - False - True - False - False - True - 4194304 - False - False - False - True - %library_path% - 0 - True - 0 - 1048576 - 16384 - - True - True - - False - 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 - False - fa8 - True - False - %search_path% - True - True - False - False - WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; - - False - False - True - - - - - - 0 - - True - False - False - True - True - 0 - 1252 - 11 - Release - False - - - True - True - - False - - False - False - False - True - False - False - False - False - False - False - False - False - 3081 - - 0 - 0 - 0 - False - 0 - %source_path%\Base\Base.dpk - True - 0 - - - rcBorland - 1000 - - False - False - False - False - [] - False - False - - - - False - False - False - True - True - True - False - False - %package_path% - - - - False - %base_dcp_path% - True - - True - - False - True - False - False - True - 4194304 - False - False - False - True - %library_path% - 0 - True - 0 - 1048576 - 16384 - - True - True - - False - - False - fa8 - True - False - %search_path% - True - True - False - False - WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; - - False - False - True - - - - - - 0 - - True - False - False - True - True - 0 - 1252 - 11 - Release - False - - - True - True - - False - - False - False - False - True - False - False - False - False - False - False - False - False - 3081 - - 0 - 0 - 0 - False - 0 - %source_path%\Base\ControllerBase\ControllerBase.dpk - True - 0 - - - rcBorland - 1000 - - False - False - False - False - [] - False - False - - - - False - False - False - True - True - True - False - False - %package_path% - - - - False - %base_dcp_path% - True - - True - - False - True - False - False - True - 4194304 - False - False - False - True - %library_path% - 0 - True - 0 - 1048576 - 16384 - - True - True - %output_path% - False - - False - fa8 - True - False - %search_path% - True - True - False - False - WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; - - False - False - True - - - - - - 0 - - True - False - False - True - True - 0 - 1252 - 11 - Release - False - - - True - True - - False - - False - False - False - True - False - False - False - False - False - False - False - False - 3081 - - 0 - 0 - 0 - False - 0 - %source_path%\Base\GUIBase\GUIBase.dpk - True - 0 - - - rcBorland - 1000 - - False - False - False - False - [] - False - False - - - - False - False - False - True - True - True - False - False - %package_path% - - - - False - %base_dcp_path% - True - - True - - False - True - False - False - True - 4194304 - False - False - False - True - %library_path% - 0 - True - 0 - 1048576 - 16384 - - True - True - %output_path% - False - - False - fa8 - True - False - %search_path% - True - True - False - False - WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; - - False - False - True - - - - - Módulos - 0 - - Módulos - True - True - False - True - False - - 0 - False - 0 - 1000 - False - - General - 0 - - General - True - True - False - True - False - - 0 - True - 0 - 1000 - False - - Empresas - 0 - - Empresas - True - True - False - True - False - - 0 - False - 0 - 1000 - False - - - - 0 - - True - False - False - True - True - 0 - 1252 - 11 - Release - False - - - True - True - - False - - False - False - False - True - False - False - False - False - False - False - False - False - 3081 - - 0 - 0 - 0 - False - 0 - %source_path%\Modulos\Empresas\Model\Empresas_model.dpk - True - 0 - - - rcBorland - 1000 - - False - False - False - False - [] - False - False - - - - False - False - False - True - True - True - False - False - %package_path% - - - - False - %modules_dcp_path% - True - - True - - False - True - False - False - True - 4194304 - False - False - False - True - %library_path% - 0 - True - 0 - 1048576 - 16384 - - True - True - %output_path% - False - - False - fa8 - True - False - %search_path% - True - True - False - False - WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; - - False - False - True - - - - - - 0 - - True - False - False - True - True - 0 - 1252 - 11 - Release - False - - - True - True - - False - - False - False - False - True - False - False - False - False - False - False - False - False - 3081 - - 0 - 0 - 0 - False - 0 - %source_path%\Modulos\Empresas\Data\Empresas_data.dpk - True - 0 - - - rcBorland - 1000 - - False - False - False - False - [] - False - False - - - - False - False - False - True - True - True - False - False - %package_path% - - - - False - %modules_dcp_path% - True - - True - - False - True - False - False - True - 4194304 - False - False - False - True - %library_path% - 0 - True - 0 - 1048576 - 16384 - - True - True - %output_path% - False - - False - fa8 - True - False - %search_path% - True - True - False - False - WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; - - False - False - True - - - - - - 0 - - True - False - False - True - True - 0 - 1252 - 11 - Release - False - - - True - True - - False - - False - False - False - True - False - False - False - False - False - False - False - False - 3081 - - 0 - 0 - 0 - False - 0 - %source_path%\Modulos\Empresas\Controller\Empresas_controller.dpk - True - 0 - - - rcBorland - 1000 - - False - False - False - False - [] - False - False - - - - False - False - False - True - True - True - False - False - %package_path% - - - - False - %modules_dcp_path% - True - - True - - False - True - False - False - True - 4194304 - False - False - False - True - %library_path% - 0 - True - 0 - 1048576 - 16384 - - True - True - %output_path% - False - - False - fa8 - True - False - %search_path% - True - True - False - False - WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; - - False - False - True - - - - - - 0 - - True - False - False - True - True - 0 - 1252 - 11 - Release - False - - - True - True - - False - - False - False - False - True - False - False - False - False - False - False - False - False - 3081 - - 0 - 0 - 0 - False - 0 - %source_path%\Base\Usuarios\Usuarios.dpk - True - 0 - - - rcBorland - 1000 - - False - False - False - False - [] - False - False - - - - False - False - False - True - True - True - False - False - %package_path% - - - - False - %modules_dcp_path% - True - - True - - False - True - False - False - True - 4194304 - False - False - False - True - %library_path% - 0 - True - 0 - 1048576 - 16384 - - True - True - %output_path% - False - - False - fa8 - True - False - %search_path% - True - True - False - False - WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; - - False - False - True - - - - - - 0 - - True - False - False - True - True - 0 - 1252 - 11 - Release - False - - - True - True - - False - - False - False - False - True - False - False - False - False - False - False - False - False - 3081 - - 0 - 0 - 0 - False - 0 - %source_path%\Modulos\Empresas\Views\Empresas_view.dpk - True - 0 - - - rcBorland - 1000 - - False - False - False - False - [] - False - False - - - - False - False - False - True - True - True - False - False - %package_path% - - - - False - %modules_dcp_path% - True - - True - - False - True - False - False - True - 4194304 - False - False - False - True - %library_path% - 0 - True - 0 - 1048576 - 16384 - - True - True - %output_path% - False - - False - fa8 - True - False - %search_path% - True - True - False - False - WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; - - False - False - True - - - - - - 0 - - True - False - False - True - True - 0 - 1252 - 11 - Release - False - - - True - True - - False - - False - False - False - True - False - False - False - False - False - False - False - False - 3081 - - 0 - 0 - 0 - False - 0 - %source_path%\Modulos\Empresas\Plugin\Empresas_plugin.dpk - True - 0 - - - rcBorland - 1000 - - False - False - False - False - [] - False - False - - - - False - False - False - True - True - True - False - False - %package_path% - - - - False - %modules_dcp_path% - True - - True - - False - True - False - False - True - 4194304 - False - False - False - True - %library_path% - 0 - True - 0 - 1048576 - 16384 - - True - True - %output_path% - False - - False - fa8 - True - False - %search_path% - True - True - False - False - WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; - - False - False - True - - - - - - - 0 - - - - True - True - False - True - False - - 0 - False - 0 - 1000 - False - - - - 0 - - True - False - False - True - True - 0 - 1252 - 11 - Release - False - - - True - True - - False - - False - False - False - True - False - False - False - False - False - False - False - False - 3081 - - 0 - 0 - 0 - False - 0 - - - True - 0 - - - rcBorland - 1000 - - False - False - False - False - [] - False - False - - - - False - False - False - True - True - True - False - False - %package_path% - - - - False - %modules_dcp_path% - True - - True - - False - True - False - False - True - 4194304 - False - False - False - True - %library_path% - 0 - True - 0 - 1048576 - 16384 - - True - True - %output_path% - False - - False - fa8 - True - False - %search_path% - True - True - False - False - WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; - - False - False - True - - - - - - 0 - - True - False - False - True - True - 0 - 1252 - 11 - Release - False - - - True - True - - False - - False - False - False - True - False - False - False - False - False - False - False - False - 3081 - - 0 - 0 - 0 - False - 0 - - - True - 0 - - - rcBorland - 1000 - - False - False - False - False - [] - False - False - - - - False - False - False - True - True - True - False - False - %package_path% - - - - False - %modules_dcp_path% - True - - True - - False - True - False - False - True - 4194304 - False - False - False - True - %library_path% - 0 - True - 0 - 1048576 - 16384 - - True - True - %output_path% - False - - False - fa8 - True - False - %search_path% - True - True - False - False - WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; - - False - False - True - - - - - - 0 - - True - False - False - True - True - 0 - 1252 - 11 - Release - False - - - True - True - - False - - False - False - False - True - False - False - False - False - False - False - False - False - 3081 - - 0 - 0 - 0 - False - 0 - - - True - 0 - - - rcBorland - 1000 - - False - False - False - False - [] - False - False - - - - False - False - False - True - True - True - False - False - %package_path% - - - - False - %modules_dcp_path% - True - - True - - False - True - False - False - True - 4194304 - False - False - False - True - %library_path% - 0 - True - 0 - 1048576 - 16384 - - True - True - %output_path% - False - - False - fa8 - True - False - %search_path% - True - True - False - False - WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; - - False - False - True - - - - - - 0 - - True - False - False - True - True - 0 - 1252 - 11 - Release - False - - - True - True - - False - - False - False - False - True - False - False - False - False - False - False - False - False - 3081 - - 0 - 0 - 0 - False - 0 - - - True - 0 - - - rcBorland - 1000 - - False - False - False - False - [] - False - False - - - - False - False - False - True - True - True - False - False - %package_path% - - - - False - %modules_dcp_path% - True - - True - - False - True - False - False - True - 4194304 - False - False - False - True - %library_path% - 0 - True - 0 - 1048576 - 16384 - - True - True - %output_path% - False - - False - fa8 - True - False - %search_path% - True - True - False - False - WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; - - False - False - True - - - - - - 0 - - True - False - False - True - True - 0 - 1252 - 11 - Release - False - - - True - True - - False - - False - False - False - True - False - False - False - False - False - False - False - False - 3081 - - 0 - 0 - 0 - False - 0 - - - True - 0 - - - rcBorland - 1000 - - False - False - False - False - [] - False - False - - - - False - False - False - True - True - True - False - False - %package_path% - - - - False - %modules_dcp_path% - True - - True - - False - True - False - False - True - 4194304 - False - False - False - True - %library_path% - 0 - True - 0 - 1048576 - 16384 - - True - True - %output_path% - False - - False - fa8 - True - False - %search_path% - True - True - False - False - WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; - - False - False - True - - - - - - - 0 - - - - True - True - False - True - False - - 0 - True - 0 - 1000 - False - - - - 0 - - True - False - False - True - True - 0 - 1252 - 11 - Release - False - - - True - True - - False - - False - False - False - True - False - False - False - False - False - False - False - False - 3081 - - 0 - 0 - 0 - False - 0 - - - True - 0 - - - rcBorland - 1000 - - False - False - False - False - [] - False - False - - - - False - False - False - True - True - True - False - False - %package_path% - - - - False - %modules_dcp_path% - True - - True - - False - True - False - False - True - 4194304 - False - False - False - True - %library_path% - 0 - True - 0 - 1048576 - 16384 - - True - True - %output_path% - False - - False - fa8 - True - False - %search_path% - True - True - False - False - WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; - - False - False - True - - - - - - 0 - - True - False - False - True - True - 0 - 1252 - 11 - Release - False - - - True - True - - False - - False - False - False - True - False - False - False - False - False - False - False - False - 3081 - - 0 - 0 - 0 - False - 0 - - - True - 0 - - - rcBorland - 1000 - - False - False - False - False - [] - False - False - - - - False - False - False - True - True - True - False - False - %package_path% - - - - False - %modules_dcp_path% - True - - True - - False - True - False - False - True - 4194304 - False - False - False - True - %library_path% - 0 - True - 0 - 1048576 - 16384 - - True - True - %output_path% - False - - False - fa8 - True - False - %search_path% - True - True - False - False - WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; - - False - False - True - - - - - - 0 - - True - False - False - True - True - 0 - 1252 - 11 - Release - False - - - True - True - - False - - False - False - False - True - False - False - False - False - False - False - False - False - 3081 - - 0 - 0 - 0 - False - 0 - - - True - 0 - - - rcBorland - 1000 - - False - False - False - False - [] - False - False - - - - False - False - False - True - True - True - False - False - %package_path% - - - - False - %modules_dcp_path% - True - - True - - False - True - False - False - True - 4194304 - False - False - False - True - %library_path% - 0 - True - 0 - 1048576 - 16384 - - True - True - %output_path% - False - - False - fa8 - True - False - %search_path% - True - True - False - False - WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; - - False - False - True - - - - - - 0 - - True - False - False - True - True - 0 - 1252 - 11 - Release - False - - - True - True - - False - - False - False - False - True - False - False - False - False - False - False - False - False - 3081 - - 0 - 0 - 0 - False - 0 - - - True - 0 - - - rcBorland - 1000 - - False - False - False - False - [] - False - False - - - - False - False - False - True - True - True - False - False - %package_path% - - - - False - %modules_dcp_path% - True - - True - - False - True - False - False - True - 4194304 - False - False - False - True - %library_path% - 0 - True - 0 - 1048576 - 16384 - - True - True - %output_path% - False - - False - fa8 - True - False - %search_path% - True - True - False - False - WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; - - False - False - True - - - - - - 0 - - True - False - False - True - True - 0 - 1252 - 11 - Release - False - - - True - True - - False - - False - False - False - True - False - False - False - False - False - False - False - False - 3081 - - 0 - 0 - 0 - False - 0 - - - True - 0 - - - rcBorland - 1000 - - False - False - False - False - [] - False - False - - - - False - False - False - True - True - True - False - False - %package_path% - - - - False - %modules_dcp_path% - True - - True - - False - True - False - False - True - 4194304 - False - False - False - True - %library_path% - 0 - True - 0 - 1048576 - 16384 - - True - True - %output_path% - False - - False - fa8 - True - False - %search_path% - True - True - False - False - WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; - - False - False - True - - - - - Contactos - 0 - - Contactos - True - True - False - True - False - - 0 - True - 0 - 1000 - False - - - - 0 - - True - False - False - True - True - 0 - 1252 - 11 - Release - False - - - True - True - - False - - False - False - False - True - False - False - False - False - False - False - False - False - 3081 - - 0 - 0 - 0 - False - 0 - %source_path%\Modulos\Contactos\Model\Contactos_model.dpk - True - 0 - - - rcBorland - 1000 - - False - False - False - False - [] - False - False - - - - False - False - False - True - True - True - False - False - %package_path% - - - - False - %modules_dcp_path% - True - - True - - False - True - False - False - True - 4194304 - False - False - False - True - %library_path% - 0 - True - 0 - 1048576 - 16384 - - True - True - %output_path% - False - - False - fa8 - True - False - %search_path% - True - True - False - False - WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; - - False - False - True - - - - - - 0 - - True - False - False - True - True - 0 - 1252 - 11 - Release - False - - - True - True - - False - - False - False - False - True - False - False - False - False - False - False - False - False - 3081 - - 0 - 0 - 0 - False - 0 - %source_path%\Modulos\Contactos\Data\Contactos_data.dpk - True - 0 - - - rcBorland - 1000 - - False - False - False - False - [] - False - False - - - - False - False - False - True - True - True - False - False - %package_path% - - - - False - %modules_dcp_path% - True - - True - - False - True - False - False - True - 4194304 - False - False - False - True - %library_path% - 0 - True - 0 - 1048576 - 16384 - - True - True - %output_path% - False - - False - fa8 - True - False - %search_path% - True - True - False - False - WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; - - False - False - True - - - - - - 0 - - True - False - False - True - True - 0 - 1252 - 11 - Release - False - - - True - True - - False - - False - False - False - True - False - False - False - False - False - False - False - False - 3081 - - 0 - 0 - 0 - False - 0 - %source_path%\Modulos\Contactos\Controller\Contactos_controller.dpk - True - 0 - - - rcBorland - 1000 - - False - False - False - False - [] - False - False - - - - False - False - False - True - True - True - False - False - %package_path% - - - - False - %modules_dcp_path% - True - - True - - False - True - False - False - True - 4194304 - False - False - False - True - %library_path% - 0 - True - 0 - 1048576 - 16384 - - True - True - %output_path% - False - - False - fa8 - True - False - %search_path% - True - True - False - False - WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; - - False - False - True - - - - - - 0 - - True - False - False - True - True - 0 - 1252 - 11 - Release - False - - - True - True - - False - - False - False - False - True - False - False - False - False - False - False - False - False - 3081 - - 0 - 0 - 0 - False - 0 - %source_path%\Modulos\Contactos\Views\Contactos_view.dpk - True - 0 - - - rcBorland - 1000 - - False - False - False - False - [] - False - False - - - - False - False - False - True - True - True - False - False - %package_path% - - - - False - %modules_dcp_path% - True - - True - - False - True - False - False - True - 4194304 - False - False - False - True - %library_path% - 0 - True - 0 - 1048576 - 16384 - - True - True - %output_path% - False - - False - fa8 - True - False - %search_path% - True - True - False - False - WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; - - False - False - True - - - - - - 0 - - True - False - False - True - True - 0 - 1252 - 11 - Release - False - - - True - True - - False - - False - False - False - True - False - False - False - False - False - False - False - False - 3081 - - 0 - 0 - 0 - False - 0 - %source_path%\Modulos\Contactos\Plugin\Contactos_plugin.dpk - True - 0 - - - rcBorland - 1000 - - False - False - False - False - [] - False - False - - - - False - False - False - True - True - True - False - False - %package_path% - - - - False - %modules_dcp_path% - True - - True - - False - True - False - False - True - 4194304 - False - False - False - True - %library_path% - 0 - True - 0 - 1048576 - 16384 - - True - True - %output_path% - False - - False - fa8 - True - False - %search_path% - True - True - False - False - WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; - - False - False - True - - - - - Familias - 0 - - Familias - True - True - False - True - False - - 0 - True - 0 - 1000 - False - - - - 0 - - True - False - False - True - True - 0 - 1252 - 11 - Release - False - - - True - True - - False - - False - False - False - True - False - False - False - False - False - False - False - False - 3081 - - 0 - 0 - 0 - False - 0 - %source_path%\Modulos\Familias\Model\Familias_model.dpk - True - 0 - - - rcBorland - 1000 - - False - False - False - False - [] - False - False - - - - False - False - False - True - True - True - False - False - %package_path% - - - - False - %modules_dcp_path% - True - - True - - False - True - False - False - True - 4194304 - False - False - False - True - %library_path% - 0 - True - 0 - 1048576 - 16384 - - True - True - %output_path% - False - - False - fa8 - True - False - %search_path% - True - True - False - False - WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; - - False - False - True - - - - - - 0 - - True - False - False - True - True - 0 - 1252 - 11 - Release - False - - - True - True - - False - - False - False - False - True - False - False - False - False - False - False - False - False - 3081 - - 0 - 0 - 0 - False - 0 - %source_path%\Modulos\Familias\Data\Familias_data.dpk - True - 0 - - - rcBorland - 1000 - - False - False - False - False - [] - False - False - - - - False - False - False - True - True - True - False - False - %package_path% - - - - False - %modules_dcp_path% - True - - True - - False - True - False - False - True - 4194304 - False - False - False - True - %library_path% - 0 - True - 0 - 1048576 - 16384 - - True - True - %output_path% - False - - False - fa8 - True - False - %search_path% - True - True - False - False - WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; - - False - False - True - - - - - - 0 - - True - False - False - True - True - 0 - 1252 - 11 - Release - False - - - True - True - - False - - False - False - False - True - False - False - False - False - False - False - False - False - 3081 - - 0 - 0 - 0 - False - 0 - %source_path%\Modulos\Familias\Controller\Familias_controller.dpk - True - 0 - - - rcBorland - 1000 - - False - False - False - False - [] - False - False - - - - False - False - False - True - True - True - False - False - %package_path% - - - - False - %modules_dcp_path% - True - - True - - False - True - False - False - True - 4194304 - False - False - False - True - %library_path% - 0 - True - 0 - 1048576 - 16384 - - True - True - %output_path% - False - - False - fa8 - True - False - %search_path% - True - True - False - False - WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; - - False - False - True - - - - - - 0 - - True - False - False - True - True - 0 - 1252 - 11 - Release - False - - - True - True - - False - - False - False - False - True - False - False - False - False - False - False - False - False - 3081 - - 0 - 0 - 0 - False - 0 - %source_path%\Modulos\Familias\Views\Familias_view.dpk - True - 0 - - - rcBorland - 1000 - - False - False - False - False - [] - False - False - - - - False - False - False - True - True - True - False - False - %package_path% - - - - False - %modules_dcp_path% - True - - True - - False - True - False - False - True - 4194304 - False - False - False - True - %library_path% - 0 - True - 0 - 1048576 - 16384 - - True - True - %output_path% - False - - False - fa8 - True - False - %search_path% - True - True - False - False - WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; - - False - False - True - - - - - - 0 - - True - False - False - True - True - 0 - 1252 - 11 - Release - False - - - True - True - - False - - False - False - False - True - False - False - False - False - False - False - False - False - 3081 - - 0 - 0 - 0 - False - 0 - %source_path%\Modulos\Familias\Plugin\Familias_plugin.dpk - True - 0 - - - rcBorland - 1000 - - False - False - False - False - [] - False - False - - - - False - False - False - True - True - True - False - False - %package_path% - - - - False - %modules_dcp_path% - True - - True - - False - True - False - False - True - 4194304 - False - False - False - True - %library_path% - 0 - True - 0 - 1048576 - 16384 - - True - True - %output_path% - False - - False - fa8 - True - False - %search_path% - True - True - False - False - WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; - - False - False - True - - - - - - - - 0 - - - - True - True - False - True - False - - 0 - True - 0 - 1000 - False - - - - 0 - - True - False - False - True - True - 0 - 1252 - 11 - Release - False - - - True - True - - False - - False - False - False - True - False - False - False - False - False - False - False - False - 3081 - - 0 - 0 - 0 - False - 0 - %source_path%\Modulos\Almacenes\Model\Almacenes_model.dpk - True - 0 - - - rcBorland - 1000 - - False - False - False - False - [] - False - False - - - - False - False - False - True - True - True - False - False - %package_path% - - - - False - %modules_dcp_path% - True - - True - - False - True - False - False - True - 4194304 - False - False - False - True - %library_path% - 0 - True - 0 - 1048576 - 16384 - - True - True - %output_path% - False - - False - fa8 - True - False - %search_path% - True - True - False - False - WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; - - False - False - True - - - - - - 0 - - True - False - False - True - True - 0 - 1252 - 11 - Release - False - - - True - True - - False - - False - False - False - True - False - False - False - False - False - False - False - False - 3081 - - 0 - 0 - 0 - False - 0 - %source_path%\Modulos\Almacenes\Data\Almacenes_data.dpk - True - 0 - - - rcBorland - 1000 - - False - False - False - False - [] - False - False - - - - False - False - False - True - True - True - False - False - %package_path% - - - - False - %modules_dcp_path% - True - - True - - False - True - False - False - True - 4194304 - False - False - False - True - %library_path% - 0 - True - 0 - 1048576 - 16384 - - True - True - %output_path% - False - - False - fa8 - True - False - %search_path% - True - True - False - False - WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; - - False - False - True - - - - - - 0 - - True - False - False - True - True - 0 - 1252 - 11 - Release - False - - - True - True - - False - - False - False - False - True - False - False - False - False - False - False - False - False - 3081 - - 0 - 0 - 0 - False - 0 - %source_path%\Modulos\Almacenes\Controller\Almacenes_controller.dpk - True - 0 - - - rcBorland - 1000 - - False - False - False - False - [] - False - False - - - - False - False - False - True - True - True - False - False - %package_path% - - - - False - %modules_dcp_path% - True - - True - - False - True - False - False - True - 4194304 - False - False - False - True - %library_path% - 0 - True - 0 - 1048576 - 16384 - - True - True - %output_path% - False - - False - fa8 - True - False - %search_path% - True - True - False - False - WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; - - False - False - True - - - - - - 0 - - True - False - False - True - True - 0 - 1252 - 11 - Release - False - - - True - True - - False - - False - False - False - True - False - False - False - False - False - False - False - False - 3081 - - 0 - 0 - 0 - False - 0 - %source_path%\Modulos\Almacenes\Views\Almacenes_view.dpk - True - 0 - - - rcBorland - 1000 - - False - False - False - False - [] - False - False - - - - False - False - False - True - True - True - False - False - %package_path% - - - - False - %modules_dcp_path% - True - - True - - False - True - False - False - True - 4194304 - False - False - False - True - %library_path% - 0 - True - 0 - 1048576 - 16384 - - True - True - %output_path% - False - - False - fa8 - True - False - %search_path% - True - True - False - False - WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; - - False - False - True - - - - - - 0 - - True - False - False - True - True - 0 - 1252 - 11 - Release - False - - - True - True - - False - - False - False - False - True - False - False - False - False - False - False - False - False - 3081 - - 0 - 0 - 0 - False - 0 - %source_path%\Modulos\Almacenes\Plugin\Almacenes_plugin.dpk - True - 0 - - - rcBorland - 1000 - - False - False - False - False - [] - False - False - - - - False - False - False - True - True - True - False - False - %package_path% - - - - False - %modules_dcp_path% - True - - True - - False - True - False - False - True - 4194304 - False - False - False - True - %library_path% - 0 - True - 0 - 1048576 - 16384 - - True - True - %output_path% - False - - False - fa8 - True - False - %search_path% - True - True - False - False - WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; - - False - False - True - - - - - - - 0 - - - - True - True - False - True - False - - 0 - True - 0 - 1000 - False - - - - 0 - - True - False - False - True - True - 0 - 1252 - 11 - Release - False - - - True - True - - False - - False - False - False - True - False - False - False - False - False - False - False - False - 3081 - - 0 - 0 - 0 - False - 0 - %source_path%\Modulos\Articulos\Model\Articulos_model.dpk - True - 0 - - - rcBorland - 1000 - - False - False - False - False - [] - False - False - - - - False - False - False - True - True - True - False - False - %package_path% - - - - False - %modules_dcp_path% - True - - True - - False - True - False - False - True - 4194304 - False - False - False - True - %library_path% - 0 - True - 0 - 1048576 - 16384 - - True - True - %output_path% - False - - False - fa8 - True - False - %search_path% - True - True - False - False - WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; - - False - False - True - - - - - - 0 - - True - False - False - True - True - 0 - 1252 - 11 - Release - False - - - True - True - - False - - False - False - False - True - False - False - False - False - False - False - False - False - 3081 - - 0 - 0 - 0 - False - 0 - %source_path%\Modulos\Articulos\Data\Articulos_data.dpk - True - 0 - - - rcBorland - 1000 - - False - False - False - False - [] - False - False - - - - False - False - False - True - True - True - False - False - %package_path% - - - - False - %modules_dcp_path% - True - - True - - False - True - False - False - True - 4194304 - False - False - False - True - %library_path% - 0 - True - 0 - 1048576 - 16384 - - True - True - %output_path% - False - - False - fa8 - True - False - %search_path% - True - True - False - False - WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; - - False - False - True - - - - - - 0 - - True - False - False - True - True - 0 - 1252 - 11 - Release - False - - - True - True - - False - - False - False - False - True - False - False - False - False - False - False - False - False - 3081 - - 0 - 0 - 0 - False - 0 - %source_path%\Modulos\Articulos\Controller\Articulos_controller.dpk - True - 0 - - - rcBorland - 1000 - - False - False - False - False - [] - False - False - - - - False - False - False - True - True - True - False - False - %package_path% - - - - False - %modules_dcp_path% - True - - True - - False - True - False - False - True - 4194304 - False - False - False - True - %library_path% - 0 - True - 0 - 1048576 - 16384 - - True - True - %output_path% - False - - False - fa8 - True - False - %search_path% - True - True - False - False - WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; - - False - False - True - - - - - - 0 - - True - False - False - True - True - 0 - 1252 - 11 - Release - False - - - True - True - - False - - False - False - False - True - False - False - False - False - False - False - False - False - 3081 - - 0 - 0 - 0 - False - 0 - %source_path%\Modulos\Articulos\Views\Articulos_view.dpk - True - 0 - - - rcBorland - 1000 - - False - False - False - False - [] - False - False - - - - False - False - False - True - True - True - False - False - %package_path% - - - - False - %modules_dcp_path% - True - - True - - False - True - False - False - True - 4194304 - False - False - False - True - %library_path% - 0 - True - 0 - 1048576 - 16384 - - True - True - %output_path% - False - - False - fa8 - True - False - %search_path% - True - True - False - False - WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; - - False - False - True - - - - - - 0 - - True - False - False - True - True - 0 - 1252 - 11 - Release - False - - - True - True - - False - - False - False - False - True - False - False - False - False - False - False - False - False - 3081 - - 0 - 0 - 0 - False - 0 - %source_path%\Modulos\Articulos\Plugin\Articulos_plugin.dpk - True - 0 - - - rcBorland - 1000 - - False - False - False - False - [] - False - False - - - - False - False - False - True - True - True - False - False - %package_path% - - - - False - %modules_dcp_path% - True - - True - - False - True - False - False - True - 4194304 - False - False - False - True - %library_path% - 0 - True - 0 - 1048576 - 16384 - - True - True - %output_path% - False - - False - fa8 - True - False - %search_path% - True - True - False - False - WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; - - False - False - True - - - - - Ventas - 0 - - Ventas - True - True - False - True - False - - 0 - False - 0 - 1000 - False - - - - 0 - - - - True - True - False - True - False - - 0 - True - 0 - 1000 - False - - - - 0 - - True - False - False - True - True - 0 - 1252 - 11 - Release - False - - - True - True - - False - - False - False - False - True - False - False - False - False - False - False - False - False - 3081 - - 0 - 0 - 0 - False - 0 - - - True - 0 - - - rcBorland - 1000 - - False - False - False - False - [] - False - False - - - - False - False - False - True - True - True - False - False - %package_path% - - - - False - %modules_dcp_path% - True - - True - - False - True - False - False - True - 4194304 - False - False - False - True - %library_path% - 0 - True - 0 - 1048576 - 16384 - - True - True - %output_path% - False - - False - fa8 - True - False - %search_path% - True - True - False - False - WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; - - False - False - True - - - - - - 0 - - True - False - False - True - True - 0 - 1252 - 11 - Release - False - - - True - True - - False - - False - False - False - True - False - False - False - False - False - False - False - False - 3081 - - 0 - 0 - 0 - False - 0 - - - True - 0 - - - rcBorland - 1000 - - False - False - False - False - [] - False - False - - - - False - False - False - True - True - True - False - False - %package_path% - - - - False - %modules_dcp_path% - True - - True - - False - True - False - False - True - 4194304 - False - False - False - True - %library_path% - 0 - True - 0 - 1048576 - 16384 - - True - True - %output_path% - False - - False - fa8 - True - False - %search_path% - True - True - False - False - WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; - - False - False - True - - - - - - 0 - - True - False - False - True - True - 0 - 1252 - 11 - Release - False - - - True - True - - False - - False - False - False - True - False - False - False - False - False - False - False - False - 3081 - - 0 - 0 - 0 - False - 0 - - - True - 0 - - - rcBorland - 1000 - - False - False - False - False - [] - False - False - - - - False - False - False - True - True - True - False - False - %package_path% - - - - False - %modules_dcp_path% - True - - True - - False - True - False - False - True - 4194304 - False - False - False - True - %library_path% - 0 - True - 0 - 1048576 - 16384 - - True - True - %output_path% - False - - False - fa8 - True - False - %search_path% - True - True - False - False - WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; - - False - False - True - - - - - - 0 - - True - False - False - True - True - 0 - 1252 - 11 - Release - False - - - True - True - - False - - False - False - False - True - False - False - False - False - False - False - False - False - 3081 - - 0 - 0 - 0 - False - 0 - - - True - 0 - - - rcBorland - 1000 - - False - False - False - False - [] - False - False - - - - False - False - False - True - True - True - False - False - %package_path% - - - - False - %modules_dcp_path% - True - - True - - False - True - False - False - True - 4194304 - False - False - False - True - %library_path% - 0 - True - 0 - 1048576 - 16384 - - True - True - %output_path% - False - - False - fa8 - True - False - %search_path% - True - True - False - False - WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; - - False - False - True - - - - - - 0 - - True - False - False - True - True - 0 - 1252 - 11 - Release - False - - - True - True - - False - - False - False - False - True - False - False - False - False - False - False - False - False - 3081 - - 0 - 0 - 0 - False - 0 - - - True - 0 - - - rcBorland - 1000 - - False - False - False - False - [] - False - False - - - - False - False - False - True - True - True - False - False - %package_path% - - - - False - %modules_dcp_path% - True - - True - - False - True - False - False - True - 4194304 - False - False - False - True - %library_path% - 0 - True - 0 - 1048576 - 16384 - - True - True - %output_path% - False - - False - fa8 - True - False - %search_path% - True - True - False - False - WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; - - False - False - True - - - - - - - 0 - - - - True - True - False - True - False - - 0 - True - 0 - 1000 - False - - - - 0 - - True - False - False - True - True - 0 - 1252 - 11 - Release - False - - - True - True - - False - - False - False - False - True - False - False - False - False - False - False - False - False - 3081 - - 0 - 0 - 0 - False - 0 - - - True - 0 - - - rcBorland - 1000 - - False - False - False - False - [] - False - False - - - - False - False - False - True - True - True - False - False - %package_path% - - - - False - %modules_dcp_path% - True - - True - - False - True - False - False - True - 4194304 - False - False - False - True - %library_path% - 0 - True - 0 - 1048576 - 16384 - - True - True - %output_path% - False - - False - fa8 - True - False - %search_path% - True - True - False - False - WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; - - False - False - True - - - - - - 0 - - True - False - False - True - True - 0 - 1252 - 11 - Release - False - - - True - True - - False - - False - False - False - True - False - False - False - False - False - False - False - False - 3081 - - 0 - 0 - 0 - False - 0 - - - True - 0 - - - rcBorland - 1000 - - False - False - False - False - [] - False - False - - - - False - False - False - True - True - True - False - False - %package_path% - - - - False - %modules_dcp_path% - True - - True - - False - True - False - False - True - 4194304 - False - False - False - True - %library_path% - 0 - True - 0 - 1048576 - 16384 - - True - True - %output_path% - False - - False - fa8 - True - False - %search_path% - True - True - False - False - WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; - - False - False - True - - - - - - 0 - - True - False - False - True - True - 0 - 1252 - 11 - Release - False - - - True - True - - False - - False - False - False - True - False - False - False - False - False - False - False - False - 3081 - - 0 - 0 - 0 - False - 0 - - - True - 0 - - - rcBorland - 1000 - - False - False - False - False - [] - False - False - - - - False - False - False - True - True - True - False - False - %package_path% - - - - False - %modules_dcp_path% - True - - True - - False - True - False - False - True - 4194304 - False - False - False - True - %library_path% - 0 - True - 0 - 1048576 - 16384 - - True - True - %output_path% - False - - False - fa8 - True - False - %search_path% - True - True - False - False - WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; - - False - False - True - - - - - - 0 - - True - False - False - True - True - 0 - 1252 - 11 - Release - False - - - True - True - - False - - False - False - False - True - False - False - False - False - False - False - False - False - 3081 - - 0 - 0 - 0 - False - 0 - - - True - 0 - - - rcBorland - 1000 - - False - False - False - False - [] - False - False - - - - False - False - False - True - True - True - False - False - %package_path% - - - - False - %modules_dcp_path% - True - - True - - False - True - False - False - True - 4194304 - False - False - False - True - %library_path% - 0 - True - 0 - 1048576 - 16384 - - True - True - %output_path% - False - - False - fa8 - True - False - %search_path% - True - True - False - False - WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; - - False - False - True - - - - - - 0 - - True - False - False - True - True - 0 - 1252 - 11 - Release - False - - - True - True - - False - - False - False - False - True - False - False - False - False - False - False - False - False - 3081 - - 0 - 0 - 0 - False - 0 - - - True - 0 - - - rcBorland - 1000 - - False - False - False - False - [] - False - False - - - - False - False - False - True - True - True - False - False - %package_path% - - - - False - %modules_dcp_path% - True - - True - - False - True - False - False - True - 4194304 - False - False - False - True - %library_path% - 0 - True - 0 - 1048576 - 16384 - - True - True - %output_path% - False - - False - fa8 - True - False - %search_path% - True - True - False - False - WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; - - False - False - True - - - - - - 0 - - True - False - False - True - True - 0 - 1252 - 11 - Release - False - - - True - True - - False - - False - False - False - True - False - False - False - False - False - False - False - False - 3081 - - 0 - 0 - 0 - False - 0 - - - True - 0 - - - rcBorland - 1000 - - False - False - False - False - [] - False - False - - - - False - False - False - True - True - True - False - False - %package_path% - - - - False - %modules_dcp_path% - True - - True - - False - True - False - False - True - 4194304 - False - False - False - True - %library_path% - 0 - True - 0 - 1048576 - 16384 - - True - True - %output_path% - False - - False - fa8 - True - False - %search_path% - True - True - False - False - WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; - - False - False - True - - - - - - 0 - - True - False - False - True - True - 0 - 1252 - 11 - Release - False - - - True - True - - False - - False - False - False - True - False - False - False - False - False - False - False - False - 3081 - - 0 - 0 - 0 - False - 0 - - - True - 0 - - - rcBorland - 1000 - - False - False - False - False - [] - False - False - - - - False - False - False - True - True - True - False - False - %package_path% - - - - False - %modules_dcp_path% - True - - True - - False - True - False - False - True - 4194304 - False - False - False - True - %library_path% - 0 - True - 0 - 1048576 - 16384 - - True - True - %output_path% - False - - False - fa8 - True - False - %search_path% - True - True - False - False - WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; - - False - False - True - - - - - - - 0 - - - - True - True - False - True - False - - 0 - True - 0 - 1000 - False - - - - 0 - - True - False - False - True - True - 0 - 1252 - 11 - Release - False - - - True - True - - False - - False - False - False - True - False - False - False - False - False - False - False - False - 3081 - - 0 - 0 - 0 - False - 0 - - - True - 0 - - - rcBorland - 1000 - - False - False - False - False - [] - False - False - - - - False - False - False - True - True - True - False - False - %package_path% - - - - False - %modules_dcp_path% - True - - True - - False - True - False - False - True - 4194304 - False - False - False - True - %library_path% - 0 - True - 0 - 1048576 - 16384 - - True - True - %output_path% - False - - False - fa8 - True - False - %search_path% - True - True - False - False - WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; - - False - False - True - - - - - - 0 - - True - False - False - True - True - 0 - 1252 - 11 - Release - False - - - True - True - - False - - False - False - False - True - False - False - False - False - False - False - False - False - 3081 - - 0 - 0 - 0 - False - 0 - - - True - 0 - - - rcBorland - 1000 - - False - False - False - False - [] - False - False - - - - False - False - False - True - True - True - False - False - %package_path% - - - - False - %modules_dcp_path% - True - - True - - False - True - False - False - True - 4194304 - False - False - False - True - %library_path% - 0 - True - 0 - 1048576 - 16384 - - True - True - %output_path% - False - - False - fa8 - True - False - %search_path% - True - True - False - False - WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; - - False - False - True - - - - - - 0 - - True - False - False - True - True - 0 - 1252 - 11 - Release - False - - - True - True - - False - - False - False - False - True - False - False - False - False - False - False - False - False - 3081 - - 0 - 0 - 0 - False - 0 - - - True - 0 - - - rcBorland - 1000 - - False - False - False - False - [] - False - False - - - - False - False - False - True - True - True - False - False - %package_path% - - - - False - %modules_dcp_path% - True - - True - - False - True - False - False - True - 4194304 - False - False - False - True - %library_path% - 0 - True - 0 - 1048576 - 16384 - - True - True - %output_path% - False - - False - fa8 - True - False - %search_path% - True - True - False - False - WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; - - False - False - True - - - - - - - 0 - - - - True - True - False - True - False - - 0 - True - 0 - 1000 - False - - - - 0 - - True - False - False - True - True - 0 - 1252 - 11 - Release - False - - - True - True - - False - - False - False - False - True - False - False - False - False - False - False - False - False - 3081 - - 0 - 0 - 0 - False - 0 - - - True - 0 - - - rcBorland - 1000 - - False - False - False - False - [] - False - False - - - - False - False - False - True - True - True - False - False - %package_path% - - - - False - %modules_dcp_path% - True - - True - - False - True - False - False - True - 4194304 - False - False - False - True - %library_path% - 0 - True - 0 - 1048576 - 16384 - - True - True - %output_path% - False - - False - fa8 - True - False - %search_path% - True - True - False - False - WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; - - False - False - True - - - - - - 0 - - True - False - False - True - True - 0 - 1252 - 11 - Release - False - - - True - True - - False - - False - False - False - True - False - False - False - False - False - False - False - False - 3081 - - 0 - 0 - 0 - False - 0 - - - True - 0 - - - rcBorland - 1000 - - False - False - False - False - [] - False - False - - - - False - False - False - True - True - True - False - False - %package_path% - - - - False - %modules_dcp_path% - True - - True - - False - True - False - False - True - 4194304 - False - False - False - True - %library_path% - 0 - True - 0 - 1048576 - 16384 - - True - True - %output_path% - False - - False - fa8 - True - False - %search_path% - True - True - False - False - WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; - - False - False - True - - - - - - 0 - - True - False - False - True - True - 0 - 1252 - 11 - Release - False - - - True - True - - False - - False - False - False - True - False - False - False - False - False - False - False - False - 3081 - - 0 - 0 - 0 - False - 0 - - - True - 0 - - - rcBorland - 1000 - - False - False - False - False - [] - False - False - - - - False - False - False - True - True - True - False - False - %package_path% - - - - False - %modules_dcp_path% - True - - True - - False - True - False - False - True - 4194304 - False - False - False - True - %library_path% - 0 - True - 0 - 1048576 - 16384 - - True - True - %output_path% - False - - False - fa8 - True - False - %search_path% - True - True - False - False - WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; - - False - False - True - - - - - - - 0 - - - - True - True - False - True - False - - 0 - True - 0 - 1000 - False - - - - 0 - - True - False - False - True - True - 0 - 1252 - 11 - Release - False - - - True - True - - False - - False - False - False - True - False - False - False - False - False - False - False - False - 3081 - - 0 - 0 - 0 - False - 0 - - - True - 0 - - - rcBorland - 1000 - - False - False - False - False - [] - False - False - - - - False - False - False - True - True - True - False - False - %package_path% - - - - False - %modules_dcp_path% - True - - True - - False - True - False - False - True - 4194304 - False - False - False - True - %library_path% - 0 - True - 0 - 1048576 - 16384 - - True - True - %output_path% - False - - False - fa8 - True - False - %search_path% - True - True - False - False - WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; - - False - False - True - - - - - - 0 - - True - False - False - True - True - 0 - 1252 - 11 - Release - False - - - True - True - - False - - False - False - False - True - False - False - False - False - False - False - False - False - 3081 - - 0 - 0 - 0 - False - 0 - - - True - 0 - - - rcBorland - 1000 - - False - False - False - False - [] - False - False - - - - False - False - False - True - True - True - False - False - %package_path% - - - - False - %modules_dcp_path% - True - - True - - False - True - False - False - True - 4194304 - False - False - False - True - %library_path% - 0 - True - 0 - 1048576 - 16384 - - True - True - %output_path% - False - - False - fa8 - True - False - %search_path% - True - True - False - False - WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; - - False - False - True - - - - - - 0 - - True - False - False - True - True - 0 - 1252 - 11 - Release - False - - - True - True - - False - - False - False - False - True - False - False - False - False - False - False - False - False - 3081 - - 0 - 0 - 0 - False - 0 - - - True - 0 - - - rcBorland - 1000 - - False - False - False - False - [] - False - False - - - - False - False - False - True - True - True - False - False - %package_path% - - - - False - %modules_dcp_path% - True - - True - - False - True - False - False - True - 4194304 - False - False - False - True - %library_path% - 0 - True - 0 - 1048576 - 16384 - - True - True - %output_path% - False - - False - fa8 - True - False - %search_path% - True - True - False - False - WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; - - False - False - True - - - - - - - 0 - - - - True - True - False - True - False - - 0 - True - 0 - 1000 - False - - - - 0 - - True - False - False - True - True - 0 - 1252 - 11 - Release - False - - - True - True - - False - - False - False - False - True - False - False - False - False - False - False - False - False - 3081 - - 0 - 0 - 0 - False - 0 - %source_path%\Modulos\Comisiones\Model\Comisiones_model.dpk - True - 0 - - - rcBorland - 1000 - - False - False - False - False - [] - False - False - - - - False - False - False - True - True - True - False - False - %package_path% - - - - False - %modules_dcp_path% - True - - True - - False - True - False - False - True - 4194304 - False - False - False - True - %library_path% - 0 - True - 0 - 1048576 - 16384 - - True - True - %output_path% - False - - False - fa8 - True - False - %search_path% - True - True - False - False - WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; - - False - False - True - - - - - - 0 - - True - False - False - True - True - 0 - 1252 - 11 - Release - False - - - True - True - - False - - False - False - False - True - False - False - False - False - False - False - False - False - 3081 - - 0 - 0 - 0 - False - 0 - %source_path%\Modulos\Comisiones\Data\Comisiones_data.dpk - True - 0 - - - rcBorland - 1000 - - False - False - False - False - [] - False - False - - - - False - False - False - True - True - True - False - False - %package_path% - - - - False - %modules_dcp_path% - True - - True - - False - True - False - False - True - 4194304 - False - False - False - True - %library_path% - 0 - True - 0 - 1048576 - 16384 - - True - True - %output_path% - False - - False - fa8 - True - False - %search_path% - True - True - False - False - WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; - - False - False - True - - - - - - 0 - - True - False - False - True - True - 0 - 1252 - 11 - Release - False - - - True - True - - False - - False - False - False - True - False - False - False - False - False - False - False - False - 3081 - - 0 - 0 - 0 - False - 0 - %source_path%\Modulos\Comisiones\Controller\Comisiones_controller.dpk - True - 0 - - - rcBorland - 1000 - - False - False - False - False - [] - False - False - - - - False - False - False - True - True - True - False - False - %package_path% - - - - False - %modules_dcp_path% - True - - True - - False - True - False - False - True - 4194304 - False - False - False - True - %library_path% - 0 - True - 0 - 1048576 - 16384 - - True - True - %output_path% - False - - False - fa8 - True - False - %search_path% - True - True - False - False - WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; - - False - False - True - - - - - - Compras - 0 - - Compras - True - True - False - True - False - - 0 - True - 0 - 1000 - False - - - - - 0 - - - - True - True - False - True - False - - 0 - False - 0 - 1000 - False - - - - 0 - - True - False - False - True - True - 0 - 1252 - 11 - Release - False - - - True - True - - False - - False - False - False - True - False - False - False - False - False - False - False - False - 3081 - - 0 - 0 - 0 - False - 0 - - - True - 0 - - - rcBorland - 1000 - - False - False - False - False - [] - False - False - - - - False - False - False - True - True - True - False - False - %package_path% - - - - False - %modules_dcp_path% - True - - True - - False - True - False - False - True - 4194304 - False - False - False - True - %library_path% - 0 - True - 0 - 1048576 - 16384 - - True - True - %output_path% - False - - False - fa8 - True - False - %search_path% - True - True - False - False - WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; - - False - False - True - - - - - - 0 - - True - False - False - True - True - 0 - 1252 - 11 - Release - False - - - True - True - - False - - False - False - False - True - False - False - False - False - False - False - False - False - 3081 - - 0 - 0 - 0 - False - 0 - - - True - 0 - - - rcBorland - 1000 - - False - False - False - False - [] - False - False - - - - False - False - False - True - True - True - False - False - %package_path% - - - - False - %modules_dcp_path% - True - - True - - False - True - False - False - True - 4194304 - False - False - False - True - %library_path% - 0 - True - 0 - 1048576 - 16384 - - True - True - %output_path% - False - - False - fa8 - True - False - %search_path% - True - True - False - False - WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; - - False - False - True - - - - - - 0 - - True - False - False - True - True - 0 - 1252 - 11 - Release - False - - - True - True - - False - - False - False - False - True - False - False - False - False - False - False - False - False - 3081 - - 0 - 0 - 0 - False - 0 - - - True - 0 - - - rcBorland - 1000 - - False - False - False - False - [] - False - False - - - - False - False - False - True - True - True - False - False - %package_path% - - - - False - %modules_dcp_path% - True - - True - - False - True - False - False - True - 4194304 - False - False - False - True - %library_path% - 0 - True - 0 - 1048576 - 16384 - - True - True - %output_path% - False - - False - fa8 - True - False - %search_path% - True - True - False - False - WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; - - False - False - True - - - - - - 0 - - True - False - False - True - True - 0 - 1252 - 11 - Release - False - - - True - True - - False - - False - False - False - True - False - False - False - False - False - False - False - False - 3081 - - 0 - 0 - 0 - False - 0 - - - True - 0 - - - rcBorland - 1000 - - False - False - False - False - [] - False - False - - - - False - False - False - True - True - True - False - False - %package_path% - - - - False - %modules_dcp_path% - True - - True - - False - True - False - False - True - 4194304 - False - False - False - True - - - 0 - True - 0 - 1048576 - 16384 - - True - True - %output_path% - False - - False - fa8 - True - False - - True - True - False - False - WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; - - False - False - True - - - - - - - 0 - - - - True - True - False - True - False - - 0 - False - 0 - 1000 - False - - - - 0 - - True - False - False - True - True - 0 - 1252 - 11 - Release - False - - - True - True - - False - - False - False - False - True - False - False - False - False - False - False - False - False - 3081 - - 0 - 0 - 0 - False - 0 - - - True - 0 - - - rcBorland - 1000 - - False - False - False - False - [] - False - False - - - - False - False - False - True - True - True - False - False - %package_path% - - - - False - %modules_dcp_path% - True - - True - - False - True - False - False - True - 4194304 - False - False - False - True - - - 0 - True - 0 - 1048576 - 16384 - - True - True - %output_path% - False - - False - fa8 - True - False - - True - True - False - False - WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; - - False - False - True - - - - - - 0 - - True - False - False - True - True - 0 - 1252 - 11 - Release - False - - - True - True - - False - - False - False - False - True - False - False - False - False - False - False - False - False - 3081 - - 0 - 0 - 0 - False - 0 - - - True - 0 - - - rcBorland - 1000 - - False - False - False - False - [] - False - False - - - - False - False - False - True - True - True - False - False - %package_path% - - - - False - %modules_dcp_path% - True - - True - - False - True - False - False - True - 4194304 - False - False - False - True - - - 0 - True - 0 - 1048576 - 16384 - - True - True - %output_path% - False - - False - fa8 - True - False - - True - True - False - False - WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; - - False - False - True - - - - - - 0 - - True - False - False - True - True - 0 - 1252 - 11 - Release - False - - - True - True - - False - - False - False - False - True - False - False - False - False - False - False - False - False - 3081 - - 0 - 0 - 0 - False - 0 - - - True - 0 - - - rcBorland - 1000 - - False - False - False - False - [] - False - False - - - - False - False - False - True - True - True - False - False - %package_path% - - - - False - %modules_dcp_path% - True - - True - - False - True - False - False - True - 4194304 - False - False - False - True - - - 0 - True - 0 - 1048576 - 16384 - - True - True - %output_path% - False - - False - fa8 - True - False - - True - True - False - False - WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; - - False - False - True - - - - - - 0 - - True - False - False - True - True - 0 - 1252 - 11 - Release - False - - - True - True - - False - - False - False - False - True - False - False - False - False - False - False - False - False - 3081 - - 0 - 0 - 0 - False - 0 - - - True - 0 - - - rcBorland - 1000 - - False - False - False - False - [] - False - False - - - - False - False - False - True - True - True - False - False - %package_path% - - - - False - %modules_dcp_path% - True - - True - - False - True - False - False - True - 4194304 - False - False - False - True - - - 0 - True - 0 - 1048576 - 16384 - - True - True - %output_path% - False - - False - fa8 - True - False - - True - True - False - False - WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; - - False - False - True - - - - - - 0 - - True - False - False - True - True - 0 - 1252 - 11 - Release - False - - - True - True - - False - - False - False - False - True - False - False - False - False - False - False - False - False - 3081 - - 0 - 0 - 0 - False - 0 - - - True - 0 - - - rcBorland - 1000 - - False - False - False - False - [] - False - False - - - - False - False - False - True - True - True - False - False - %package_path% - - - - False - %modules_dcp_path% - True - - True - - False - True - False - False - True - 4194304 - False - False - False - True - - - 0 - True - 0 - 1048576 - 16384 - - True - True - %output_path% - False - - False - fa8 - True - False - - True - True - False - False - WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; - - False - False - True - - - - - Logística - 0 - - Logística - True - True - False - True - False - - 0 - False - 0 - 1000 - False - - - - 0 - - - - True - True - False - True - False - - 0 - False - 0 - 1000 - False - - - - 0 - - True - False - False - True - True - 0 - 1252 - 11 - Release - False - - - True - True - - False - - False - False - False - True - False - False - False - False - False - False - False - False - 3081 - - 0 - 0 - 0 - False - 0 - %source_path%\Modulos\Inventario\Model\Inventario_model.dpk - True - 0 - - - rcBorland - 1000 - - False - False - False - False - [] - False - False - - - - False - False - False - True - True - True - False - False - %package_path% - - - - False - %modules_dcp_path% - True - - True - - False - True - False - False - True - 4194304 - False - False - False - True - %library_path% - 0 - True - 0 - 1048576 - 16384 - - True - True - %output_path% - False - - False - fa8 - True - False - %search_path% - True - True - False - False - WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; - - False - False - True - - - - - - 0 - - True - False - False - True - True - 0 - 1252 - 11 - Release - False - - - True - True - - False - - False - False - False - True - False - False - False - False - False - False - False - False - 3081 - - 0 - 0 - 0 - False - 0 - %source_path%\Modulos\Inventario\Data\Inventario_data.dpk - True - 0 - - - rcBorland - 1000 - - False - False - False - False - [] - False - False - - - - False - False - False - True - True - True - False - False - %package_path% - - - - False - %modules_dcp_path% - True - - True - - False - True - False - False - True - 4194304 - False - False - False - True - %library_path% - 0 - True - 0 - 1048576 - 16384 - - True - True - %output_path% - False - - False - fa8 - True - False - %search_path% - True - True - False - False - WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; - - False - False - True - - - - - - 0 - - True - False - False - True - True - 0 - 1252 - 11 - Release - False - - - True - True - - False - - False - False - False - True - False - False - False - False - False - False - False - False - 3081 - - 0 - 0 - 0 - False - 0 - %source_path%\Modulos\Inventario\Controller\Inventario_controller.dpk - True - 0 - - - rcBorland - 1000 - - False - False - False - False - [] - False - False - - - - False - False - False - True - True - True - False - False - %package_path% - - - - False - %modules_dcp_path% - True - - True - - False - True - False - False - True - 4194304 - False - False - False - True - %library_path% - 0 - True - 0 - 1048576 - 16384 - - True - True - %output_path% - False - - False - fa8 - True - False - %search_path% - True - True - False - False - WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; - - False - False - True - - - - - - - 0 - - - - True - True - False - True - False - - 0 - False - 0 - 1000 - False - - - - 0 - - True - False - False - True - True - 0 - 1252 - 11 - Release - False - - - True - True - - False - - False - False - False - True - False - False - False - False - False - False - False - False - 3081 - - 0 - 0 - 0 - False - 0 - - - True - 0 - - - rcBorland - 1000 - - False - False - False - False - [] - False - False - - - - False - False - False - True - True - True - False - False - %package_path% - - - - False - %modules_dcp_path% - True - - True - - False - True - False - False - True - 4194304 - False - False - False - True - %library_path% - 0 - True - 0 - 1048576 - 16384 - - True - True - %output_path% - False - - False - fa8 - True - False - %search_path% - True - True - False - False - WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; - - False - False - True - - - - - - 0 - - True - False - False - True - True - 0 - 1252 - 11 - Release - False - - - True - True - - False - - False - False - False - True - False - False - False - False - False - False - False - False - 3081 - - 0 - 0 - 0 - False - 0 - - - True - 0 - - - rcBorland - 1000 - - False - False - False - False - [] - False - False - - - - False - False - False - True - True - True - False - False - %package_path% - - - - False - %modules_dcp_path% - True - - True - - False - True - False - False - True - 4194304 - False - False - False - True - %library_path% - 0 - True - 0 - 1048576 - 16384 - - True - True - %output_path% - False - - False - fa8 - True - False - %search_path% - True - True - False - False - WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; - - False - False - True - - - - - - 0 - - True - False - False - True - True - 0 - 1252 - 11 - Release - False - - - True - True - - False - - False - False - False - True - False - False - False - False - False - False - False - False - 3081 - - 0 - 0 - 0 - False - 0 - - - True - 0 - - - rcBorland - 1000 - - False - False - False - False - [] - False - False - - - - False - False - False - True - True - True - False - False - %package_path% - - - - False - %modules_dcp_path% - True - - True - - False - True - False - False - True - 4194304 - False - False - False - True - %library_path% - 0 - True - 0 - 1048576 - 16384 - - True - True - %output_path% - False - - False - fa8 - True - False - %search_path% - True - True - False - False - WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; - - False - False - True - - - - - - - - 0 - - - - True - True - False - True - False - - 0 - True - 0 - 1000 - False - - - - 0 - - True - False - False - True - True - 0 - 1252 - 11 - Release - False - - - True - True - - False - - False - False - False - True - False - False - False - False - False - False - False - False - 3081 - - 0 - 0 - 0 - False - 0 - - - True - 0 - - - rcBorland - 1000 - - False - False - False - False - [] - False - False - - - - False - False - False - True - True - True - False - False - %package_path% - - - - False - %modules_dcp_path% - True - - True - - False - True - False - False - True - 4194304 - False - False - False - True - %library_path% - 0 - True - 0 - 1048576 - 16384 - - True - True - %output_path% - False - - False - fa8 - True - False - %search_path% - True - True - False - False - WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; - - False - False - True - - - - - - 0 - - True - False - False - True - True - 0 - 1252 - 11 - Release - False - - - True - True - - False - - False - False - False - True - False - False - False - False - False - False - False - False - 3081 - - 0 - 0 - 0 - False - 0 - - - True - 0 - - - rcBorland - 1000 - - False - False - False - False - [] - False - False - - - - False - False - False - True - True - True - False - False - %package_path% - - - - False - %modules_dcp_path% - True - - True - - False - True - False - False - True - 4194304 - False - False - False - True - %library_path% - 0 - True - 0 - 1048576 - 16384 - - True - True - %output_path% - False - - False - fa8 - True - False - %search_path% - True - True - False - False - WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; - - False - False - True - - - - - - 0 - - True - False - False - True - True - 0 - 1252 - 11 - Release - False - - - True - True - - False - - False - False - False - True - False - False - False - False - False - False - False - False - 3081 - - 0 - 0 - 0 - False - 0 - - - True - 0 - - - rcBorland - 1000 - - False - False - False - False - [] - False - False - - - - False - False - False - True - True - True - False - False - %package_path% - - - - False - %modules_dcp_path% - True - - True - - False - True - False - False - True - 4194304 - False - False - False - True - %library_path% - 0 - True - 0 - 1048576 - 16384 - - True - True - %output_path% - False - - False - fa8 - True - False - %search_path% - True - True - False - False - WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; - - False - False - True - - - - - - - 0 - - - - True - True - False - True - False - - 0 - True - 0 - 1000 - False - - - - 0 - - True - False - False - True - True - 0 - 1252 - 11 - Release - False - - - True - True - - False - - False - False - False - True - False - False - False - False - False - False - False - False - 3081 - - 0 - 0 - 0 - False - 0 - - - True - 0 - - - rcBorland - 1000 - - False - False - False - False - [] - False - False - - - - False - False - False - True - True - True - False - False - %package_path% - - - - False - %modules_dcp_path% - True - - True - - False - True - False - False - True - 4194304 - False - False - False - True - - - 0 - True - 0 - 1048576 - 16384 - - True - True - %output_path% - False - - False - fa8 - True - False - - True - True - False - False - WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; - - False - False - True - - - - - - 0 - - True - False - False - True - True - 0 - 1252 - 11 - Release - False - - - True - True - - False - - False - False - False - True - False - False - False - False - False - False - False - False - 3081 - - 0 - 0 - 0 - False - 0 - - - True - 0 - - - rcBorland - 1000 - - False - False - False - False - [] - False - False - - - - False - False - False - True - True - True - False - False - %package_path% - - - - False - %modules_dcp_path% - True - - True - - False - True - False - False - True - 4194304 - False - False - False - True - - - 0 - True - 0 - 1048576 - 16384 - - True - True - %output_path% - False - - False - fa8 - True - False - - True - True - False - False - WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; - - False - False - True - - - - - - 0 - - True - False - False - True - True - 0 - 1252 - 11 - Release - False - - - True - True - - False - - False - False - False - True - False - False - False - False - False - False - False - False - 3081 - - 0 - 0 - 0 - False - 0 - - - True - 0 - - - rcBorland - 1000 - - False - False - False - False - [] - False - False - - - - False - False - False - True - True - True - False - False - %package_path% - - - - False - %modules_dcp_path% - True - - True - - False - True - False - False - True - 4194304 - False - False - False - True - - - 0 - True - 0 - 1048576 - 16384 - - True - True - %output_path% - False - - False - fa8 - True - False - - True - True - False - False - WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; - - False - False - True - - - - - Relaciones - 0 - - Relaciones - True - True - False - True - False - - 0 - True - 0 - 1000 - False - - - - 0 - - True - False - False - True - True - 0 - 1252 - 11 - Release - False - - - True - True - - False - - False - False - False - True - False - False - False - False - False - False - False - False - 3081 - - 0 - 0 - 0 - False - 0 - - - True - 0 - - - rcBorland - 1000 - - False - False - False - False - [] - False - False - - - - False - False - False - True - True - True - False - False - %package_path% - - - - False - %modules_dcp_path% - True - - True - - False - True - False - False - True - 4194304 - False - False - False - True - %library_path% - 0 - True - 0 - 1048576 - 16384 - - True - True - %output_path% - False - - False - fa8 - True - False - %search_path% - True - True - False - False - WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; - - False - False - True - - - - - - 0 - - True - False - False - True - True - 0 - 1252 - 11 - Release - False - - - True - True - - False - - False - False - False - True - False - False - False - False - False - False - False - False - 3081 - - 0 - 0 - 0 - False - 0 - - - True - 0 - - - rcBorland - 1000 - - False - False - False - False - [] - False - False - - - - False - False - False - True - True - True - False - False - %package_path% - - - - False - %modules_dcp_path% - True - - True - - False - True - False - False - True - 4194304 - False - False - False - True - %library_path% - 0 - True - 0 - 1048576 - 16384 - - True - True - %output_path% - False - - False - fa8 - True - False - %search_path% - True - True - False - False - WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; - - False - False - True - - - - - - - - 0 - - True - False - False - True - True - 0 - 1252 - 11 - Release - False - - - True - True - - False - - False - False - False - True - False - False - False - False - False - False - False - False - 3081 - - 0 - 0 - 0 - False - 0 - - - True - 0 - - - rcBorland - 1000 - - False - False - False - False - [] - False - False - - - - False - False - False - True - True - True - False - False - %package_path% - - - - False - %modules_dcp_path% - True - - True - - False - True - False - False - True - 4194304 - False - False - False - True - - - 0 - True - 0 - 1048576 - 16384 - - True - True - %output_path% - False - - False - fa8 - True - False - - True - True - False - False - WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; - - False - False - True - - - - - - - - 0 - - True - False - False - True - True - 0 - 1252 - 11 - Release - False - - - True - True - - False - - False - False - False - True - False - False - False - False - False - False - False - False - 3081 - - 0 - 0 - 0 - False - 0 - - - True - 0 - - - rcBorland - 1000 - - False - False - False - False - [] - False - False - - - - False - False - False - True - True - True - False - False - %package_path% - - - - False - %modules_dcp_path% - True - - True - - False - True - False - False - True - 4194304 - False - False - False - True - - - 0 - True - 0 - 1048576 - 16384 - - True - True - %output_path% - False - - False - fa8 - True - False - - True - True - False - False - WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; - - False - False - True - - - - - - - - 0 - - True - False - False - True - True - 0 - 1252 - 11 - Release - False - - - True - True - - False - - False - False - False - True - False - False - False - False - False - False - False - False - 3081 - - 0 - 0 - 0 - False - 0 - - - True - 0 - - - rcBorland - 1000 - - False - False - False - False - [] - False - False - - - - False - False - False - True - True - True - False - False - %package_path% - - - - False - %modules_dcp_path% - True - - True - - False - True - False - False - True - 4194304 - False - False - False - True - - - 0 - True - 0 - 1048576 - 16384 - - True - True - %output_path% - False - - False - fa8 - True - False - - True - True - False - False - WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; - - False - False - True - - - - - - - - 0 - - True - False - False - True - True - 0 - 1252 - 11 - Release - False - - - True - True - - False - - False - False - False - True - False - False - False - False - False - False - False - False - 3081 - - 0 - 0 - 0 - False - 0 - - - True - 0 - - - rcBorland - 1000 - - False - False - False - False - [] - False - False - - - - False - False - False - True - True - True - False - False - %package_path% - - - - False - %modules_dcp_path% - True - - True - - False - True - False - False - True - 4194304 - False - False - False - True - - - 0 - True - 0 - 1048576 - 16384 - - True - True - %output_path% - False - - False - fa8 - True - False - - True - True - False - False - WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; - - False - False - True - - - - - - 0 - - True - False - False - True - True - 0 - 1252 - 11 - Release - False - - - True - True - - False - - False - False - False - True - False - False - False - False - False - False - False - False - 3081 - - 0 - 0 - 0 - False - 0 - - - True - 0 - - - rcBorland - 1000 - - False - False - False - False - [] - False - False - - - - False - False - False - True - True - True - False - False - %package_path% - - - - False - %modules_dcp_path% - True - - True - - False - True - False - False - True - 4194304 - False - False - False - True - - 0 - True - 0 - 1048576 - 16384 - - True - True - %output_path% - False - - False - fa8 - True - False - - True - True - False - False - WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; - - False - False - True - - - - - - 0 - - True - False - False - True - True - 0 - 1252 - 11 - Release - False - - - True - True - - False - - False - False - False - True - False - False - False - False - False - False - False - False - 3081 - - 0 - 0 - 0 - False - 0 - - - True - 0 - - - rcBorland - 1000 - - False - False - False - False - [] - False - False - - - - False - False - False - True - True - True - False - False - %package_path% - - - - False - %modules_dcp_path% - True - - True - - False - True - False - False - True - 4194304 - False - False - False - True - - - 0 - True - 0 - 1048576 - 16384 - - True - True - %output_path% - False - - False - fa8 - True - False - - True - True - False - False - WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; - - False - False - True - - - - - - 0 - - True - False - False - True - True - 0 - 1252 - 11 - Release - False - - - True - True - - False - - False - False - False - True - False - False - False - False - False - False - False - False - 3081 - - 0 - 0 - 0 - False - 0 - - - True - 0 - - - rcBorland - 1000 - - False - False - False - False - [] - False - False - - - - False - False - False - True - True - True - False - False - %package_path% - - - - False - %modules_dcp_path% - True - - True - - False - True - False - False - True - 4194304 - False - False - False - True - - - 0 - True - 0 - 1048576 - 16384 - - True - True - %output_path% - False - - False - fa8 - True - False - - True - True - False - False - WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; - - False - False - True - - - - - - - 0 - - - - True - True - False - True - False - - 0 - False - 0 - 1000 - False - - - - 0 - - True - False - False - True - True - 0 - 1252 - 11 - Release - False - - - True - True - - False - - False - False - False - True - False - False - False - False - False - False - False - False - 3081 - - 0 - 0 - 0 - False - 0 - - - True - 0 - - - rcBorland - 1000 - - False - False - False - False - [] - False - False - - - - False - False - False - True - True - True - False - False - %package_path% - - - - False - %modules_dcp_path% - True - - True - - False - True - False - False - True - 4194304 - False - False - False - True - %library_path% - 0 - True - 0 - 1048576 - 16384 - - True - True - %output_path% - False - - False - fa8 - True - False - %search_path% - True - True - False - False - WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; - - False - False - True - - - - - - 0 - - True - False - False - True - True - 0 - 1252 - 11 - Release - False - - - True - True - - False - - False - False - False - True - False - False - False - False - False - False - False - False - 3081 - - 0 - 0 - 0 - False - 0 - - - True - 0 - - - rcBorland - 1000 - - False - False - False - False - [] - False - False - - - - False - False - False - True - True - True - False - False - %package_path% - - - - False - %modules_dcp_path% - True - - True - - False - True - False - False - True - 4194304 - False - False - False - True - %library_path% - 0 - True - 0 - 1048576 - 16384 - - True - True - %output_path% - False - - False - fa8 - True - False - %search_path% - True - True - False - False - WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; - - False - False - True - - - - - - 0 - - True - False - False - True - True - 0 - 1252 - 11 - Release - False - - - True - True - - False - - False - False - False - True - False - False - False - False - False - False - False - False - 3081 - - 0 - 0 - 0 - False - 0 - - - True - 0 - - - rcBorland - 1000 - - False - False - False - False - [] - False - False - - - - False - False - False - True - True - True - False - False - %package_path% - - - - False - %modules_dcp_path% - True - - True - - False - True - False - False - True - 4194304 - False - False - False - True - %library_path% - 0 - True - 0 - 1048576 - 16384 - - True - True - %output_path% - False - - False - fa8 - True - False - %search_path% - True - True - False - False - WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; - - False - False - True - - - - - - 0 - - True - False - False - True - True - 0 - 1252 - 11 - Release - False - - - True - True - - False - - False - False - False - True - False - False - False - False - False - False - False - False - 3081 - - 0 - 0 - 0 - False - 0 - - - True - 0 - - - rcBorland - 1000 - - False - False - False - False - [] - False - False - - - - False - False - False - True - True - True - False - False - %package_path% - - - - False - %modules_dcp_path% - True - - True - - False - True - False - False - True - 4194304 - False - False - False - True - %library_path% - 0 - True - 0 - 1048576 - 16384 - - True - True - %output_path% - False - - False - fa8 - True - False - %search_path% - True - True - False - False - WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; - - False - False - True - - - - - - 0 - - True - False - False - True - True - 0 - 1252 - 11 - Release - False - - - True - True - - False - - False - False - False - True - False - False - False - False - False - False - False - False - 3081 - - 0 - 0 - 0 - False - 0 - - - True - 0 - - - rcBorland - 1000 - - False - False - False - False - [] - False - False - - - - False - False - False - True - True - True - False - False - %package_path% - - - - False - %modules_dcp_path% - True - - True - - False - True - False - False - True - 4194304 - False - False - False - True - %library_path% - 0 - True - 0 - 1048576 - 16384 - - True - True - %output_path% - False - - False - fa8 - True - False - %search_path% - True - True - False - False - WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; - - False - False - True - - - - - - 0 - - True - False - False - True - True - 0 - 1252 - 11 - Release - False - - - True - True - - False - - False - False - False - True - False - False - False - False - False - False - False - False - 3081 - - 0 - 0 - 0 - False - 0 - - - True - 0 - - - rcBorland - 1000 - - False - False - False - False - [] - False - False - - - - False - False - False - True - True - True - False - False - %package_path% - - - - False - %modules_dcp_path% - True - - True - - False - True - False - False - True - 4194304 - False - False - False - True - %library_path% - 0 - True - 0 - 1048576 - 16384 - - True - True - %output_path% - False - - False - fa8 - True - False - %search_path% - True - True - False - False - WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; - - False - False - True - - - - - - 0 - - True - False - False - True - True - 0 - 1252 - 11 - Release - False - - - True - True - - False - - False - False - False - True - False - False - False - False - False - False - False - False - 3081 - - 0 - 0 - 0 - False - 0 - %source_path%\Modulos\Inventario\Views\Inventario_view.dpk - True - 0 - - - rcBorland - 1000 - - False - False - False - False - [] - False - False - - - - False - False - False - True - True - True - False - False - %package_path% - - - - False - %modules_dcp_path% - True - - True - - False - True - False - False - True - 4194304 - False - False - False - True - %library_path% - 0 - True - 0 - 1048576 - 16384 - - True - True - %output_path% - False - - False - fa8 - True - False - %search_path% - True - True - False - False - WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; - - False - False - True - - - - - - 0 - - True - False - False - True - True - 0 - 1252 - 11 - Release - False - - - True - True - - False - - False - False - False - True - False - False - False - False - False - False - False - False - 3081 - - 0 - 0 - 0 - False - 0 - %source_path%\Modulos\Inventario\Plugin\Inventario_plugin.dpk - True - 0 - - - rcBorland - 1000 - - False - False - False - False - [] - False - False - - - - False - False - False - True - True - True - False - False - %package_path% - - - - False - %modules_dcp_path% - True - - True - - False - True - False - False - True - 4194304 - False - False - False - True - %library_path% - 0 - True - 0 - 1048576 - 16384 - - True - True - %output_path% - False - - False - fa8 - True - False - %search_path% - True - True - False - False - WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; - - False - False - True - - - - - - 0 - - True - False - False - True - True - 0 - 1252 - 11 - Release - False - - - True - True - - False - - False - False - False - True - False - False - False - False - False - False - False - False - 3081 - - 0 - 0 - 0 - False - 0 - - - True - 0 - - - rcBorland - 1000 - - False - False - False - False - [] - False - False - - - - False - False - False - True - True - True - False - False - %package_path% - - - - False - %modules_dcp_path% - True - - True - - False - True - False - False - True - 4194304 - False - False - False - True - %library_path% - 0 - True - 0 - 1048576 - 16384 - - True - True - %output_path% - False - - False - fa8 - True - False - %search_path% - True - True - False - False - WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; - - False - False - True - - - - - - 0 - - True - False - False - True - True - 0 - 1252 - 11 - Release - False - - - True - True - - False - - False - False - False - True - False - False - False - False - False - False - False - False - 3081 - - 0 - 0 - 0 - False - 0 - - - True - 0 - - - rcBorland - 1000 - - False - False - False - False - [] - False - False - - - - False - False - False - True - True - True - False - False - %package_path% - - - - False - %modules_dcp_path% - True - - True - - False - True - False - False - True - 4194304 - False - False - False - True - %library_path% - 0 - True - 0 - 1048576 - 16384 - - True - True - %output_path% - False - - False - fa8 - True - False - %search_path% - True - True - False - False - WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; - - False - False - True - - - - - - 0 - - True - False - False - True - True - 0 - 1252 - 11 - Release - False - - - True - True - - False - - False - False - False - True - False - False - False - False - False - False - False - False - 3081 - - 0 - 0 - 0 - False - 0 - - - True - 0 - - - rcBorland - 1000 - - False - False - False - False - [] - False - False - - - - False - False - False - True - True - True - False - False - %package_path% - - - - False - %modules_dcp_path% - True - - True - - False - True - False - False - True - 4194304 - False - False - False - True - %library_path% - 0 - True - 0 - 1048576 - 16384 - - True - True - %output_path% - False - - False - fa8 - True - False - %search_path% - True - True - False - False - WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; - - False - False - True - - - - - - 0 - - True - False - False - True - True - 0 - 1252 - 11 - Release - False - - - True - True - - False - - False - False - False - True - False - False - False - False - False - False - False - False - 3081 - - 0 - 0 - 0 - False - 0 - - - True - 0 - - - rcBorland - 1000 - - False - False - False - False - [] - False - False - - - - False - False - False - True - True - True - False - False - %package_path% - - - - False - %modules_dcp_path% - True - - True - - False - True - False - False - True - 4194304 - False - False - False - True - %library_path% - 0 - True - 0 - 1048576 - 16384 - - True - True - %output_path% - False - - False - fa8 - True - False - %search_path% - True - True - False - False - WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; - - False - False - True - - - - - - 0 - - True - False - False - True - True - 0 - 1252 - 11 - Release - False - - - True - True - - False - - False - False - False - True - False - False - False - False - False - False - False - False - 3081 - - 0 - 0 - 0 - False - 0 - - - True - 0 - - - rcBorland - 1000 - - False - False - False - False - [] - False - False - - - - False - False - False - True - True - True - False - False - %package_path% - - - - False - %modules_dcp_path% - True - - True - - False - True - False - False - True - 4194304 - False - False - False - True - %library_path% - 0 - True - 0 - 1048576 - 16384 - - True - True - %output_path% - False - - False - fa8 - True - False - %search_path% - True - True - False - False - WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; - - False - False - True - - - - - - 0 - - True - False - False - True - True - 0 - 1252 - 11 - Release - False - - - True - True - - False - - False - False - False - True - False - False - False - False - False - False - False - False - 3081 - - 0 - 0 - 0 - False - 0 - %source_path%\Modulos\Comisiones\Views\Comisiones_view.dpk - True - 0 - - - rcBorland - 1000 - - False - False - False - False - [] - False - False - - - - False - False - False - True - True - True - False - False - %package_path% - - - - False - %modules_dcp_path% - True - - True - - False - True - False - False - True - 4194304 - False - False - False - True - %library_path% - 0 - True - 0 - 1048576 - 16384 - - True - True - %output_path% - False - - False - fa8 - True - False - %search_path% - True - True - False - False - WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; - - False - False - True - - - - - - 0 - - True - False - False - True - True - 0 - 1252 - 11 - Release - False - - - True - True - - False - - False - False - False - True - False - False - False - False - False - False - False - False - 3081 - - 0 - 0 - 0 - False - 0 - %source_path%\Modulos\Comisiones\Plugin\Comisiones_plugin.dpk - True - 0 - - - rcBorland - 1000 - - False - False - False - False - [] - False - False - - - - False - False - False - True - True - True - False - False - %package_path% - - - - False - %modules_dcp_path% - True - - True - - False - True - False - False - True - 4194304 - False - False - False - True - %library_path% - 0 - True - 0 - 1048576 - 16384 - - True - True - %output_path% - False - - False - fa8 - True - False - %search_path% - True - True - False - False - WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; - - False - False - True - - - - - - 0 - - True - False - False - True - True - 0 - 1252 - 11 - Release - False - - - True - True - - False - - False - False - False - True - False - False - False - False - False - False - False - False - 3081 - - 0 - 0 - 0 - False - 0 - - - True - 0 - - - rcBorland - 1000 - - False - False - False - False - [] - False - False - - - - False - False - False - True - True - True - False - False - %package_path% - - - - False - %modules_dcp_path% - True - - True - - False - True - False - False - True - 4194304 - False - False - False - True - - - 0 - True - 0 - 1048576 - 16384 - - True - True - %output_path% - False - - False - fa8 - True - False - - True - True - False - False - WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; - - False - False - True - - - - - - 0 - - True - False - False - True - True - 0 - 1252 - 11 - Release - False - - - True - True - - False - - False - False - False - True - False - False - False - False - False - False - False - False - 3081 - - 0 - 0 - 0 - False - 0 - - - True - 0 - - - rcBorland - 1000 - - False - False - False - False - [] - False - False - - - - False - False - False - True - True - True - False - False - %package_path% - - - - False - %modules_dcp_path% - True - - True - - False - True - False - False - True - 4194304 - False - False - False - True - - - 0 - True - 0 - 1048576 - 16384 - - True - True - %output_path% - False - - False - fa8 - True - False - - True - True - False - False - WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; - - False - False - True - - - - - - 0 - - True - False - False - True - True - 0 - 1252 - 11 - Release - False - - - True - True - - False - - False - False - False - True - False - False - False - False - False - False - False - False - 3081 - - 0 - 0 - 0 - False - 0 - - - True - 0 - - - rcBorland - 1000 - - False - False - False - False - [] - False - False - - - - False - False - False - True - True - True - False - False - %package_path% - - - - False - %modules_dcp_path% - True - - True - - False - True - False - False - True - 4194304 - False - False - False - True - - - 0 - True - 0 - 1048576 - 16384 - - True - True - %output_path% - False - - False - fa8 - True - False - - True - True - False - False - WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; - - False - False - True - - - - - - 0 - - True - False - False - True - True - 0 - 1252 - 11 - Release - False - - - True - True - - False - - False - False - False - True - False - False - False - False - False - False - False - False - 3081 - - 0 - 0 - 0 - False - 0 - - - True - 0 - - - rcBorland - 1000 - - False - False - False - False - [] - False - False - - - - False - False - False - True - True - True - False - False - %package_path% - - - - False - %modules_dcp_path% - True - - True - - False - True - False - False - True - 4194304 - False - False - False - True - - - 0 - True - 0 - 1048576 - 16384 - - True - True - %output_path% - False - - False - fa8 - True - False - - True - True - False - False - WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; - - False - False - True - - - - - - 0 - - True - False - False - True - True - 0 - 1252 - 11 - Release - False - - - True - True - - False - - False - False - False - True - False - False - False - False - False - False - False - False - 3081 - - 0 - 0 - 0 - False - 0 - - - True - 0 - - - rcBorland - 1000 - - False - False - False - False - [] - False - False - - - - False - False - False - True - True - True - False - False - %package_path% - - - - False - %modules_dcp_path% - True - - True - - False - True - False - False - True - 4194304 - False - False - False - True - - - 0 - True - 0 - 1048576 - 16384 - - True - True - %output_path% - False - - False - fa8 - True - False - - True - True - False - False - WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; - - False - False - True - - - - - - 0 - - True - False - False - True - True - 0 - 1252 - 11 - Release - False - - - True - True - - False - - False - False - False - True - False - False - False - False - False - False - False - False - 3081 - - 0 - 0 - 0 - False - 0 - - - True - 0 - - - rcBorland - 1000 - - False - False - False - False - [] - False - False - - - - False - False - False - True - True - True - False - False - %package_path% - - - - False - %modules_dcp_path% - True - - True - - False - True - False - False - True - 4194304 - False - False - False - True - - - 0 - True - 0 - 1048576 - 16384 - - True - True - %output_path% - False - - False - fa8 - True - False - - True - True - False - False - WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; - - False - False - True - - - - - - - 0 - - - - True - True - False - True - False - - 0 - False - 0 - 1000 - False - - - - 0 - - True - False - False - True - True - 0 - 1252 - 11 - Release - False - - - True - True - - False - - False - False - False - True - False - False - False - False - False - False - False - False - 3081 - - 0 - 0 - 0 - False - 0 - - - True - 0 - - - rcBorland - 1000 - - False - False - False - False - [] - False - False - - - - False - False - False - True - True - True - False - False - %package_path% - - - - False - %modules_dcp_path% - True - - True - - False - True - False - False - True - 4194304 - False - False - False - True - %library_path% - 0 - True - 0 - 1048576 - 16384 - - True - True - %output_path% - False - - False - fa8 - True - False - %search_path% - True - True - False - False - WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; - - False - False - True - - - - - - 0 - - True - False - False - True - True - 0 - 1252 - 11 - Release - False - - - True - True - - False - - False - False - False - True - False - False - False - False - False - False - False - False - 3081 - - 0 - 0 - 0 - False - 0 - - - True - 0 - - - rcBorland - 1000 - - False - False - False - False - [] - False - False - - - - False - False - False - True - True - True - False - False - %package_path% - - - - False - %modules_dcp_path% - True - - True - - False - True - False - False - True - 4194304 - False - False - False - True - %library_path% - 0 - True - 0 - 1048576 - 16384 - - True - True - %output_path% - False - - False - fa8 - True - False - %search_path% - True - True - False - False - WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; - - False - False - True - - - - - - 0 - - True - False - False - True - True - 0 - 1252 - 11 - Release - False - - - True - True - - False - - False - False - False - True - False - False - False - False - False - False - False - False - 3081 - - 0 - 0 - 0 - False - 0 - - - True - 0 - - - rcBorland - 1000 - - False - False - False - False - [] - False - False - - - - False - False - False - True - True - True - False - False - %package_path% - - - - False - %modules_dcp_path% - True - - True - - False - True - False - False - True - 4194304 - False - False - False - True - %library_path% - 0 - True - 0 - 1048576 - 16384 - - True - True - %output_path% - False - - False - fa8 - True - False - %search_path% - True - True - False - False - WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; - - False - False - True - - - - - - 0 - - True - False - False - True - True - 0 - 1252 - 11 - Release - False - - - True - True - - False - - False - False - False - True - False - False - False - False - False - False - False - False - 3081 - - 0 - 0 - 0 - False - 0 - - - True - 0 - - - rcBorland - 1000 - - False - False - False - False - [] - False - False - - - - False - False - False - True - True - True - False - False - %package_path% - - - - False - %modules_dcp_path% - True - - True - - False - True - False - False - True - 4194304 - False - False - False - True - %library_path% - 0 - True - 0 - 1048576 - 16384 - - True - True - %output_path% - False - - False - fa8 - True - False - %search_path% - True - True - False - False - WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; - - False - False - True - - - - - - 0 - - True - False - False - True - True - 0 - 1252 - 11 - Release - False - - - True - True - - False - - False - False - False - True - False - False - False - False - False - False - False - False - 3081 - - 0 - 0 - 0 - False - 0 - - - True - 0 - - - rcBorland - 1000 - - False - False - False - False - [] - False - False - - - - False - False - False - True - True - True - False - False - %package_path% - - - - False - %modules_dcp_path% - True - - True - - False - True - False - False - True - 4194304 - False - False - False - True - %library_path% - 0 - True - 0 - 1048576 - 16384 - - True - True - %output_path% - False - - False - fa8 - True - False - %search_path% - True - True - False - False - WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; - - False - False - True - - - - - - - 0 - - - - True - True - False - True - False - - 0 - False - 0 - 1000 - False - - - - 0 - - True - False - False - True - True - 0 - 1252 - 11 - Release - False - - - True - True - - False - - False - False - False - True - False - False - False - False - False - False - False - False - 3081 - - 0 - 0 - 0 - False - 0 - - - True - 0 - - - rcBorland - 1000 - - False - False - False - False - [] - False - False - - - - False - False - False - True - True - True - False - False - %package_path% - - - - False - %modules_dcp_path% - True - - True - - False - True - False - False - True - 4194304 - False - False - False - True - %library_path% - 0 - True - 0 - 1048576 - 16384 - - True - True - %output_path% - False - - False - fa8 - True - False - %search_path% - True - True - False - False - WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; - - False - False - True - - - - - - 0 - - True - False - False - True - True - 0 - 1252 - 11 - Release - False - - - True - True - - False - - False - False - False - True - False - False - False - False - False - False - False - False - 3081 - - 0 - 0 - 0 - False - 0 - - - True - 0 - - - rcBorland - 1000 - - False - False - False - False - [] - False - False - - - - False - False - False - True - True - True - False - False - %package_path% - - - - False - %modules_dcp_path% - True - - True - - False - True - False - False - True - 4194304 - False - False - False - True - %library_path% - 0 - True - 0 - 1048576 - 16384 - - True - True - %output_path% - False - - False - fa8 - True - False - %search_path% - True - True - False - False - WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; - - False - False - True - - - - - - 0 - - True - False - False - True - True - 0 - 1252 - 11 - Release - False - - - True - True - - False - - False - False - False - True - False - False - False - False - False - False - False - False - 3081 - - 0 - 0 - 0 - False - 0 - - - True - 0 - - - rcBorland - 1000 - - False - False - False - False - [] - False - False - - - - False - False - False - True - True - True - False - False - %package_path% - - - - False - %modules_dcp_path% - True - - True - - False - True - False - False - True - 4194304 - False - False - False - True - %library_path% - 0 - True - 0 - 1048576 - 16384 - - True - True - %output_path% - False - - False - fa8 - True - False - %search_path% - True - True - False - False - WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; - - False - False - True - - - - - - 0 - - True - False - False - True - True - 0 - 1252 - 11 - Release - False - - - True - True - - False - - False - False - False - True - False - False - False - False - False - False - False - False - 3081 - - 0 - 0 - 0 - False - 0 - - - True - 0 - - - rcBorland - 1000 - - False - False - False - False - [] - False - False - - - - False - False - False - True - True - True - False - False - %package_path% - - - - False - %modules_dcp_path% - True - - True - - False - True - False - False - True - 4194304 - False - False - False - True - %library_path% - 0 - True - 0 - 1048576 - 16384 - - True - True - %output_path% - False - - False - fa8 - True - False - %search_path% - True - True - False - False - WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; - - False - False - True - - - - - - 0 - - True - False - False - True - True - 0 - 1252 - 11 - Release - False - - - True - True - - False - - False - False - False - True - False - False - False - False - False - False - False - False - 3081 - - 0 - 0 - 0 - False - 0 - - - True - 0 - - - rcBorland - 1000 - - False - False - False - False - [] - False - False - - - - False - False - False - True - True - True - False - False - %package_path% - - - - False - %modules_dcp_path% - True - - True - - False - True - False - False - True - 4194304 - False - False - False - True - %library_path% - 0 - True - 0 - 1048576 - 16384 - - True - True - %output_path% - False - - False - fa8 - True - False - %search_path% - True - True - False - False - WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; - - False - False - True - - - - - Referencias - 0 - - Referencias - True - True - False - True - False - - 0 - False - 0 - 1000 - False - - - - 0 - - True - False - False - True - True - 0 - 1252 - 11 - Release - False - - - True - True - - False - - False - False - False - True - False - False - False - False - False - False - False - False - 3081 - - 0 - 0 - 0 - False - 0 - %source_path%\Modulos\Referencias\Model\Referencias_model.dpk - True - 0 - - - rcBorland - 1000 - - False - False - False - False - [] - False - False - - - - False - False - False - True - True - True - False - False - %package_path% - - - - False - %modules_dcp_path% - True - - True - - False - True - False - False - True - 4194304 - False - False - False - True - %library_path% - 0 - True - 0 - 1048576 - 16384 - - True - True - %output_path% - False - - False - fa8 - True - False - %search_path% - True - True - False - False - WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; - - False - False - True - - - - - - 0 - - True - False - False - True - True - 0 - 1252 - 11 - Release - False - - - True - True - - False - - False - False - False - True - False - False - False - False - False - False - False - False - 3081 - - 0 - 0 - 0 - False - 0 - %source_path%\Modulos\Referencias\Data\Referencias_data.dpk - True - 0 - - - rcBorland - 1000 - - False - False - False - False - [] - False - False - - - - False - False - False - True - True - True - False - False - %package_path% - - - - False - %modules_dcp_path% - True - - True - - False - True - False - False - True - 4194304 - False - False - False - True - %library_path% - 0 - True - 0 - 1048576 - 16384 - - True - True - %output_path% - False - - False - fa8 - True - False - %search_path% - True - True - False - False - WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; - - False - False - True - - - - - - 0 - - True - False - False - True - True - 0 - 1252 - 11 - Release - False - - - True - True - - False - - False - False - False - True - False - False - False - False - False - False - False - False - 3081 - - 0 - 0 - 0 - False - 0 - %source_path%\Modulos\Referencias\Controller\Referencias_controller.dpk - True - 0 - - - rcBorland - 1000 - - False - False - False - False - [] - False - False - - - - False - False - False - True - True - True - False - False - %package_path% - - - - False - %modules_dcp_path% - True - - True - - False - True - False - False - True - 4194304 - False - False - False - True - %library_path% - 0 - True - 0 - 1048576 - 16384 - - True - True - %output_path% - False - - False - fa8 - True - False - %search_path% - True - True - False - False - WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; - - False - False - True - - - - - - 0 - - True - False - False - True - True - 0 - 1252 - 11 - Release - False - - - True - True - - False - - False - False - False - True - False - False - False - False - False - False - False - False - 3081 - - 0 - 0 - 0 - False - 0 - %source_path%\Modulos\Referencias\Views\Referencias_view.dpk - True - 0 - - - rcBorland - 1000 - - False - False - False - False - [] - False - False - - - - False - False - False - True - True - True - False - False - %package_path% - - - - False - %modules_dcp_path% - True - - True - - False - True - False - False - True - 4194304 - False - False - False - True - %library_path% - 0 - True - 0 - 1048576 - 16384 - - True - True - %output_path% - False - - False - fa8 - True - False - %search_path% - True - True - False - False - WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; - - False - False - True - - - - - - 0 - - True - False - False - True - True - 0 - 1252 - 11 - Release - False - - - True - True - - False - - False - False - False - True - False - False - False - False - False - False - False - False - 3081 - - 0 - 0 - 0 - False - 0 - %source_path%\Modulos\Referencias\Plugin\Referencias_plugin.dpk - True - 0 - - - rcBorland - 1000 - - False - False - False - False - [] - False - False - - - - False - False - False - True - True - True - False - False - %package_path% - - - - False - %modules_dcp_path% - True - - True - - False - True - False - False - True - 4194304 - False - False - False - True - %library_path% - 0 - True - 0 - 1048576 - 16384 - - True - True - %output_path% - False - - False - fa8 - True - False - %search_path% - True - True - False - False - WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; - - False - False - True - - - - - - - 0 - - - - True - True - False - True - False - - 0 - False - 0 - 1000 - False - - - - 0 - - True - False - False - True - True - 0 - 1252 - 11 - Release - False - - - True - True - - False - - False - False - False - True - False - False - False - False - False - False - False - False - 3081 - - 0 - 0 - 0 - False - 0 - - - True - 0 - - - rcBorland - 1000 - - False - False - False - False - [] - False - False - - - - False - False - False - True - True - True - False - False - %package_path% - - - - False - %modules_dcp_path% - True - - True - - False - True - False - False - True - 4194304 - False - False - False - True - %library_path% - 0 - True - 0 - 1048576 - 16384 - - True - True - %output_path% - False - - False - fa8 - True - False - %search_path% - True - True - False - False - WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; - - False - False - True - - - - - - 0 - - True - False - False - True - True - 0 - 1252 - 11 - Release - False - - - True - True - - False - - False - False - False - True - False - False - False - False - False - False - False - False - 3081 - - 0 - 0 - 0 - False - 0 - - - True - 0 - - - rcBorland - 1000 - - False - False - False - False - [] - False - False - - - - False - False - False - True - True - True - False - False - %package_path% - - - - False - %modules_dcp_path% - True - - True - - False - True - False - False - True - 4194304 - False - False - False - True - %library_path% - 0 - True - 0 - 1048576 - 16384 - - True - True - %output_path% - False - - False - fa8 - True - False - %search_path% - True - True - False - False - WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; - - False - False - True - - - - - - 0 - - True - False - False - True - True - 0 - 1252 - 11 - Release - False - - - True - True - - False - - False - False - False - True - False - False - False - False - False - False - False - False - 3081 - - 0 - 0 - 0 - False - 0 - - - True - 0 - - - rcBorland - 1000 - - False - False - False - False - [] - False - False - - - - False - False - False - True - True - True - False - False - %package_path% - - - - False - %modules_dcp_path% - True - - True - - False - True - False - False - True - 4194304 - False - False - False - True - %library_path% - 0 - True - 0 - 1048576 - 16384 - - True - True - %output_path% - False - - False - fa8 - True - False - %search_path% - True - True - False - False - WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; - - False - False - True - - - - - - 0 - - True - False - False - True - True - 0 - 1252 - 11 - Release - False - - - True - True - - False - - False - False - False - True - False - False - False - False - False - False - False - False - 3081 - - 0 - 0 - 0 - False - 0 - - - True - 0 - - - rcBorland - 1000 - - False - False - False - False - [] - False - False - - - - False - False - False - True - True - True - False - False - %package_path% - - - - False - %modules_dcp_path% - True - - True - - False - True - False - False - True - 4194304 - False - False - False - True - %library_path% - 0 - True - 0 - 1048576 - 16384 - - True - True - %output_path% - False - - False - fa8 - True - False - %search_path% - True - True - False - False - WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; - - False - False - True - - - - - - 0 - - True - False - False - True - True - 0 - 1252 - 11 - Release - False - - - True - True - - False - - False - False - False - True - False - False - False - False - False - False - False - False - 3081 - - 0 - 0 - 0 - False - 0 - - - True - 0 - - - rcBorland - 1000 - - False - False - False - False - [] - False - False - - - - False - False - False - True - True - True - False - False - %package_path% - - - - False - %modules_dcp_path% - True - - True - - False - True - False - False - True - 4194304 - False - False - False - True - %library_path% - 0 - True - 0 - 1048576 - 16384 - - True - True - %output_path% - False - - False - fa8 - True - False - %search_path% - True - True - False - False - WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; - - False - False - True - - - - - - 0 - - True - False - False - True - True - 0 - 1252 - 11 - Release - False - - - True - True - - False - - False - False - False - True - False - False - False - False - False - False - False - False - 3081 - - 0 - 0 - 0 - False - 0 - - - True - 0 - - - rcBorland - 1000 - - False - False - False - False - [] - False - False - - - - False - False - False - True - True - True - False - False - %package_path% - - - - False - %modules_dcp_path% - True - - True - - False - True - False - False - True - 4194304 - False - False - False - True - %library_path% - 0 - True - 0 - 1048576 - 16384 - - True - True - %output_path% - False - - False - fa8 - True - False - %search_path% - True - True - False - False - WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; - - False - False - True - - - - - - 0 - - True - False - False - True - True - 0 - 1252 - 11 - Release - False - - - True - True - - False - - False - False - False - True - False - False - False - False - False - False - False - False - 3081 - - 0 - 0 - 0 - False - 0 - - - True - 0 - - - rcBorland - 1000 - - False - False - False - False - [] - False - False - - - - False - False - False - True - True - True - False - False - %package_path% - - - - False - %modules_dcp_path% - True - - True - - False - True - False - False - True - 4194304 - False - False - False - True - %library_path% - 0 - True - 0 - 1048576 - 16384 - - True - True - %output_path% - False - - False - fa8 - True - False - %search_path% - True - True - False - False - WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; - - False - False - True - - - - - - - 0 - - - - True - True - False - True - False - - 0 - False - 0 - 1000 - False - - - - 0 - - True - False - False - True - True - 0 - 1252 - 11 - Release - False - - - True - True - - False - - False - False - False - True - False - False - False - False - False - False - False - False - 3081 - - 0 - 0 - 0 - False - 0 - - - True - 0 - - - rcBorland - 1000 - - False - False - False - False - [] - False - False - - - - False - False - False - True - True - True - False - False - %package_path% - - - - False - %modules_dcp_path% - True - - True - - False - True - False - False - True - 4194304 - False - False - False - True - %library_path% - 0 - True - 0 - 1048576 - 16384 - - True - True - %output_path% - False - - False - fa8 - True - False - %search_path% - True - True - False - False - WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; - - False - False - True - - - - - - 0 - - True - False - False - True - True - 0 - 1252 - 11 - Release - False - - - True - True - - False - - False - False - False - True - False - False - False - False - False - False - False - False - 3081 - - 0 - 0 - 0 - False - 0 - - - True - 0 - - - rcBorland - 1000 - - False - False - False - False - [] - False - False - - - - False - False - False - True - True - True - False - False - %package_path% - - - - False - %modules_dcp_path% - True - - True - - False - True - False - False - True - 4194304 - False - False - False - True - %library_path% - 0 - True - 0 - 1048576 - 16384 - - True - True - %output_path% - False - - False - fa8 - True - False - %search_path% - True - True - False - False - WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; - - False - False - True - - - - - - 0 - - True - False - False - True - True - 0 - 1252 - 11 - Release - False - - - True - True - - False - - False - False - False - True - False - False - False - False - False - False - False - False - 3081 - - 0 - 0 - 0 - False - 0 - - - True - 0 - - - rcBorland - 1000 - - False - False - False - False - [] - False - False - - - - False - False - False - True - True - True - False - False - %package_path% - - - - False - %modules_dcp_path% - True - - True - - False - True - False - False - True - 4194304 - False - False - False - True - %library_path% - 0 - True - 0 - 1048576 - 16384 - - True - True - %output_path% - False - - False - fa8 - True - False - %search_path% - True - True - False - False - WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; - - False - False - True - - - - - - 0 - - True - False - False - True - True - 0 - 1252 - 11 - Release - False - - - True - True - - False - - False - False - False - True - False - False - False - False - False - False - False - False - 3081 - - 0 - 0 - 0 - False - 0 - - - True - 0 - - - rcBorland - 1000 - - False - False - False - False - [] - False - False - - - - False - False - False - True - True - True - False - False - %package_path% - - - - False - %modules_dcp_path% - True - - True - - False - True - False - False - True - 4194304 - False - False - False - True - %library_path% - 0 - True - 0 - 1048576 - 16384 - - True - True - %output_path% - False - - False - fa8 - True - False - %search_path% - True - True - False - False - WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; - - False - False - True - - - - - - 0 - - True - False - False - True - True - 0 - 1252 - 11 - Release - False - - - True - True - - False - - False - False - False - True - False - False - False - False - False - False - False - False - 3081 - - 0 - 0 - 0 - False - 0 - - - True - 0 - - - rcBorland - 1000 - - False - False - False - False - [] - False - False - - - - False - False - False - True - True - True - False - False - %package_path% - - - - False - %modules_dcp_path% - True - - True - - False - True - False - False - True - 4194304 - False - False - False - True - %library_path% - 0 - True - 0 - 1048576 - 16384 - - True - True - %output_path% - False - - False - fa8 - True - False - %search_path% - True - True - False - False - WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; - - False - False - True - - - - - - - 0 - - - - True - True - False - True - False - - 0 - False - 0 - 1000 - False - - - - 0 - - True - False - False - True - True - 0 - 1252 - 11 - Release - False - - - True - True - - False - - False - False - False - True - False - False - False - False - False - False - False - False - 3081 - - 0 - 0 - 0 - False - 0 - - - True - 0 - - - rcBorland - 1000 - - False - False - False - False - [] - False - False - - - - False - False - False - True - True - True - False - False - %package_path% - - - - False - %modules_dcp_path% - True - - True - - False - True - False - False - True - 4194304 - False - False - False - True - %library_path% - 0 - True - 0 - 1048576 - 16384 - - True - True - %output_path% - False - - False - fa8 - True - False - %search_path% - True - True - False - False - WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; - - False - False - True - - - - - - 0 - - True - False - False - True - True - 0 - 1252 - 11 - Release - False - - - True - True - - False - - False - False - False - True - False - False - False - False - False - False - False - False - 3081 - - 0 - 0 - 0 - False - 0 - - - True - 0 - - - rcBorland - 1000 - - False - False - False - False - [] - False - False - - - - False - False - False - True - True - True - False - False - %package_path% - - - - False - %modules_dcp_path% - True - - True - - False - True - False - False - True - 4194304 - False - False - False - True - %library_path% - 0 - True - 0 - 1048576 - 16384 - - True - True - %output_path% - False - - False - fa8 - True - False - %search_path% - True - True - False - False - WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; - - False - False - True - - - - - - 0 - - True - False - False - True - True - 0 - 1252 - 11 - Release - False - - - True - True - - False - - False - False - False - True - False - False - False - False - False - False - False - False - 3081 - - 0 - 0 - 0 - False - 0 - - - True - 0 - - - rcBorland - 1000 - - False - False - False - False - [] - False - False - - - - False - False - False - True - True - True - False - False - %package_path% - - - - False - %modules_dcp_path% - True - - True - - False - True - False - False - True - 4194304 - False - False - False - True - %library_path% - 0 - True - 0 - 1048576 - 16384 - - True - True - %output_path% - False - - False - fa8 - True - False - %search_path% - True - True - False - False - WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; - - False - False - True - - - - - - 0 - - True - False - False - True - True - 0 - 1252 - 11 - Release - False - - - True - True - - False - - False - False - False - True - False - False - False - False - False - False - False - False - 3081 - - 0 - 0 - 0 - False - 0 - - - True - 0 - - - rcBorland - 1000 - - False - False - False - False - [] - False - False - - - - False - False - False - True - True - True - False - False - %package_path% - - - - False - %modules_dcp_path% - True - - True - - False - True - False - False - True - 4194304 - False - False - False - True - %library_path% - 0 - True - 0 - 1048576 - 16384 - - True - True - %output_path% - False - - False - fa8 - True - False - %search_path% - True - True - False - False - WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; - - False - False - True - - - - - - 0 - - True - False - False - True - True - 0 - 1252 - 11 - Release - False - - - True - True - - False - - False - False - False - True - False - False - False - False - False - False - False - False - 3081 - - 0 - 0 - 0 - False - 0 - - - True - 0 - - - rcBorland - 1000 - - False - False - False - False - [] - False - False - - - - False - False - False - True - True - True - False - False - %package_path% - - - - False - %modules_dcp_path% - True - - True - - False - True - False - False - True - 4194304 - False - False - False - True - %library_path% - 0 - True - 0 - 1048576 - 16384 - - True - True - %output_path% - False - - False - fa8 - True - False - %search_path% - True - True - False - False - WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; - - False - False - True - - - - - - Cliente - 0 - - Cliente - True - True - False - True - False - - 0 - False - 0 - 1000 - False - - - - 0 - - True - False - False - True - True - 0 - 1252 - 11 - Release - False - - - True - True - - False - %source_path%\Iconos\Factuges.ico - False - False - True - True - False - False - False - False - False - False - False - False - 3082 - - 2 - 0 - 1 - False - 0 - %source_path%\Cliente\FactuGES.dpr - True - 0 - - - rcBorland - 1000 - %source_path%\Cliente\ - False - False - False - False - [usPackages,usVersionInfo] - False - False - - - - False - False - False - True - True - True - False - False - %output_path% - - - - False - - True - - True - - False - True - False - False - True - 4194304 - False - False - False - True - %library_path% - 0 - True - 0 - 1048576 - 16384 - - True - True - %output_path%\Cliente - False - pluginsdk_d10r;guisdk_d10;dataabstract_d10;base;guibase;usuarios;contactos_plugin;empresas_plugin;empresas_controller;empresas_model;rtl - False - fa8 - True - False - %search_path% - True - True - False - False - WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; - - False - True - True - - - - - - - 0 - - - - True - True - False - True - False - - 0 - False - 0 - 1000 - False - - - - 0 - {A78530B0-8E25-4ACF-BCD0-410E385473A0} - - - True - False - True - False - True - False - - 0 - False - 0 - 1000 - False - True - 2 - %output_path%\Debug\Servidor\FactuGES_Server.exe - - True - True - False - True - True - True - False - False - False - - - - - 0 - {A78530B0-8E25-4ACF-BCD0-410E385473A0} - - - True - False - True - False - True - False - - 0 - False - 0 - 1000 - False - True - 2 - %output_path%\Debug\Cliente\FactuGES.exe - - True - True - False - True - True - True - False - False - False - - - - - - 0 - - True - False - True - efHTML - False - True - True - True - True - True - True - True - True - False - - 0 - False - - - %project_path%\Build\buildlog.html - 0 - 1000 - False - - - - - - True - False - OnFailure - {BA6B406D-5FE5-4FF9-8D33-0459EBECDF95} - - FinalBuilderAction - 0 - - True - True - False - True - False - - 0 - False - 0 - 1000 - False - - - - - Project - - %project_path%\Output\Debug - True - False - False - output_path - vtProject - - - - False - False - False - search_path - vtProject - - - - - False - False - False - library_path - vtProject - - - %output_path%\Cliente - True - False - False - package_path - vtProject - - - - - True - False - False - project_path - vtProject - - - %source_path%\Modulos\Lib - True - False - False - modules_dcp_path - vtProject - - - %source_path%\Lib - True - False - False - base_dcp_path - vtProject - - - %DELPHI2006% - False - True - False - DELPHI - vtProject - - - %project_path%\Source - True - False - False - source_path - vtProject - - - - diff --git a/Build/BuildRoberto.fbv b/Build/BuildRoberto.fbv deleted file mode 100644 index 03bd93ba..00000000 --- a/Build/BuildRoberto.fbv +++ /dev/null @@ -1 +0,0 @@ - diff --git a/Build/BuildRoberto.fbw b/Build/BuildRoberto.fbw deleted file mode 100644 index e69de29b..00000000 diff --git a/Database/SCRIPT para migración tecsitel.TXT b/Database/Anterior/SCRIPT para migración tecsitel.TXT similarity index 100% rename from Database/SCRIPT para migración tecsitel.TXT rename to Database/Anterior/SCRIPT para migración tecsitel.TXT diff --git a/Database/VISTAS.SQL b/Database/Anterior/VISTAS.SQL similarity index 100% rename from Database/VISTAS.SQL rename to Database/Anterior/VISTAS.SQL diff --git a/Database/factuges.sql b/Database/Anterior/factuges.sql similarity index 100% rename from Database/factuges.sql rename to Database/Anterior/factuges.sql diff --git a/Database/FACTUGES.FDB b/Database/FACTUGES.FDB index 63e2b242..b2bac923 100644 Binary files a/Database/FACTUGES.FDB and b/Database/FACTUGES.FDB differ diff --git a/Database/FACTUGES_USERSCONTROL.FDB b/Database/FACTUGES_USERSCONTROL.FDB new file mode 100644 index 00000000..d790511a Binary files /dev/null and b/Database/FACTUGES_USERSCONTROL.FDB differ diff --git a/Database/RodaxSoftware.FactuGES.Database.proj b/Database/RodaxSoftware.FactuGES.Database.proj new file mode 100644 index 00000000..a208f99b --- /dev/null +++ b/Database/RodaxSoftware.FactuGES.Database.proj @@ -0,0 +1,57 @@ + + + + + %22 + + + + localhost + false + $(MSBuildProjectDirectory)\Scripts + $(MSBuildProjectDirectory)\..\Tools + $(MSBuildProjectDirectory)\..\Output + $(ToolsFolder)\ISQL\isql.exe + Debug + + + + $(CodeOutputFolder)\Debug\Database + + + $(CodeOutputFolder)\Release\Database + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/Database/_db_enviroment.bat b/Database/_db_enviroment.bat new file mode 100644 index 00000000..e82b9760 --- /dev/null +++ b/Database/_db_enviroment.bat @@ -0,0 +1,14 @@ +rem Full path to the firebird isql utility. +SET ISQL="..\Tools\ISQL\isql.exe" + +SET DB_LOGIN=-USER SYSDBA -PASSWORD masterkey + +rem DB ALIAS +SET DB_ALIAS=FACTUGES.FDB +SET DB_ALIAS_TEST=FACTUGES_TEST.FDB + +set DB_SQL_SCRIPT=scripts\factuges.sql +set DB_SQL_SYSDATA=scripts\factuges.sql + +set DB_DEBUG_PATH=..\output\debug\database +set DB_RELEASE_PATH=..\output\release\database \ No newline at end of file diff --git a/Database/db_execute.bat b/Database/db_execute.bat new file mode 100644 index 00000000..f374007c --- /dev/null +++ b/Database/db_execute.bat @@ -0,0 +1,67 @@ +rem @echo off +call _db_enviroment.bat + +if "%1" == "drop" goto drop +if "%1" == "create" goto create +if "%1" == "extract" goto extract +if "%1" == "insert_data" goto insert_data +if "%1" == "recreate" goto recreate +goto ayuda + +:recreate +call %0 drop +IF %ERRORLEVEL% == 1 GOTO ERROR +call %0 create +IF %ERRORLEVEL% == 1 GOTO ERROR +call %0 insert_data +IF %ERRORLEVEL% == 1 GOTO ERROR +goto end + +:drop +echo Borrando la base de datos %DB_ALIAS%... +IF EXIST "%DB_DEBUG_PATH%\%DB_ALIAS%" DEL %DB_DEBUG_PATH%\%DB_ALIAS% +IF %ERRORLEVEL% == 1 GOTO ERROR +goto done + +:create +echo Creando la base de datos %DB_ALIAS% en %DB_DEBUG_PATH%\%DB_ALIAS% +%ISQL% -i %DB_SQL_SCRIPT% %DB_LOGIN% -q +IF %ERRORLEVEL% == 1 GOTO ERROR +move %DB_ALIAS% "%DB_DEBUG_PATH%" +goto done + +:extract +echo Extrayendo %DB_ALIAS% al script SQL %DB_SQL_SCRIPT%... +IF EXIST %DB_SQL_SCRIPT% DEL %DB_SQL_SCRIPT% +%ISQL% -a -d %DB_ALIAS% %DB_LOGIN% -o %DB_SQL_SCRIPT% %DB_DEBUG_PATH%\%DB_ALIAS% -b +IF %ERRORLEVEL% == 1 GOTO ERROR +goto done + +:insert_data +echo Insertando datos del sistema en %DB_ALIAS%... +%ISQL% -i %DB_SQL_SYSDATA% %DB_LOGIN% %DB_DEBUG_PATH%\%DB_ALIAS% +IF %ERRORLEVEL% == 1 GOTO ERROR +goto done + +:error +ECHO Se ha producido un error!!!! +goto end + +:ayuda +echo Modo de uso: %0 [create / drop / extract] +echo ------------ +echo create: crear la base de datos %DB_ALIAS% (la borra antes si ya existe) +echo drop: borrar la base de datos %DB_ALIAS% +echo extract: extrae los metadatos de la BD a un fichero SQL (%DB_SQL_SCRIPT%) +echo insert_data: extrae los metadatos de la BD a un fichero SQL (%DB_SQL_SCRIPT%) +echo. +echo recreate: rehacer la BD: borrarla si existe, crearla e insertar los datos del sistema +echo. +goto end + +:done +echo Hecho! +echo. +goto end + +:end diff --git a/Database/scripts/factuges.sql b/Database/scripts/factuges.sql new file mode 100644 index 00000000..23b3fd1e --- /dev/null +++ b/Database/scripts/factuges.sql @@ -0,0 +1,1476 @@ +SET SQL DIALECT 3; + +CREATE DATABASE 'factuges.fdb' DEFAULT CHARACTER SET ISO8859_1; + +/* External Function declarations */ +DECLARE EXTERNAL FUNCTION F_RTFTOTEXT +CSTRING(254) CHARACTER SET ISO8859_1 +RETURNS CSTRING(254) CHARACTER SET ISO8859_1 +ENTRY_POINT 'RtfToText' MODULE_NAME 'udf_RtfToText.dll'; + +DECLARE EXTERNAL FUNCTION MOD +INTEGER, INTEGER +RETURNS DOUBLE PRECISION BY VALUE +ENTRY_POINT 'IB_UDF_mod' MODULE_NAME 'ib_udf'; + +DECLARE EXTERNAL FUNCTION STRLEN +CSTRING(32767) CHARACTER SET ISO8859_1 +RETURNS INTEGER BY VALUE +ENTRY_POINT 'IB_UDF_strlen' MODULE_NAME 'ib_udf'; + +DECLARE EXTERNAL FUNCTION SUBSTR +CSTRING(255) CHARACTER SET ISO8859_1, SMALLINT, SMALLINT +RETURNS CSTRING(255) CHARACTER SET ISO8859_1 FREE_IT +ENTRY_POINT 'IB_UDF_substr' MODULE_NAME 'ib_udf'; + + +/* Generators or sequences */ +CREATE GENERATOR GEN_AGENTES_COMISIONES_ID; +CREATE GENERATOR GEN_ALBARANES_CLI_DETALLES_ID; +CREATE GENERATOR GEN_ALBARANES_CLI_ID; +CREATE GENERATOR GEN_ALBARANES_PRO_DETALLES_ID; +CREATE GENERATOR GEN_ALBARANES_PRO_ID; +CREATE GENERATOR GEN_ALMACENES_ID; +CREATE GENERATOR GEN_ARTICULOS_ID; +CREATE GENERATOR GEN_CATEGORIAS_ID; +CREATE GENERATOR GEN_CLIENTES_DTOS_PROV_ID; +CREATE GENERATOR GEN_COMISIONES_LIQUID_ID; +CREATE GENERATOR GEN_CONTACTOS_DATOS_BANCO_ID; +CREATE GENERATOR GEN_CONTACTOS_DIR_ID; +CREATE GENERATOR GEN_CONTACTOS_ID; +CREATE GENERATOR GEN_EMPRESAS_DATOS_BANCO_ID; +CREATE GENERATOR GEN_EMPRESAS_ID; +CREATE GENERATOR GEN_FACTURAS_CLIENTE_ID; +CREATE GENERATOR GEN_FACTURAS_PROVEEDOR_ID; +CREATE GENERATOR GEN_FACTURA_CLIENTE_DETALLES_ID; +CREATE GENERATOR GEN_FACTURA_PROV_DETALLES_ID; +CREATE GENERATOR GEN_FORMAS_PAGO_ID; +CREATE GENERATOR GEN_FORMAS_PAGO_PLAZOS_ID; +CREATE GENERATOR GEN_INFORMES_ID; +CREATE GENERATOR GEN_MOVIMIENTOS_ID; +CREATE GENERATOR GEN_PAGOS_CLIENTE_ID; +CREATE GENERATOR GEN_PAGOS_PROVEEDOR_ID; +CREATE GENERATOR GEN_PEDIDOS_CLI_DETALLES_ID; +CREATE GENERATOR GEN_PEDIDOS_CLI_ID; +CREATE GENERATOR GEN_PEDIDOS_PROV_DETALLES_ID; +CREATE GENERATOR GEN_PEDIDOS_PROV_ID; +CREATE GENERATOR GEN_F_PERFILES_ID; +CREATE GENERATOR GEN_RECIBOS_CLIENTE_ID; +CREATE GENERATOR GEN_RECIBOS_PROVEEDOR_ID; +CREATE GENERATOR GEN_REMESAS_CLIENTE_ID; +CREATE GENERATOR GEN_REMESAS_PROVEEDOR_ID; +CREATE GENERATOR GEN_TIENDA_WEB_ID; +CREATE GENERATOR GEN_TIPOS_IVA_ID; +CREATE GENERATOR GEN_USUARIOS_ID; + +/* Domain definitions */ +CREATE DOMAIN TIPO_BINARIO AS BLOB SUB_TYPE 0 SEGMENT SIZE 80; +CREATE DOMAIN TIPO_BOOLEANO AS SMALLINT; +CREATE DOMAIN TIPO_CONCEPTO AS VARCHAR(2000); +CREATE DOMAIN TIPO_ID AS INTEGER; +CREATE DOMAIN TIPO_IMPORTE AS NUMERIC(11, 2); +CREATE DOMAIN TIPO_NOTAS AS BLOB SUB_TYPE TEXT SEGMENT SIZE 80; +CREATE DOMAIN TIPO_PERFIL AS VARCHAR(15); +CREATE DOMAIN TIPO_PORCENTAJE AS FLOAT; +CREATE DOMAIN TIPO_USUARIO AS VARCHAR(30); + +/* Table: AGENTES_COMISIONES, Owner: SYSDBA */ +CREATE TABLE AGENTES_COMISIONES (ID TIPO_ID NOT NULL, + ID_AGENTE TIPO_ID DEFAULT 0 NOT NULL, + ID_PROVEEDOR SMALLINT DEFAULT 0 NOT NULL, + COMISION TIPO_PORCENTAJE DEFAULT 0, +CONSTRAINT PK_AGENTES_COMISIONES PRIMARY KEY (ID)); + +/* Table: ALBARANES_CLIENTE, Owner: SYSDBA */ +CREATE TABLE ALBARANES_CLIENTE (ID TIPO_ID NOT NULL, + ID_EMPRESA TIPO_ID, + ID_CLIENTE TIPO_ID, + FECHA_ALBARAN DATE, + ID_ALMACEN TIPO_ID, + ID_PEDIDO TIPO_ID, + ID_FACTURA TIPO_ID, + REFERENCIA VARCHAR(255), + CALLE VARCHAR(255), + CODIGO_POSTAL VARCHAR(10), + POBLACION VARCHAR(255), + PROVINCIA VARCHAR(255), + PERSONA_CONTACTO VARCHAR(255), + TELEFONO VARCHAR(25), + IMPORTE_NETO TIPO_IMPORTE, + IMPORTE_PORTE TIPO_IMPORTE, + DESCUENTO TIPO_PORCENTAJE, + IMPORTE_DESCUENTO TIPO_IMPORTE, + BASE_IMPONIBLE TIPO_IMPORTE, + IVA TIPO_PORCENTAJE, + IMPORTE_IVA TIPO_IMPORTE, + IMPORTE_TOTAL TIPO_IMPORTE, + OBSERVACIONES TIPO_NOTAS, + INCIDENCIAS TIPO_NOTAS, + INCIDENCIAS_ACTIVAS SMALLINT DEFAULT 0 NOT NULL, + FECHA_ALTA TIMESTAMP, + FECHA_MODIFICACION TIMESTAMP, + USUARIO TIPO_USUARIO, + ID_FORMA_PAGO TIPO_ID, + FECHA_ENVIO DATE, + FECHA_RECEPCION DATE, + FECHA_PREVISTA_ENVIO DATE, + REFERENCIA_CLIENTE VARCHAR(255) CHARACTER SET ISO8859_1 COLLATE ES_ES, +CONSTRAINT PK_ALBARAN_CLIENTE PRIMARY KEY (ID)); + +/* Table: ALBARANES_CLIENTE_DETALLES, Owner: SYSDBA */ +CREATE TABLE ALBARANES_CLIENTE_DETALLES (ID TIPO_ID NOT NULL, + ID_ALBARAN TIPO_ID NOT NULL, + POSICION INTEGER, + TIPO_DETALLE VARCHAR(10), + ID_ARTICULO TIPO_ID, + CONCEPTO TIPO_CONCEPTO, + CANTIDAD INTEGER, + IMPORTE_UNIDAD TIPO_IMPORTE, + DESCUENTO TIPO_PORCENTAJE, + IMPORTE_PORTE TIPO_IMPORTE, + IMPORTE_TOTAL TIPO_IMPORTE, + VISIBLE TIPO_BOOLEANO, + FECHA_ALTA TIMESTAMP, + FECHA_MODIFICACION TIMESTAMP, +CONSTRAINT PK_ALBARANES_CLIENTE_DETALLES PRIMARY KEY (ID)); + +/* Table: ALBARANES_PROVEEDOR, Owner: SYSDBA */ +CREATE TABLE ALBARANES_PROVEEDOR (ID TIPO_ID NOT NULL, + ID_EMPRESA TIPO_ID, + ID_PROVEEDOR TIPO_ID, + FECHA_ALBARAN DATE, + ID_PEDIDO TIPO_ID, + ID_FACTURA TIPO_ID, + REFERENCIA VARCHAR(255), + CALLE VARCHAR(255), + CODIGO_POSTAL VARCHAR(10), + POBLACION VARCHAR(255), + PROVINCIA VARCHAR(255), + PERSONA_CONTACTO VARCHAR(255), + TELEFONO VARCHAR(25), + BASE_IMPONIBLE TIPO_IMPORTE, + DESCUENTO TIPO_PORCENTAJE, + IMPORTE_DESCUENTO TIPO_IMPORTE, + IVA TIPO_PORCENTAJE, + IMPORTE_IVA TIPO_IMPORTE, + IMPORTE_TOTAL TIPO_IMPORTE, + OBSERVACIONES TIPO_NOTAS, + INCIDENCIAS TIPO_NOTAS, + INCIDENCIAS_ACTIVAS SMALLINT DEFAULT 0 NOT NULL, + FECHA_ALTA TIMESTAMP, + FECHA_MODIFICACION TIMESTAMP, + USUARIO TIPO_USUARIO, + ID_ALMACEN TIPO_ID, + ID_FORMA_PAGO TIPO_ID, + IMPORTE_NETO TIPO_IMPORTE, + IMPORTE_PORTE TIPO_IMPORTE, + REFERENCIA_PROVEEDOR VARCHAR(255), + REF_FACTURA_PROV VARCHAR(255), +CONSTRAINT PK_ALBARAN_PROVEEDOR PRIMARY KEY (ID)); + +/* Table: ALBARANES_PROVEEDOR_DETALLES, Owner: SYSDBA */ +CREATE TABLE ALBARANES_PROVEEDOR_DETALLES (ID TIPO_ID NOT NULL, + ID_ALBARAN TIPO_ID NOT NULL, + POSICION INTEGER, + TIPO_DETALLE VARCHAR(10), + ID_ARTICULO TIPO_ID, + CONCEPTO TIPO_CONCEPTO, + CANTIDAD INTEGER, + IMPORTE_UNIDAD TIPO_IMPORTE, + DESCUENTO TIPO_PORCENTAJE, + IMPORTE_PORTE TIPO_IMPORTE, + IMPORTE_TOTAL TIPO_IMPORTE, + VISIBLE TIPO_BOOLEANO, + FECHA_ALTA TIMESTAMP, + FECHA_MODIFICACION TIMESTAMP, +CONSTRAINT PK_ALBARANES_PROVEEDOR_DETALLES PRIMARY KEY (ID)); + +/* Table: ALMACENES, Owner: SYSDBA */ +CREATE TABLE ALMACENES (ID TIPO_ID NOT NULL, + ID_EMPRESA TIPO_ID NOT NULL, + NOMBRE VARCHAR(255), + CALLE VARCHAR(255), + PROVINCIA VARCHAR(255), + POBLACION VARCHAR(255), + CODIGO_POSTAL VARCHAR(10), + TELEFONO VARCHAR(25), + MOVIL VARCHAR(25), + FAX VARCHAR(25), + PERSONA_CONTACTO VARCHAR(255), + OBSERVACIONES TIPO_NOTAS, + FECHA_ALTA TIMESTAMP, + FECHA_MODIFICACION TIMESTAMP, + USUARIO TIPO_USUARIO, +CONSTRAINT PK_ALMACENES PRIMARY KEY (ID)); + +/* Table: ARTICULOS, Owner: SYSDBA */ +CREATE TABLE ARTICULOS (ID TIPO_ID NOT NULL, + ID_EMPRESA TIPO_ID, + REFERENCIA VARCHAR(255), + DESCRIPCION VARCHAR(255), + FAMILIA VARCHAR(255), + IMAGEN TIPO_BINARIO, + COMISIONABLE TIPO_BOOLEANO, + ID_PROVEEDOR TIPO_ID, + REFERENCIA_PROV VARCHAR(255), + PRECIO_COSTE TIPO_IMPORTE, + DESCUENTO TIPO_PORCENTAJE, + PRECIO_NETO TIPO_IMPORTE, + PRECIO_PORTE TIPO_IMPORTE, + FECHA_ALTA TIMESTAMP, + FECHA_MODIFICACION TIMESTAMP, + USUARIO TIPO_USUARIO, + INVENTARIABLE TIPO_BOOLEANO, + ELIMINADO TIPO_BOOLEANO, +CONSTRAINT PK_ARTICULOS PRIMARY KEY (ID)); + +/* Table: CATEGORIAS, Owner: SYSDBA */ +CREATE TABLE CATEGORIAS (ID TIPO_ID NOT NULL, + CATEGORIA VARCHAR(255) NOT NULL, +CONSTRAINT PK_CATEGORIAS PRIMARY KEY (ID)); + +/* Table: CLIENTES_DATOS, Owner: SYSDBA */ +CREATE TABLE CLIENTES_DATOS (ID_CLIENTE TIPO_ID NOT NULL, + ID_AGENTE TIPO_ID, + GRUPO_CLIENTE VARCHAR(255), + NOMBRE_COMERCIAL VARCHAR(255), + VENCIMIENTO_FACTURAS INTEGER, + BLOQUEADO TIPO_BOOLEANO DEFAULT 0 NOT NULL, + REGIMEN_IVA VARCHAR(255), + MOTIVO_BLOQUEO VARCHAR(255), + RECARGO_EQUIVALENCIA TIPO_BOOLEANO, + ID_TIPO_IVA TIPO_ID, + ID_FORMA_PAGO TIPO_ID, + TIENDA_WEB TIPO_BOOLEANO, + DESCUENTO TIPO_PORCENTAJE, +CONSTRAINT PK_CLIENTES_DATOS PRIMARY KEY (ID_CLIENTE)); + +/* Table: CLIENTES_DTOS_PROVEEDORES, Owner: SYSDBA */ +CREATE TABLE CLIENTES_DTOS_PROVEEDORES (ID TIPO_ID NOT NULL, + ID_CLIENTE TIPO_ID DEFAULT 0 NOT NULL, + ID_PROVEEDOR SMALLINT DEFAULT 0 NOT NULL, + DESCUENTO TIPO_PORCENTAJE DEFAULT 0, +CONSTRAINT PK_CLIENTES_DTOS_PROV PRIMARY KEY (ID)); + +/* Table: CLIENTES_GRUPOS, Owner: SYSDBA */ +CREATE TABLE CLIENTES_GRUPOS (DESCRIPCION VARCHAR(255)); + +/* Table: COMISIONES_LIQUIDADAS, Owner: SYSDBA */ +CREATE TABLE COMISIONES_LIQUIDADAS (ID TIPO_ID NOT NULL, + ID_EMPRESA TIPO_ID, + REFERENCIA VARCHAR(255), + ID_AGENTE TIPO_ID, + DESCRIPCION VARCHAR(255), + FECHA DATE, + IMPORTE_TOTAL TIPO_IMPORTE, + FECHA_ALTA TIMESTAMP, + FECHA_MODIFICACION TIMESTAMP, + USUARIO TIPO_USUARIO, +CONSTRAINT PK_COMISIONES_LIQUIDADAS PRIMARY KEY (ID)); + +/* Table: CONFIGURACION, Owner: SYSDBA */ +CREATE TABLE CONFIGURACION (CODIGO VARCHAR(50) NOT NULL, + VALOR VARCHAR(255) NOT NULL, + ID_EMPRESA TIPO_ID); + +/* Table: CONTACTOS, Owner: SYSDBA */ +CREATE TABLE CONTACTOS (ID TIPO_ID NOT NULL, + NIF_CIF VARCHAR(15), + NOMBRE VARCHAR(255) NOT NULL, + CALLE VARCHAR(255), + POBLACION VARCHAR(255), + PROVINCIA VARCHAR(255), + CODIGO_POSTAL VARCHAR(10), + TELEFONO_1 VARCHAR(25), + TELEFONO_2 VARCHAR(25), + MOVIL_1 VARCHAR(25), + MOVIL_2 VARCHAR(25), + FAX VARCHAR(25), + EMAIL_1 VARCHAR(255), + EMAIL_2 VARCHAR(255), + PAGINA_WEB VARCHAR(255), + NOTAS TIPO_NOTAS, + FECHA_ALTA TIMESTAMP, + FECHA_MODIFICACION TIMESTAMP, + USUARIO TIPO_USUARIO, + REFERENCIA VARCHAR(255), + PERSONA_CONTACTO VARCHAR(255), +CONSTRAINT PK_CONTACTOS PRIMARY KEY (ID)); + +/* Table: CONTACTOS_CATEGORIAS, Owner: SYSDBA */ +CREATE TABLE CONTACTOS_CATEGORIAS (ID_CONTACTO TIPO_ID NOT NULL, + ID_CATEGORIA TIPO_ID NOT NULL, +CONSTRAINT PK_CONTACTOS_CATEGORIAS PRIMARY KEY (ID_CONTACTO, ID_CATEGORIA)); + +/* Table: CONTACTOS_DATOS_BANCO, Owner: SYSDBA */ +CREATE TABLE CONTACTOS_DATOS_BANCO (ID TIPO_ID NOT NULL, + ID_CONTACTO TIPO_ID NOT NULL, + TITULAR VARCHAR(255), + ENTIDAD VARCHAR(15), + SUCURSAL VARCHAR(15), + DC VARCHAR(15), + CUENTA VARCHAR(15), + FECHA_ALTA TIMESTAMP, + FECHA_MODIFICACION TIMESTAMP, +CONSTRAINT PK_CONTACTOS_DATOS_BANCO PRIMARY KEY (ID)); + +/* Table: CONTACTOS_DIRECCIONES, Owner: SYSDBA */ +CREATE TABLE CONTACTOS_DIRECCIONES (ID TIPO_ID NOT NULL, + ID_CONTACTO TIPO_ID NOT NULL, + CALLE VARCHAR(255), + POBLACION VARCHAR(255), + PROVINCIA VARCHAR(255), + CODIGO_POSTAL VARCHAR(10), + PERSONA_CONTACTO VARCHAR(255), + NOMBRE VARCHAR(255), + TELEFONO VARCHAR(25), + MOVIL VARCHAR(25), + FAX VARCHAR(25), + EMAIL VARCHAR(255), + NOTAS TIPO_NOTAS, + PORTE TIPO_IMPORTE, + FECHA_ALTA TIMESTAMP, + FECHA_MODIFICACION TIMESTAMP, +CONSTRAINT PK_CONTACTOS_DIR PRIMARY KEY (ID)); + +/* Table: EMPLEADOS_DATOS, Owner: SYSDBA */ +CREATE TABLE EMPLEADOS_DATOS (ID_EMPLEADO TIPO_ID NOT NULL, + FECHA_NACIMIENTO DATE, + CATEGORIA VARCHAR(255), + FECHA_ALTA_EMPRESA DATE, + FORMACION_BASE TIPO_NOTAS, + FORMACION_COMPLE TIPO_NOTAS, + FORMACION_RECIBIDA TIPO_NOTAS, + EXPERIENCIA TIPO_NOTAS, +CONSTRAINT PK_EMPLEADOS_DATOS PRIMARY KEY (ID_EMPLEADO)); + +/* Table: EMPLEADOS_GRUPOS, Owner: SYSDBA */ +CREATE TABLE EMPLEADOS_GRUPOS (DESCRIPCION VARCHAR(255)); + +/* Table: EMPRESAS, Owner: SYSDBA */ +CREATE TABLE EMPRESAS (ID TIPO_ID NOT NULL, + NIF_CIF VARCHAR(15), + NOMBRE VARCHAR(255), + RAZON_SOCIAL VARCHAR(255), + CALLE VARCHAR(255), + POBLACION VARCHAR(255), + PROVINCIA VARCHAR(255), + CODIGO_POSTAL VARCHAR(10), + TELEFONO_1 VARCHAR(25), + TELEFONO_2 VARCHAR(25), + MOVIL_1 VARCHAR(25), + MOVIL_2 VARCHAR(25), + FAX VARCHAR(25), + EMAIL_1 VARCHAR(255), + EMAIL_2 VARCHAR(255), + PAGINA_WEB VARCHAR(255), + NOTAS TIPO_NOTAS, + FECHA_ALTA TIMESTAMP, + FECHA_MODIFICACION TIMESTAMP, + USUARIO TIPO_USUARIO, + LOGOTIPO TIPO_BINARIO, + REGISTRO_MERCANTIL VARCHAR(255), + IVA TIPO_PORCENTAJE, +CONSTRAINT PK_EMPRESAS PRIMARY KEY (ID)); + +/* Table: EMPRESAS_CONTACTOS, Owner: SYSDBA */ +CREATE TABLE EMPRESAS_CONTACTOS (ID_EMPRESA TIPO_ID NOT NULL, + ID_CONTACTO TIPO_ID NOT NULL, +CONSTRAINT PK_EMPRESAS_CONTACTOS PRIMARY KEY (ID_EMPRESA, ID_CONTACTO)); + +/* Table: EMPRESAS_DATOS_BANCO, Owner: SYSDBA */ +CREATE TABLE EMPRESAS_DATOS_BANCO (ID TIPO_ID NOT NULL, + ID_EMPRESA TIPO_ID NOT NULL, + NOMBRE VARCHAR(255), + ENTIDAD VARCHAR(15), + SUCURSAL VARCHAR(15), + DC VARCHAR(15), + CUENTA VARCHAR(15), + SUFIJO_N19 VARCHAR(3), + SUFIJO_N58 VARCHAR(3), +CONSTRAINT PK_EMPRESAS_DATOS_BANCO PRIMARY KEY (ID)); + +/* Table: EMPRESAS_USUARIOS, Owner: SYSDBA */ +CREATE TABLE EMPRESAS_USUARIOS (ID_EMPRESA TIPO_ID NOT NULL, + ID_USUARIO TIPO_ID NOT NULL, +CONSTRAINT PK_EMPRESAS_USUARIOS PRIMARY KEY (ID_EMPRESA, ID_USUARIO)); + +/* Table: FACTURAS_CLIENTE, Owner: SYSDBA */ +CREATE TABLE FACTURAS_CLIENTE (ID TIPO_ID NOT NULL, + ID_EMPRESA TIPO_ID, + REFERENCIA VARCHAR(255), + FECHA_FACTURA DATE, + BASE_IMPONIBLE TIPO_IMPORTE, + DESCUENTO TIPO_PORCENTAJE, + IMPORTE_DESCUENTO TIPO_IMPORTE, + IVA TIPO_PORCENTAJE, + IMPORTE_IVA TIPO_IMPORTE, + RE TIPO_PORCENTAJE, + IMPORTE_RE TIPO_IMPORTE, + IMPORTE_TOTAL TIPO_IMPORTE, + OBSERVACIONES TIPO_NOTAS, + ID_CLIENTE TIPO_ID, + NIF_CIF VARCHAR(15), + NOMBRE VARCHAR(255), + CALLE VARCHAR(255), + POBLACION VARCHAR(255), + PROVINCIA VARCHAR(255), + CODIGO_POSTAL VARCHAR(10), + FECHA_ALTA TIMESTAMP, + FECHA_MODIFICACION TIMESTAMP, + USUARIO TIPO_USUARIO, + ID_FORMA_PAGO TIPO_ID, + IMPORTE_NETO TIPO_IMPORTE, + IMPORTE_PORTE TIPO_IMPORTE, + ID_TIPO_IVA TIPO_ID, + RECARGO_EQUIVALENCIA TIPO_BOOLEANO, + ID_COMISION_LIQUIDADA TIPO_ID, +CONSTRAINT PK_FACTURAS_CLIENTE PRIMARY KEY (ID)); + +/* Table: FACTURAS_CLIENTE_DETALLES, Owner: SYSDBA */ +CREATE TABLE FACTURAS_CLIENTE_DETALLES (ID TIPO_ID NOT NULL, + ID_FACTURA TIPO_ID NOT NULL, + POSICION INTEGER, + TIPO_DETALLE VARCHAR(10), + ID_ARTICULO TIPO_ID, + CONCEPTO TIPO_CONCEPTO, + CANTIDAD INTEGER, + IMPORTE_UNIDAD TIPO_IMPORTE, + DESCUENTO TIPO_PORCENTAJE, + IMPORTE_PORTE TIPO_IMPORTE, + IMPORTE_TOTAL TIPO_IMPORTE, + VISIBLE TIPO_BOOLEANO, + FECHA_ALTA TIMESTAMP, + FECHA_MODIFICACION TIMESTAMP, +CONSTRAINT PK_FACTURAS_CLIENTE_DETALLES PRIMARY KEY (ID)); + +/* Table: FACTURAS_PROVEEDOR, Owner: SYSDBA */ +CREATE TABLE FACTURAS_PROVEEDOR (ID TIPO_ID NOT NULL, + ID_EMPRESA TIPO_ID, + REFERENCIA VARCHAR(255), + REFERENCIA_PROVEEDOR VARCHAR(255), + FECHA_FACTURA DATE, + BASE_IMPONIBLE TIPO_IMPORTE, + DESCUENTO TIPO_PORCENTAJE, + IMPORTE_DESCUENTO TIPO_IMPORTE, + IVA TIPO_PORCENTAJE, + IMPORTE_IVA TIPO_IMPORTE, + RE TIPO_PORCENTAJE, + IMPORTE_RE TIPO_IMPORTE, + IMPORTE_TOTAL TIPO_IMPORTE, + OBSERVACIONES TIPO_NOTAS, + ID_PROVEEDOR TIPO_ID, + NIF_CIF VARCHAR(15), + NOMBRE VARCHAR(255), + CALLE VARCHAR(255), + POBLACION VARCHAR(255), + PROVINCIA VARCHAR(255), + CODIGO_POSTAL VARCHAR(10), + FECHA_ALTA TIMESTAMP, + FECHA_MODIFICACION TIMESTAMP, + USUARIO TIPO_USUARIO, + ID_FORMA_PAGO TIPO_ID, + IMPORTE_NETO TIPO_IMPORTE, + IMPORTE_PORTE TIPO_IMPORTE, + ID_TIPO_IVA TIPO_ID, + RECARGO_EQUIVALENCIA TIPO_BOOLEANO, +CONSTRAINT PK_FACTURAS_PROVEEDOR PRIMARY KEY (ID)); + +/* Table: FACTURAS_PROVEEDOR_DETALLES, Owner: SYSDBA */ +CREATE TABLE FACTURAS_PROVEEDOR_DETALLES (ID TIPO_ID NOT NULL, + ID_FACTURA TIPO_ID NOT NULL, + POSICION INTEGER, + TIPO_DETALLE VARCHAR(10), + ID_ARTICULO TIPO_ID, + CONCEPTO TIPO_CONCEPTO, + CANTIDAD INTEGER, + IMPORTE_UNIDAD TIPO_IMPORTE, + DESCUENTO TIPO_PORCENTAJE, + IMPORTE_PORTE TIPO_IMPORTE, + IMPORTE_TOTAL TIPO_IMPORTE, + VISIBLE TIPO_BOOLEANO, + FECHA_ALTA TIMESTAMP, + FECHA_MODIFICACION TIMESTAMP, +CONSTRAINT PK_FACTURAS_PROVEEDOR_DETALLES PRIMARY KEY (ID)); + +/* Table: FAMILIAS, Owner: SYSDBA */ +CREATE TABLE FAMILIAS (DESCRIPCION VARCHAR(255)); + +/* Table: FORMAS_PAGO, Owner: SYSDBA */ +CREATE TABLE FORMAS_PAGO (ID TIPO_ID NOT NULL, + REFERENCIA VARCHAR(255), + DESCRIPCION VARCHAR(255), + TITULAR VARCHAR(255), + ENTIDAD VARCHAR(15), + SUCURSAL VARCHAR(15), + DC VARCHAR(15), + CUENTA VARCHAR(15), +PRIMARY KEY (ID)); + +/* Table: FORMAS_PAGO_PLAZOS, Owner: SYSDBA */ +CREATE TABLE FORMAS_PAGO_PLAZOS (ID TIPO_ID NOT NULL, + ID_FORMA_PAGO TIPO_ID NOT NULL, + NUM_DIAS SMALLINT, + PORCENTAJE TIPO_PORCENTAJE, +PRIMARY KEY (ID)); + +/* Table: F_PERFILES, Owner: SYSDBA */ +CREATE TABLE F_PERFILES (ID TIPO_ID NOT NULL, + PERFIL TIPO_PERFIL NOT NULL); + +/* Table: F_PERFILES_USUARIOS, Owner: SYSDBA */ +CREATE TABLE F_PERFILES_USUARIOS (ID_PERFIL TIPO_ID NOT NULL, + ID_USUARIO TIPO_ID NOT NULL, +CONSTRAINT PK_PERFILES_USUARIOS PRIMARY KEY (ID_PERFIL, ID_USUARIO)); + +/* Table: F_USUARIOS, Owner: SYSDBA */ +CREATE TABLE F_USUARIOS (ID TIPO_ID NOT NULL, + USUARIO TIPO_USUARIO NOT NULL, + ACTIVO TIPO_BOOLEANO, + LAST_LOGIN TIMESTAMP, + PASS VARCHAR(10)); + +/* Table: INFORMES, Owner: SYSDBA */ +CREATE TABLE INFORMES (ID SMALLINT NOT NULL, + ID_EMPRESA TIPO_ID, + CATEGORIA VARCHAR(30), + CONTROLLER VARCHAR(255), + ICONO SMALLINT, + NOMBRE VARCHAR(50), + DESCRIPCION VARCHAR(255), + ORDEN SMALLINT, + MODIFICABLE CHAR(1), + VISTA BLOB SUB_TYPE BLR SEGMENT SIZE 4096, +CONSTRAINT PK_INFORMES PRIMARY KEY (ID)); + +/* Table: MOVIMIENTOS, Owner: SYSDBA */ +CREATE TABLE MOVIMIENTOS (ID TIPO_ID NOT NULL, + ID_ALMACEN TIPO_ID, + ID_ARTICULO TIPO_ID, + FECHA_MOVIMIENTO DATE, + TIPO VARCHAR(1), + CANTIDAD INTEGER, + CAUSA TIPO_CONCEPTO, +CONSTRAINT PK_MOVIMIENTOS PRIMARY KEY (ID)); + +/* Table: PAGOS_CLIENTE, Owner: SYSDBA */ +CREATE TABLE PAGOS_CLIENTE (ID TIPO_ID NOT NULL, + ID_RECIBO TIPO_ID, + TIPO VARCHAR(255), + FECHA_PAGO DATE, + TITULAR VARCHAR(255), + ENTIDAD VARCHAR(15), + SUCURSAL VARCHAR(15), + DC VARCHAR(15), + CUENTA VARCHAR(15), + FECHA_ALTA DATE, + FECHA_MODIFICACION DATE, + USUARIO TIPO_USUARIO, +CONSTRAINT PK_PAGOS_CLIENTE PRIMARY KEY (ID)); + +/* Table: PAGOS_PROVEEDOR, Owner: SYSDBA */ +CREATE TABLE PAGOS_PROVEEDOR (ID TIPO_ID NOT NULL, + ID_RECIBO TIPO_ID, + TIPO VARCHAR(255), + FECHA_PAGO DATE, + TITULAR VARCHAR(255), + ENTIDAD VARCHAR(15), + SUCURSAL VARCHAR(15), + DC VARCHAR(15), + CUENTA VARCHAR(15), + FECHA_ALTA DATE, + FECHA_MODIFICACION DATE, + USUARIO TIPO_USUARIO, +CONSTRAINT PK_PAGOS_PROVEEDOR PRIMARY KEY (ID)); + +/* Table: PEDIDOS_CLIENTE, Owner: SYSDBA */ +CREATE TABLE PEDIDOS_CLIENTE (ID TIPO_ID NOT NULL, + ID_EMPRESA TIPO_ID, + ID_CLIENTE TIPO_ID, + REFERENCIA VARCHAR(255), + FECHA_PEDIDO DATE, + CALLE VARCHAR(255), + CODIGO_POSTAL VARCHAR(10), + POBLACION VARCHAR(255), + PROVINCIA VARCHAR(255), + PERSONA_CONTACTO VARCHAR(255), + TELEFONO VARCHAR(25), + OBSERVACIONES TIPO_NOTAS, + INCIDENCIAS TIPO_NOTAS, + INCIDENCIAS_ACTIVAS SMALLINT DEFAULT 0 NOT NULL, + FECHA_ALTA TIMESTAMP, + FECHA_MODIFICACION TIMESTAMP, + USUARIO TIPO_USUARIO, + IMPORTE_NETO TIPO_IMPORTE, + IMPORTE_PORTE TIPO_IMPORTE, + DESCUENTO TIPO_PORCENTAJE, + IMPORTE_DESCUENTO TIPO_IMPORTE, + BASE_IMPONIBLE TIPO_IMPORTE, + IVA TIPO_PORCENTAJE, + IMPORTE_IVA TIPO_IMPORTE, + IMPORTE_TOTAL TIPO_IMPORTE, + ID_FORMA_PAGO TIPO_ID, + REF_TIENDA_WEB INTEGER, + FECHA_PREVISTA_ENVIO DATE, + REFERENCIA_CLIENTE VARCHAR(255) CHARACTER SET ISO8859_1 COLLATE ES_ES, +CONSTRAINT PK_PEDIDOS_CLIENTE PRIMARY KEY (ID)); + +/* Table: PEDIDOS_CLIENTE_DETALLES, Owner: SYSDBA */ +CREATE TABLE PEDIDOS_CLIENTE_DETALLES (ID TIPO_ID NOT NULL, + ID_PEDIDO TIPO_ID NOT NULL, + POSICION INTEGER, + TIPO_DETALLE VARCHAR(10), + ID_ARTICULO TIPO_ID, + CONCEPTO TIPO_CONCEPTO, + CANTIDAD INTEGER, + IMPORTE_UNIDAD TIPO_IMPORTE, + DESCUENTO TIPO_PORCENTAJE, + IMPORTE_PORTE TIPO_IMPORTE, + IMPORTE_TOTAL TIPO_IMPORTE, + VISIBLE TIPO_BOOLEANO, + FECHA_ALTA TIMESTAMP, + FECHA_MODIFICACION TIMESTAMP, +CONSTRAINT PK_PEDIDOS_CLIENTE_DETALLES PRIMARY KEY (ID)); + +/* Table: PEDIDOS_PROVEEDOR, Owner: SYSDBA */ +CREATE TABLE PEDIDOS_PROVEEDOR (ID TIPO_ID NOT NULL, + ID_EMPRESA TIPO_ID, + ID_PROVEEDOR TIPO_ID, + REFERENCIA VARCHAR(255), + FECHA_PEDIDO DATE, + FECHA_CONFIRMACION DATE, + FECHA_ENTREGA DATE, + ID_ALMACEN TIPO_ID, + OBSERVACIONES TIPO_NOTAS, + INCIDENCIAS TIPO_NOTAS, + INCIDENCIAS_ACTIVAS SMALLINT DEFAULT 0 NOT NULL, + FECHA_ALTA TIMESTAMP, + FECHA_MODIFICACION TIMESTAMP, + USUARIO TIPO_USUARIO, + CALLE VARCHAR(255), + CODIGO_POSTAL VARCHAR(10), + POBLACION VARCHAR(255), + PROVINCIA VARCHAR(255), + PERSONA_CONTACTO VARCHAR(255), + TELEFONO VARCHAR(25), + ID_PEDIDO_CLIENTE TIPO_ID, + IMPORTE_NETO TIPO_IMPORTE, + IMPORTE_PORTE TIPO_IMPORTE, + DESCUENTO TIPO_PORCENTAJE, + IMPORTE_DESCUENTO TIPO_IMPORTE, + BASE_IMPONIBLE TIPO_IMPORTE, + IVA TIPO_PORCENTAJE, + IMPORTE_IVA TIPO_IMPORTE, + IMPORTE_TOTAL TIPO_IMPORTE, + ID_FORMA_PAGO TIPO_ID, + FECHA_ENVIO DATE, +CONSTRAINT PK_PEDIDOS_PROVEEDOR PRIMARY KEY (ID)); + +/* Table: PEDIDOS_PROVEEDOR_DETALLES, Owner: SYSDBA */ +CREATE TABLE PEDIDOS_PROVEEDOR_DETALLES (ID TIPO_ID NOT NULL, + ID_PEDIDO TIPO_ID NOT NULL, + POSICION INTEGER, + TIPO_DETALLE VARCHAR(10), + ID_ARTICULO TIPO_ID, + CONCEPTO TIPO_CONCEPTO, + CANTIDAD INTEGER, + IMPORTE_UNIDAD TIPO_IMPORTE, + DESCUENTO TIPO_PORCENTAJE, + IMPORTE_PORTE TIPO_IMPORTE, + IMPORTE_TOTAL TIPO_IMPORTE, + VISIBLE TIPO_BOOLEANO, + FECHA_ALTA TIMESTAMP, + FECHA_MODIFICACION TIMESTAMP, +CONSTRAINT PK_PEDIDOS_PROVEEDOR_DETALLES PRIMARY KEY (ID)); + +/* Table: PERMISOS, Owner: SYSDBA */ +CREATE TABLE PERMISOS (ID_USUARIO TIPO_ID, + MODULO VARCHAR(50), + NOMBRECOMP VARCHAR(50), + CHECKSUM VARCHAR(250)); + +/* Table: PERMISOSEX, Owner: SYSDBA */ +CREATE TABLE PERMISOSEX (ID_USUARIO TIPO_ID, + MODULO VARCHAR(50), + NOMBRECOMP VARCHAR(50), + NOMBREFORM VARCHAR(50), + CHECKSUM VARCHAR(250)); + +/* Table: PROVEEDORES_DATOS, Owner: SYSDBA */ +CREATE TABLE PROVEEDORES_DATOS (ID_PROVEEDOR TIPO_ID NOT NULL, + DESCUENTO TIPO_PORCENTAJE, + REGIMEN_IVA VARCHAR(255), + ID_TIPO_IVA TIPO_ID, + ID_FORMA_PAGO TIPO_ID, + TIENDA_WEB TIPO_BOOLEANO, + GRUPO_PROVEEDOR VARCHAR(255), + DESCRIPCION_PROVEEDOR VARCHAR(255), + CODIGO_ASIGNADO VARCHAR(255), + CERTIFICACION VARCHAR(255), + HOMOLOGADO SMALLINT, +CONSTRAINT PK_PROVEEDORES_DATOS PRIMARY KEY (ID_PROVEEDOR)); + +/* Table: PROVEEDORES_GRUPOS, Owner: SYSDBA */ +CREATE TABLE PROVEEDORES_GRUPOS (DESCRIPCION VARCHAR(255)); + +/* Table: RECIBOS_CLIENTE, Owner: SYSDBA */ +CREATE TABLE RECIBOS_CLIENTE (ID TIPO_ID NOT NULL, + ID_FACTURA TIPO_ID, + REFERENCIA VARCHAR(255), + FECHA_EMISION DATE, + FECHA_VENCIMIENTO DATE, + DESCRIPCION VARCHAR(255), + OBSERVACIONES VARCHAR(255), + IMPORTE TIPO_IMPORTE, + OTROS_GASTOS TIPO_IMPORTE, + FECHA_ALTA DATE, + FECHA_MODIFICACION DATE, + USUARIO TIPO_USUARIO, + ID_REMESA TIPO_ID, + ID_RECIBO_COMPENSADO INTEGER, +CONSTRAINT PK_RECIBOS_CLIENTE PRIMARY KEY (ID)); + +/* Table: RECIBOS_PROVEEDOR, Owner: SYSDBA */ +CREATE TABLE RECIBOS_PROVEEDOR (ID TIPO_ID NOT NULL, + ID_FACTURA TIPO_ID, + REFERENCIA VARCHAR(255), + REFERENCIA_PROVEEDOR VARCHAR(255), + FECHA_EMISION DATE, + FECHA_VENCIMIENTO DATE, + DESCRIPCION VARCHAR(255), + OBSERVACIONES VARCHAR(255), + IMPORTE TIPO_IMPORTE, + OTROS_GASTOS TIPO_IMPORTE, + FECHA_ALTA DATE, + FECHA_MODIFICACION DATE, + USUARIO TIPO_USUARIO, + ID_REMESA TIPO_ID, + ID_RECIBO_COMPENSADO INTEGER, +CONSTRAINT PK_RECIBOS_PROVEEDOR PRIMARY KEY (ID)); + +/* Table: REFERENCIAS, Owner: SYSDBA */ +CREATE TABLE REFERENCIAS (CODIGO VARCHAR(50) NOT NULL, + VALOR VARCHAR(255) NOT NULL, + ID_EMPRESA TIPO_ID, + DESCRIPCION VARCHAR(255) CHARACTER SET ISO8859_1 COLLATE ES_ES); + +/* Table: REMESAS_CLIENTE, Owner: SYSDBA */ +CREATE TABLE REMESAS_CLIENTE (ID TIPO_ID NOT NULL, + ID_EMPRESA TIPO_ID, + REFERENCIA VARCHAR(255), + FECHA_REMESA DATE, + IMPORTE_TOTAL TIPO_IMPORTE, + DESCRIPCION VARCHAR(255), + FECHA_ALTA DATE, + FECHA_MODIFICACION DATE, + USUARIO TIPO_USUARIO, + ID_DATOS_BANCO TIPO_ID, + TIPO VARCHAR(40), +CONSTRAINT PK_REMESAS_CLIENTE PRIMARY KEY (ID)); + +/* Table: REMESAS_PROVEEDOR, Owner: SYSDBA */ +CREATE TABLE REMESAS_PROVEEDOR (ID TIPO_ID NOT NULL, + ID_EMPRESA TIPO_ID, + REFERENCIA VARCHAR(255), + FECHA_REMESA DATE, + IMPORTE_TOTAL TIPO_IMPORTE, + DESCRIPCION VARCHAR(255), + FECHA_ALTA DATE, + FECHA_MODIFICACION DATE, + USUARIO TIPO_USUARIO, + ID_DATOS_BANCO TIPO_ID, + TIPO VARCHAR(40), +CONSTRAINT PK_REMESAS_PROVEEDOR PRIMARY KEY (ID)); + +/* Table: TIENDA_WEB, Owner: SYSDBA */ +CREATE TABLE TIENDA_WEB (ID TIPO_ID NOT NULL, + ID_EMPRESA TIPO_ID NOT NULL, + TIENDA_ACTIVA TIPO_BOOLEANO DEFAULT 0 NOT NULL, + ULTIMA_ACTUALIZACION TIMESTAMP, + BDSERVER VARCHAR(255), + BDPORT VARCHAR(20), + BDNAME VARCHAR(255), + BDUSER VARCHAR(255), + BDPASS VARCHAR(255), +CONSTRAINT PK_TIENDA_WEB PRIMARY KEY (ID)); + +/* Table: TIPOS_IVA, Owner: SYSDBA */ +CREATE TABLE TIPOS_IVA (ID TIPO_ID NOT NULL, + REFERENCIA VARCHAR(255), + DESCRIPCION VARCHAR(255), + IVA TIPO_PORCENTAJE, + RE TIPO_PORCENTAJE, +PRIMARY KEY (ID)); + +/* Table: USUARIOS, Owner: SYSDBA */ +CREATE TABLE USUARIOS (ID TIPO_ID NOT NULL, + USERNAME VARCHAR(30), + LOGIN TIPO_USUARIO, + PASS VARCHAR(250), + PASSEXPIRED DATE, + BLOQUEADO TIPO_BOOLEANO, + EMAIL VARCHAR(150), + USERDAYSSUN INTEGER, + PRIVILEGED INTEGER, + TIPO CHAR(1), + ID_PERFIL TIPO_ID, + CHECKSUM VARCHAR(250), +CONSTRAINT PK_USUARIOS PRIMARY KEY (ID)); + +/* Table: USUARIOS_EVENTOS, Owner: SYSDBA */ +CREATE TABLE USUARIOS_EVENTOS (APLICACION VARCHAR(250), + ID_USUARIO TIPO_ID, + FECHA CHAR(10), + HORA CHAR(8), + FORM VARCHAR(250), + TITULO_FORM VARCHAR(100), + EVENTO VARCHAR(50), + NOTAS TIPO_NOTAS, + TNAME VARCHAR(20)); + +/* Table: USUARIOS_LOGON, Owner: SYSDBA */ +CREATE TABLE USUARIOS_LOGON (LOGONID CHAR(38) NOT NULL, + ID_USUARIO TIPO_ID, + APLICACION VARCHAR(50), + EQUIPO VARCHAR(50), + DATA VARCHAR(14), +CONSTRAINT PK_USUARIOS_LOGON PRIMARY KEY (LOGONID)); + +/* Index definitions for all user tables */ +CREATE INDEX IDX_AGENTES_COMISIONES1 ON AGENTES_COMISIONES (ID_AGENTE); +CREATE INDEX IDX_AGENTES_COMISIONES2 ON AGENTES_COMISIONES (ID_PROVEEDOR); +CREATE INDEX IDX_ALBARANES_CLIENTE ON ALBARANES_CLIENTE (ID_FORMA_PAGO); +CREATE INDEX IDX_ALBARANES_CLIENTE_DETALLES ON ALBARANES_CLIENTE_DETALLES (ID_ARTICULO); +CREATE INDEX IDX_ALBARANES_CLIENTE_DETALLES1 ON ALBARANES_CLIENTE_DETALLES (ID_ALBARAN); +CREATE INDEX IDX_ALBARANES_PROVEEDOR ON ALBARANES_PROVEEDOR (ID_ALMACEN); +CREATE INDEX IDX_ALBARANES_PROVEEDOR1 ON ALBARANES_PROVEEDOR (ID_FORMA_PAGO); +CREATE INDEX IDX_ALBARANES_PROV_DETALLES ON ALBARANES_PROVEEDOR_DETALLES (ID_ALBARAN); +CREATE INDEX IDX_ALBARANES_PROV_DETALLES1 ON ALBARANES_PROVEEDOR_DETALLES (ID_ARTICULO); +CREATE INDEX IDX_ARTICULOS ON ARTICULOS (ID_PROVEEDOR); +CREATE INDEX IDX_CLIENTES_DATOS ON CLIENTES_DATOS (ID_TIPO_IVA); +CREATE INDEX IDX_CLIENTES_DATOS1 ON CLIENTES_DATOS (ID_FORMA_PAGO); +CREATE INDEX IDX_CLIENTES_DATOS_ID_AGENTE ON CLIENTES_DATOS (ID_AGENTE); +CREATE INDEX IDX_CLIENTES_DTOS_PROV_ID_CLI ON CLIENTES_DTOS_PROVEEDORES (ID_CLIENTE); +CREATE INDEX IDX_CLIENTES_DTOS_PROV_ID_PROV ON CLIENTES_DTOS_PROVEEDORES (ID_PROVEEDOR); +CREATE INDEX IDX_COMISIONES_LIQUIDADAS ON COMISIONES_LIQUIDADAS (ID_EMPRESA); +CREATE INDEX IDX_CONFIGURACION ON CONFIGURACION (ID_EMPRESA); +CREATE INDEX IDX_CONTACTOS_CATEGORIAS ON CONTACTOS_CATEGORIAS (ID_CONTACTO); +CREATE INDEX IDX_CONTACTOS_CATEGORIAS1 ON CONTACTOS_CATEGORIAS (ID_CATEGORIA); +CREATE INDEX IDX_CONTACTOS_DATOS_BANCO ON CONTACTOS_DATOS_BANCO (ID_CONTACTO); +CREATE INDEX IDX_CONTACTOS_DIR_ID_CONTACTO ON CONTACTOS_DIRECCIONES (ID_CONTACTO); +CREATE INDEX IDX_FACTURAS_CLIENTE ON FACTURAS_CLIENTE (ID_FORMA_PAGO); +CREATE INDEX IDX_FACTURAS_CLIENTE1 ON FACTURAS_CLIENTE (ID_TIPO_IVA); +CREATE INDEX IDX_FACTURAS_CLIENTE2 ON FACTURAS_CLIENTE (ID_COMISION_LIQUIDADA); +CREATE INDEX IDX_FACTURAS_CLIENTE3 ON FACTURAS_CLIENTE (ID_CLIENTE); +CREATE INDEX IDX_FACTURAS_CLIENTE_DETALLES1 ON FACTURAS_CLIENTE_DETALLES (ID_FACTURA); +CREATE INDEX IDX_FACTURAS_CLIENTE_DETALLES2 ON FACTURAS_CLIENTE_DETALLES (ID_ARTICULO); +CREATE INDEX IDX_FACTURAS_PROVEEDOR ON FACTURAS_PROVEEDOR (ID_PROVEEDOR); +CREATE INDEX IDX_FACTURAS_PROVEEDOR1 ON FACTURAS_PROVEEDOR (ID_FORMA_PAGO); +CREATE INDEX IDX_FACTURAS_PROVEEDOR2 ON FACTURAS_PROVEEDOR (ID_TIPO_IVA); +CREATE INDEX IDX_FACTURAS_PROVEEDOR_DETALLES ON FACTURAS_PROVEEDOR_DETALLES (ID_ARTICULO); +CREATE INDEX FORMAS_PAGO_PLAZOS_IDX1 ON FORMAS_PAGO_PLAZOS (ID_FORMA_PAGO); +CREATE INDEX IDX_INFORMES ON INFORMES (ID_EMPRESA); +CREATE INDEX MOVIMIENTOS_IDX1 ON MOVIMIENTOS (TIPO); +CREATE INDEX IDX_PEDIDOS_CLIENTE ON PEDIDOS_CLIENTE (ID_FORMA_PAGO); +CREATE INDEX IDX_PEDIDOS_CLIENTE_DETALLES ON PEDIDOS_CLIENTE_DETALLES (ID_PEDIDO); +CREATE INDEX IDX_PEDIDOS_CLIENTE_DETALLES1 ON PEDIDOS_CLIENTE_DETALLES (ID_ARTICULO); +CREATE INDEX IDX_PEDIDOS_PROVEEDOR ON PEDIDOS_PROVEEDOR (ID_PEDIDO_CLIENTE); +CREATE INDEX IDX_PEDIDOS_PROVEEDOR1 ON PEDIDOS_PROVEEDOR (ID_ALMACEN); +CREATE INDEX IDX_PEDIDOS_PROVEEDOR2 ON PEDIDOS_PROVEEDOR (ID_FORMA_PAGO); +CREATE INDEX IDX_PEDIDOS_PROVEEDOR_DETALLES ON PEDIDOS_PROVEEDOR_DETALLES (ID_ARTICULO); +CREATE INDEX IDX_PROVEEDORES_DATOS ON PROVEEDORES_DATOS (ID_TIPO_IVA); +CREATE INDEX IDX_PROVEEDORES_DATOS1 ON PROVEEDORES_DATOS (ID_FORMA_PAGO); +CREATE INDEX IDX_RECIBOS_CLIENTE ON RECIBOS_CLIENTE (ID_RECIBO_COMPENSADO); +CREATE INDEX IDX_RECIBOS_PROVEEDOR ON RECIBOS_PROVEEDOR (ID_RECIBO_COMPENSADO); +CREATE INDEX IDX_REFERENCIAS ON REFERENCIAS (ID_EMPRESA); +CREATE INDEX IDX_REMESAS_CLIENTE ON REMESAS_CLIENTE (ID_DATOS_BANCO); +CREATE INDEX IDX_REMESAS_PROVEEDOR ON REMESAS_PROVEEDOR (ID_DATOS_BANCO); + +ALTER TABLE ALBARANES_CLIENTE ADD CONSTRAINT FK_ALBARAN_CLIENTE1 FOREIGN KEY (ID_CLIENTE) REFERENCES CONTACTOS (ID) ON UPDATE NO ACTION ON DELETE NO ACTION; + +ALTER TABLE ALBARANES_CLIENTE ADD CONSTRAINT FK_ALBARAN_CLIENTE2 FOREIGN KEY (ID_EMPRESA) REFERENCES EMPRESAS (ID) ON UPDATE NO ACTION ON DELETE NO ACTION; + +ALTER TABLE ALBARANES_CLIENTE ADD CONSTRAINT FK_ALBARAN_CLIENTE3 FOREIGN KEY (ID_PEDIDO) REFERENCES PEDIDOS_CLIENTE (ID) ON UPDATE NO ACTION ON DELETE NO ACTION; + +ALTER TABLE ALBARANES_CLIENTE ADD CONSTRAINT FK_ALBARAN_CLIENTE4 FOREIGN KEY (ID_FACTURA) REFERENCES FACTURAS_CLIENTE (ID) ON UPDATE SET NULL ON DELETE SET NULL; + +ALTER TABLE ALBARANES_PROVEEDOR ADD CONSTRAINT FK_ALBARANES_PROVEEDOR3 FOREIGN KEY (ID_PEDIDO) REFERENCES PEDIDOS_PROVEEDOR (ID) ON UPDATE CASCADE ON DELETE CASCADE; + +ALTER TABLE ALBARANES_PROVEEDOR ADD CONSTRAINT FK_ALBARANES_PROVEEDOR4 FOREIGN KEY (ID_FACTURA) REFERENCES FACTURAS_PROVEEDOR (ID) ON UPDATE CASCADE ON DELETE SET NULL; + +ALTER TABLE ALBARANES_PROVEEDOR ADD CONSTRAINT FK_ALBARAN_PROVEEDOR1 FOREIGN KEY (ID_PROVEEDOR) REFERENCES CONTACTOS (ID) ON UPDATE NO ACTION ON DELETE NO ACTION; + +ALTER TABLE ALBARANES_PROVEEDOR ADD CONSTRAINT FK_ALBARAN_PROVEEDOR2 FOREIGN KEY (ID_EMPRESA) REFERENCES EMPRESAS (ID) ON UPDATE NO ACTION ON DELETE NO ACTION; + +ALTER TABLE ALMACENES ADD CONSTRAINT FK_ALMACENES_EMPRESAS FOREIGN KEY (ID_EMPRESA) REFERENCES EMPRESAS (ID) ON UPDATE NO ACTION ON DELETE NO ACTION; + +ALTER TABLE ARTICULOS ADD CONSTRAINT FK_ARTICULOS_EMPRESA FOREIGN KEY (ID_EMPRESA) REFERENCES EMPRESAS (ID) ON UPDATE NO ACTION ON DELETE NO ACTION; + +ALTER TABLE COMISIONES_LIQUIDADAS ADD CONSTRAINT FK_COMISIONES_LIQUIDADAS FOREIGN KEY (ID_AGENTE) REFERENCES CONTACTOS (ID); + +ALTER TABLE EMPRESAS_CONTACTOS ADD CONSTRAINT FK_EMPRESAS_CONTACTOS FOREIGN KEY (ID_CONTACTO) REFERENCES CONTACTOS (ID) ON UPDATE CASCADE ON DELETE CASCADE; + +ALTER TABLE EMPRESAS_DATOS_BANCO ADD CONSTRAINT FK_EMPRESAS_DATOS_BANCO FOREIGN KEY (ID_EMPRESA) REFERENCES EMPRESAS (ID) ON UPDATE CASCADE ON DELETE CASCADE; + +ALTER TABLE FACTURAS_CLIENTE ADD CONSTRAINT FK_FACTURAS_CLIENTE_EMPRESAS FOREIGN KEY (ID_EMPRESA) REFERENCES EMPRESAS (ID) ON UPDATE NO ACTION ON DELETE NO ACTION; + +ALTER TABLE FACTURAS_CLIENTE_DETALLES ADD CONSTRAINT FK_FACTURAS_CLI_DET_ID_FACTURA FOREIGN KEY (ID_FACTURA) REFERENCES FACTURAS_CLIENTE (ID) ON UPDATE CASCADE ON DELETE CASCADE; + +ALTER TABLE FACTURAS_PROVEEDOR ADD CONSTRAINT FK_FACTURAS_PROVEEDOR_EMPRESAS FOREIGN KEY (ID_EMPRESA) REFERENCES EMPRESAS (ID) ON UPDATE NO ACTION ON DELETE NO ACTION; + +ALTER TABLE FACTURAS_PROVEEDOR_DETALLES ADD CONSTRAINT FK_FACTURAS_PRO_DET_ID_FACTURA FOREIGN KEY (ID_FACTURA) REFERENCES FACTURAS_PROVEEDOR (ID) ON UPDATE CASCADE ON DELETE CASCADE; + +ALTER TABLE MOVIMIENTOS ADD CONSTRAINT FK_MOVIMIENTOS FOREIGN KEY (ID_ARTICULO) REFERENCES ARTICULOS (ID); + +ALTER TABLE MOVIMIENTOS ADD CONSTRAINT FK_MOVIMIENTOS2 FOREIGN KEY (ID_ALMACEN) REFERENCES ALMACENES (ID); + +ALTER TABLE PAGOS_CLIENTE ADD CONSTRAINT FK_PAGOS_CLIENTE FOREIGN KEY (ID_RECIBO) REFERENCES RECIBOS_CLIENTE (ID); + +ALTER TABLE PAGOS_PROVEEDOR ADD CONSTRAINT FK_PAGOS_PROVEEDOR FOREIGN KEY (ID_RECIBO) REFERENCES RECIBOS_PROVEEDOR (ID); + +ALTER TABLE PEDIDOS_CLIENTE ADD CONSTRAINT FK_PEDIDOS_CLIENTE FOREIGN KEY (ID_CLIENTE) REFERENCES CONTACTOS (ID); + +ALTER TABLE PEDIDOS_CLIENTE ADD CONSTRAINT FK_PEDIDOS_CLIENTE_ID_EMPRESA FOREIGN KEY (ID_EMPRESA) REFERENCES EMPRESAS (ID); + +ALTER TABLE PEDIDOS_PROVEEDOR ADD CONSTRAINT FK_PEDIDOS_PROVEEDOR FOREIGN KEY (ID_EMPRESA) REFERENCES EMPRESAS (ID); + +ALTER TABLE PEDIDOS_PROVEEDOR ADD CONSTRAINT FK_PEDIDOS_PROVEEDOR2 FOREIGN KEY (ID_PROVEEDOR) REFERENCES CONTACTOS (ID); + +ALTER TABLE PEDIDOS_PROVEEDOR_DETALLES ADD CONSTRAINT FK_PEDIDOS_PROV_DET_ID_PEDIDO FOREIGN KEY (ID_PEDIDO) REFERENCES PEDIDOS_PROVEEDOR (ID) ON UPDATE CASCADE ON DELETE CASCADE; + +ALTER TABLE RECIBOS_CLIENTE ADD CONSTRAINT FK_RECIBOS_CLIENTE FOREIGN KEY (ID_FACTURA) REFERENCES FACTURAS_CLIENTE (ID) ON UPDATE CASCADE ON DELETE CASCADE; + +ALTER TABLE RECIBOS_CLIENTE ADD CONSTRAINT FK_RECIBOS_CLIENTE2 FOREIGN KEY (ID_REMESA) REFERENCES REMESAS_CLIENTE (ID) ON UPDATE SET NULL ON DELETE SET NULL; + +ALTER TABLE RECIBOS_PROVEEDOR ADD CONSTRAINT FK_RECIBOS_PROVEEDOR FOREIGN KEY (ID_FACTURA) REFERENCES FACTURAS_PROVEEDOR (ID) ON UPDATE CASCADE ON DELETE CASCADE; + +ALTER TABLE RECIBOS_PROVEEDOR ADD CONSTRAINT FK_RECIBOS_PROVEEDOR1 FOREIGN KEY (ID_REMESA) REFERENCES REMESAS_PROVEEDOR (ID) ON UPDATE SET NULL ON DELETE SET NULL; + +ALTER TABLE REMESAS_CLIENTE ADD CONSTRAINT FK_REMESAS_CLIENTE FOREIGN KEY (ID_EMPRESA) REFERENCES EMPRESAS (ID); + +ALTER TABLE REMESAS_PROVEEDOR ADD CONSTRAINT FK_REMESAS_PROVEEDOR FOREIGN KEY (ID_EMPRESA) REFERENCES EMPRESAS (ID); + +ALTER TABLE TIENDA_WEB ADD CONSTRAINT FK_EMPRESAS_TIENDA_WEB FOREIGN KEY (ID_EMPRESA) REFERENCES EMPRESAS (ID) ON UPDATE CASCADE ON DELETE CASCADE; + +/* View: V_CONTACTOS, Owner: SYSDBA */ +CREATE VIEW V_CONTACTOS (ID, ID_CATEGORIA, NIF_CIF, NOMBRE, PERSONA_CONTACTO, CALLE, POBLACION, PROVINCIA, CODIGO_POSTAL, TELEFONO_1, TELEFONO_2, MOVIL_1, MOVIL_2, FAX, EMAIL_1, EMAIL_2, PAGINA_WEB, NOTAS, FECHA_ALTA, FECHA_MODIFICACION, USUARIO, ID_EMPRESA, REFERENCIA) AS + +SELECT CONTACTOS.ID, + CONTACTOS_CATEGORIAS.ID_CATEGORIA, + CONTACTOS.NIF_CIF, + CONTACTOS.NOMBRE, + CONTACTOS.PERSONA_CONTACTO, + CONTACTOS.CALLE, + CONTACTOS.POBLACION, + CONTACTOS.PROVINCIA, + CONTACTOS.CODIGO_POSTAL, + CONTACTOS.TELEFONO_1, + CONTACTOS.TELEFONO_2, + CONTACTOS.MOVIL_1, + CONTACTOS.MOVIL_2, + CONTACTOS.FAX, + CONTACTOS.EMAIL_1, + CONTACTOS.EMAIL_2, + CONTACTOS.PAGINA_WEB, + CONTACTOS.NOTAS, + CONTACTOS.FECHA_ALTA, + CONTACTOS.FECHA_MODIFICACION, + CONTACTOS.USUARIO, + EMPRESAS_CONTACTOS.ID_EMPRESA, + CONTACTOS.REFERENCIA +FROM CONTACTOS + INNER JOIN CONTACTOS_CATEGORIAS ON (CONTACTOS_CATEGORIAS.ID_CONTACTO = + CONTACTOS.ID) + INNER JOIN EMPRESAS_CONTACTOS ON (EMPRESAS_CONTACTOS.ID_CONTACTO = + CONTACTOS.ID); + +/* View: V_CLIENTES, Owner: SYSDBA */ +CREATE VIEW V_CLIENTES (ID, ID_CATEGORIA, NIF_CIF, NOMBRE, PERSONA_CONTACTO, CALLE, POBLACION, PROVINCIA, CODIGO_POSTAL, TELEFONO_1, TELEFONO_2, MOVIL_1, MOVIL_2, FAX, EMAIL_1, EMAIL_2, PAGINA_WEB, NOTAS, FECHA_ALTA, FECHA_MODIFICACION, USUARIO, ID_EMPRESA, REFERENCIA, GRUPO_CLIENTE, NOMBRE_COMERCIAL, VENCIMIENTO_FACTURAS, BLOQUEADO, REGIMEN_IVA, MOTIVO_BLOQUEO, RECARGO_EQUIVALENCIA, ID_TIPO_IVA, ID_FORMA_PAGO, TIENDA_WEB) AS + +SELECT + V_CONTACTOS.ID, + V_CONTACTOS.ID_CATEGORIA, + V_CONTACTOS.NIF_CIF, + V_CONTACTOS.NOMBRE, + V_CONTACTOS.PERSONA_CONTACTO, + V_CONTACTOS.CALLE, + V_CONTACTOS.POBLACION, + V_CONTACTOS.PROVINCIA, + V_CONTACTOS.CODIGO_POSTAL, + V_CONTACTOS.TELEFONO_1, + V_CONTACTOS.TELEFONO_2, + V_CONTACTOS.MOVIL_1, + V_CONTACTOS.MOVIL_2, + V_CONTACTOS.FAX, + V_CONTACTOS.EMAIL_1, + V_CONTACTOS.EMAIL_2, + V_CONTACTOS.PAGINA_WEB, + V_CONTACTOS.NOTAS, + V_CONTACTOS.FECHA_ALTA, + V_CONTACTOS.FECHA_MODIFICACION, + V_CONTACTOS.USUARIO, + V_CONTACTOS.ID_EMPRESA, + V_CONTACTOS.REFERENCIA, + CLIENTES_DATOS.GRUPO_CLIENTE, + CLIENTES_DATOS.NOMBRE_COMERCIAL, + CLIENTES_DATOS.VENCIMIENTO_FACTURAS, + CLIENTES_DATOS.BLOQUEADO, + CLIENTES_DATOS.REGIMEN_IVA, + CLIENTES_DATOS.MOTIVO_BLOQUEO, + CLIENTES_DATOS.RECARGO_EQUIVALENCIA, + CLIENTES_DATOS.ID_TIPO_IVA, + CLIENTES_DATOS.ID_FORMA_PAGO, + CLIENTES_DATOS.TIENDA_WEB +FROM + V_CONTACTOS + LEFT OUTER JOIN CLIENTES_DATOS ON (V_CONTACTOS.ID = CLIENTES_DATOS.ID_CLIENTE) +WHERE + V_CONTACTOS.ID_CATEGORIA = 1; + +/* View: V_PROVEEDORES, Owner: SYSDBA */ +CREATE VIEW V_PROVEEDORES (ID, ID_CATEGORIA, NIF_CIF, NOMBRE, PERSONA_CONTACTO, CALLE, POBLACION, PROVINCIA, CODIGO_POSTAL, TELEFONO_1, TELEFONO_2, MOVIL_1, MOVIL_2, FAX, EMAIL_1, EMAIL_2, PAGINA_WEB, NOTAS, FECHA_ALTA, FECHA_MODIFICACION, USUARIO, ID_EMPRESA, REFERENCIA, DESCUENTO, DESCRIPCION_PROVEEDOR, CODIGO_ASIGNADO, GRUPO_PROVEEDOR, REGIMEN_IVA, ID_TIPO_IVA, ID_FORMA_PAGO, TIENDA_WEB, HOMOLOGADO, CERTIFICACION) AS + +SELECT + V_CONTACTOS.ID, + V_CONTACTOS.ID_CATEGORIA, + V_CONTACTOS.NIF_CIF, + V_CONTACTOS.NOMBRE, + V_CONTACTOS.PERSONA_CONTACTO, + V_CONTACTOS.CALLE, + V_CONTACTOS.POBLACION, + V_CONTACTOS.PROVINCIA, + V_CONTACTOS.CODIGO_POSTAL, + V_CONTACTOS.TELEFONO_1, + V_CONTACTOS.TELEFONO_2, + V_CONTACTOS.MOVIL_1, + V_CONTACTOS.MOVIL_2, + V_CONTACTOS.FAX, + V_CONTACTOS.EMAIL_1, + V_CONTACTOS.EMAIL_2, + V_CONTACTOS.PAGINA_WEB, + V_CONTACTOS.NOTAS, + V_CONTACTOS.FECHA_ALTA, + V_CONTACTOS.FECHA_MODIFICACION, + V_CONTACTOS.USUARIO, + V_CONTACTOS.ID_EMPRESA, + V_CONTACTOS.REFERENCIA, + PROVEEDORES_DATOS.DESCUENTO, + PROVEEDORES_DATOS.DESCRIPCION_PROVEEDOR, + PROVEEDORES_DATOS.CODIGO_ASIGNADO, + PROVEEDORES_DATOS.GRUPO_PROVEEDOR, + PROVEEDORES_DATOS.REGIMEN_IVA, + PROVEEDORES_DATOS.ID_TIPO_IVA, + PROVEEDORES_DATOS.ID_FORMA_PAGO, + PROVEEDORES_DATOS.TIENDA_WEB, + PROVEEDORES_DATOS.HOMOLOGADO, + PROVEEDORES_DATOS.CERTIFICACION +FROM + PROVEEDORES_DATOS + LEFT OUTER JOIN V_CONTACTOS ON (PROVEEDORES_DATOS.ID_PROVEEDOR = V_CONTACTOS.ID) +WHERE + V_CONTACTOS.ID_CATEGORIA = 2; + +/* View: V_EMPLEADOS, Owner: SYSDBA */ +CREATE VIEW V_EMPLEADOS (ID, ID_CATEGORIA, NIF_CIF, NOMBRE, PERSONA_CONTACTO, CALLE, POBLACION, PROVINCIA, CODIGO_POSTAL, TELEFONO_1, TELEFONO_2, MOVIL_1, MOVIL_2, FAX, EMAIL_1, EMAIL_2, PAGINA_WEB, NOTAS, FECHA_ALTA, FECHA_MODIFICACION, USUARIO, ID_EMPRESA, REFERENCIA, FECHA_NACIMIENTO, CATEGORIA, FECHA_ALTA_EMPRESA, FORMACION_BASE, FORMACION_COMPLE, FORMACION_RECIBIDA, EXPERIENCIA) AS + +SELECT V_CONTACTOS.ID, + V_CONTACTOS.ID_CATEGORIA, + V_CONTACTOS.NIF_CIF, + V_CONTACTOS.NOMBRE, + V_CONTACTOS.PERSONA_CONTACTO, + V_CONTACTOS.CALLE, + V_CONTACTOS.POBLACION, + V_CONTACTOS.PROVINCIA, + V_CONTACTOS.CODIGO_POSTAL, + V_CONTACTOS.TELEFONO_1, + V_CONTACTOS.TELEFONO_2, + V_CONTACTOS.MOVIL_1, + V_CONTACTOS.MOVIL_2, + V_CONTACTOS.FAX, + V_CONTACTOS.EMAIL_1, + V_CONTACTOS.EMAIL_2, + V_CONTACTOS.PAGINA_WEB, + V_CONTACTOS.NOTAS, + V_CONTACTOS.FECHA_ALTA, + V_CONTACTOS.FECHA_MODIFICACION, + V_CONTACTOS.USUARIO, + V_CONTACTOS.ID_EMPRESA, + V_CONTACTOS.REFERENCIA, + + EMPLEADOS_DATOS.FECHA_NACIMIENTO, + EMPLEADOS_DATOS.CATEGORIA, + EMPLEADOS_DATOS.FECHA_ALTA_EMPRESA, + EMPLEADOS_DATOS.FORMACION_BASE, + EMPLEADOS_DATOS.FORMACION_COMPLE, + EMPLEADOS_DATOS.FORMACION_RECIBIDA, + EMPLEADOS_DATOS.EXPERIENCIA + +FROM V_CONTACTOS +LEFT OUTER JOIN EMPLEADOS_DATOS ON (EMPLEADOS_DATOS.ID_EMPLEADO = V_CONTACTOS.ID) + +WHERE V_CONTACTOS.ID_CATEGORIA = 3; +SET TERM ^ ; + +/* Triggers only will work for SQL triggers */ +CREATE TRIGGER TRI_INSERT_ALBARANES_CLIENTE FOR ALBARANES_CLIENTE +ACTIVE BEFORE INSERT POSITION 0 +AS +begin + NEW.FECHA_ALTA = current_timestamp; + NEW.FECHA_MODIFICACION = Null; +end ^ + +CREATE TRIGGER TRI_UPDATE_ALBARANES_CLIENTE FOR ALBARANES_CLIENTE +ACTIVE BEFORE UPDATE POSITION 0 +AS +begin + NEW.FECHA_MODIFICACION = current_timestamp; +end ^ + +CREATE TRIGGER TRI_INSERT_ALBARANES_CLI_DET FOR ALBARANES_CLIENTE_DETALLES +ACTIVE BEFORE INSERT POSITION 0 +AS +begin + NEW.FECHA_ALTA = current_timestamp; + NEW.FECHA_MODIFICACION = Null; +end ^ + +CREATE TRIGGER TRI_UPDATE_ALBARANES_CLI_DET FOR ALBARANES_CLIENTE_DETALLES +ACTIVE BEFORE UPDATE POSITION 0 +AS +begin + NEW.FECHA_MODIFICACION = current_timestamp; +end ^ + +CREATE TRIGGER TRI_INSERT_ALBARANES_PROVEEDOR FOR ALBARANES_PROVEEDOR +ACTIVE BEFORE INSERT POSITION 0 +AS +begin + NEW.FECHA_ALTA = current_timestamp; + NEW.FECHA_MODIFICACION = Null; +end ^ + +CREATE TRIGGER TRI_UPDATE_ALBARANES_PROVEEDOR FOR ALBARANES_PROVEEDOR +ACTIVE BEFORE UPDATE POSITION 0 +AS +begin + NEW.FECHA_MODIFICACION = current_timestamp; +end ^ + +CREATE TRIGGER TRI_INSERT_ALBARANES_PRO_DET FOR ALBARANES_PROVEEDOR_DETALLES +ACTIVE BEFORE INSERT POSITION 0 +AS +begin + NEW.FECHA_ALTA = current_timestamp; + NEW.FECHA_MODIFICACION = Null; +end ^ + +CREATE TRIGGER TRI_UPDATE_ALBARANES_PRO_DET FOR ALBARANES_PROVEEDOR_DETALLES +ACTIVE BEFORE UPDATE POSITION 0 +AS +begin + NEW.FECHA_MODIFICACION = current_timestamp; +end ^ + +CREATE TRIGGER TRI_INSERT_ALMACENES FOR ALMACENES +ACTIVE BEFORE INSERT POSITION 0 +AS +begin + NEW.FECHA_ALTA = current_timestamp; + NEW.FECHA_MODIFICACION = Null; +end ^ + +CREATE TRIGGER TRI_UPDATE_ALMACENES FOR ALMACENES +ACTIVE BEFORE UPDATE POSITION 0 +AS +begin + NEW.FECHA_MODIFICACION = current_timestamp; +end ^ + +CREATE TRIGGER TRI_INSERT_ARTICULOS FOR ARTICULOS +ACTIVE BEFORE INSERT POSITION 0 +AS +begin + NEW.FECHA_ALTA = current_timestamp; + NEW.FECHA_MODIFICACION = Null; +end ^ + +CREATE TRIGGER TRI_UPDATE_ARTICULOS FOR ARTICULOS +ACTIVE BEFORE UPDATE POSITION 0 +AS +begin + NEW.FECHA_MODIFICACION = current_timestamp; +end ^ + +CREATE TRIGGER TRI_INSERT_COMISIONES_LIQUID FOR COMISIONES_LIQUIDADAS +ACTIVE BEFORE INSERT POSITION 0 +AS +begin + NEW.FECHA_ALTA = current_timestamp; + NEW.FECHA_MODIFICACION = Null; +end ^ + +CREATE TRIGGER TRI_UPDATE_COMISIONES_LIQUID FOR COMISIONES_LIQUIDADAS +ACTIVE BEFORE UPDATE POSITION 0 +AS +begin + NEW.FECHA_MODIFICACION = current_timestamp; +end ^ + +CREATE TRIGGER TRI_INSERT_CONTACTOS FOR CONTACTOS +ACTIVE BEFORE INSERT POSITION 0 +AS +begin + NEW.FECHA_ALTA = current_timestamp; + NEW.FECHA_MODIFICACION = Null; +end ^ + +CREATE TRIGGER TRI_UPDATE_CONTACTOS FOR CONTACTOS +ACTIVE BEFORE UPDATE POSITION 0 +AS +begin + NEW.FECHA_MODIFICACION = current_timestamp; +end ^ + +CREATE TRIGGER TRI_INSERT_CONTACTOS_BANCO FOR CONTACTOS_DATOS_BANCO +ACTIVE BEFORE INSERT POSITION 0 +AS +begin + NEW.FECHA_ALTA = current_timestamp; + NEW.FECHA_MODIFICACION = Null; +end ^ + +CREATE TRIGGER TRI_UPDATE_CONTACTOS_BANCO FOR CONTACTOS_DATOS_BANCO +ACTIVE BEFORE UPDATE POSITION 0 +AS +begin + NEW.FECHA_MODIFICACION = current_timestamp; +end ^ + +CREATE TRIGGER TRI_INSERT_CONTACTOS_DIR FOR CONTACTOS_DIRECCIONES +ACTIVE BEFORE INSERT POSITION 0 +AS +begin + NEW.FECHA_ALTA = current_timestamp; + NEW.FECHA_MODIFICACION = Null; +end ^ + +CREATE TRIGGER TRI_UPDATE_CONTACTOS_DIR FOR CONTACTOS_DIRECCIONES +ACTIVE BEFORE UPDATE POSITION 0 +AS +begin + NEW.FECHA_MODIFICACION = current_timestamp; +end ^ + +CREATE TRIGGER TRI_INSERT_FACTURAS_CLIENTE FOR FACTURAS_CLIENTE +ACTIVE BEFORE INSERT POSITION 0 +AS +begin + NEW.FECHA_ALTA = current_timestamp; + NEW.FECHA_MODIFICACION = Null; +end ^ + +CREATE TRIGGER TRI_UPDATE_FACTURAS_CLIENTE FOR FACTURAS_CLIENTE +ACTIVE BEFORE UPDATE POSITION 0 +AS +begin + NEW.FECHA_MODIFICACION = current_timestamp; +end ^ + +CREATE TRIGGER TRI_INSERT_FACTURAS_CLIENTE_DET FOR FACTURAS_CLIENTE_DETALLES +ACTIVE BEFORE INSERT POSITION 0 +AS +begin + NEW.FECHA_ALTA = current_timestamp; + NEW.FECHA_MODIFICACION = Null; +end ^ + +CREATE TRIGGER TRI_UPDATE_FACTURAS_CLIENTE_DET FOR FACTURAS_CLIENTE_DETALLES +ACTIVE BEFORE UPDATE POSITION 0 +AS +begin + NEW.FECHA_MODIFICACION = current_timestamp; +end ^ + +CREATE TRIGGER TRI_INSERT_FACTURAS_PROVEEDOR FOR FACTURAS_PROVEEDOR +ACTIVE BEFORE INSERT POSITION 0 +AS +begin + NEW.FECHA_ALTA = current_timestamp; + NEW.FECHA_MODIFICACION = Null; +end ^ + +CREATE TRIGGER TRI_UPDATE_FACTURAS_PROVEEDOR FOR FACTURAS_PROVEEDOR +ACTIVE BEFORE UPDATE POSITION 0 +AS +begin + NEW.FECHA_MODIFICACION = current_timestamp; +end ^ + +CREATE TRIGGER TRI_INSERT_FACTURAS_PROV_DET FOR FACTURAS_PROVEEDOR_DETALLES +ACTIVE BEFORE INSERT POSITION 0 +AS +begin + NEW.FECHA_ALTA = current_timestamp; + NEW.FECHA_MODIFICACION = Null; +end ^ + +CREATE TRIGGER TRI_UPDATE_FACTURAS_PROV_DET FOR FACTURAS_PROVEEDOR_DETALLES +ACTIVE BEFORE UPDATE POSITION 0 +AS +begin + NEW.FECHA_MODIFICACION = current_timestamp; +end ^ + +CREATE TRIGGER TRI_INSERT_PAGOS_CLIENTE FOR PAGOS_CLIENTE +ACTIVE BEFORE INSERT POSITION 0 +AS +begin + NEW.FECHA_ALTA = current_timestamp; + NEW.FECHA_MODIFICACION = Null; +end ^ + +CREATE TRIGGER TRI_UPDATE_PAGOS_CLIENTE FOR PAGOS_CLIENTE +ACTIVE BEFORE UPDATE POSITION 0 +AS +begin + NEW.FECHA_MODIFICACION = current_timestamp; +end ^ + +CREATE TRIGGER TRI_INSERT_PAGOS_PROVEEDOR FOR PAGOS_PROVEEDOR +ACTIVE BEFORE INSERT POSITION 0 +AS +begin + NEW.FECHA_ALTA = current_timestamp; + NEW.FECHA_MODIFICACION = Null; +end ^ + +CREATE TRIGGER TRI_UPDATE_PAGOS_PROVEEDOR FOR PAGOS_PROVEEDOR +ACTIVE BEFORE UPDATE POSITION 0 +AS +begin + NEW.FECHA_MODIFICACION = current_timestamp; +end ^ + +CREATE TRIGGER TRI_INSERT_PEDIDOS_CLIENTE FOR PEDIDOS_CLIENTE +ACTIVE BEFORE INSERT POSITION 0 +AS +begin + NEW.FECHA_ALTA = current_timestamp; + NEW.FECHA_MODIFICACION = Null; +end ^ + +CREATE TRIGGER TRI_UPDATE_PEDIDOS_CLIENTE FOR PEDIDOS_CLIENTE +ACTIVE BEFORE UPDATE POSITION 0 +AS +begin + NEW.FECHA_MODIFICACION = current_timestamp; +end ^ + +CREATE TRIGGER TRI_INSERT_PEDIDOS_CLI_DET FOR PEDIDOS_CLIENTE_DETALLES +ACTIVE BEFORE INSERT POSITION 0 +AS +begin + NEW.FECHA_ALTA = current_timestamp; + NEW.FECHA_MODIFICACION = Null; +end ^ + +CREATE TRIGGER TRI_UPDATE_PEDIDOS_CLI_DET FOR PEDIDOS_CLIENTE_DETALLES +ACTIVE BEFORE UPDATE POSITION 0 +AS +begin + NEW.FECHA_MODIFICACION = current_timestamp; +end ^ + +CREATE TRIGGER TRI_INSERT_PEDIDOS_PROVEEDOR FOR PEDIDOS_PROVEEDOR +ACTIVE BEFORE INSERT POSITION 0 +AS +begin + NEW.FECHA_ALTA = current_timestamp; + NEW.FECHA_MODIFICACION = Null; +end ^ + +CREATE TRIGGER TRI_UPDATE_PEDIDOS_PROVEEDOR FOR PEDIDOS_PROVEEDOR +ACTIVE BEFORE UPDATE POSITION 0 +AS +begin + NEW.FECHA_MODIFICACION = current_timestamp; +end ^ + +CREATE TRIGGER TRI_INSERT_PEDIDOS_PROV_DET FOR PEDIDOS_PROVEEDOR_DETALLES +ACTIVE BEFORE INSERT POSITION 0 +AS +begin + NEW.FECHA_ALTA = current_timestamp; + NEW.FECHA_MODIFICACION = Null; +end ^ + +CREATE TRIGGER TRI_UPDATE_PEDIDOS_PROV_DET FOR PEDIDOS_PROVEEDOR_DETALLES +ACTIVE BEFORE UPDATE POSITION 0 +AS +begin + NEW.FECHA_MODIFICACION = current_timestamp; +end ^ + +CREATE TRIGGER TRI_INSERT_RECIBOS_CLIENTE FOR RECIBOS_CLIENTE +ACTIVE BEFORE INSERT POSITION 0 +AS +begin + NEW.FECHA_ALTA = current_timestamp; + NEW.FECHA_MODIFICACION = Null; +end ^ + +CREATE TRIGGER TRI_UPDATE_RECIBOS_CLIENTE FOR RECIBOS_CLIENTE +ACTIVE BEFORE UPDATE POSITION 0 +AS +begin + NEW.FECHA_MODIFICACION = current_timestamp; +end ^ + +CREATE TRIGGER TRI_INSERT_RECIBOS_PROVEEDOR FOR RECIBOS_PROVEEDOR +ACTIVE BEFORE INSERT POSITION 0 +AS +begin + NEW.FECHA_ALTA = current_timestamp; + NEW.FECHA_MODIFICACION = Null; +end ^ + +CREATE TRIGGER TRI_UPDATE_RECIBOS_PROVEEDOR FOR RECIBOS_PROVEEDOR +ACTIVE BEFORE UPDATE POSITION 0 +AS +begin + NEW.FECHA_MODIFICACION = current_timestamp; +end ^ + +CREATE TRIGGER TRI_INSERT_REMESAS_CLIENTE FOR REMESAS_CLIENTE +ACTIVE BEFORE INSERT POSITION 0 +AS +begin + NEW.FECHA_ALTA = current_timestamp; + NEW.FECHA_MODIFICACION = Null; +end ^ + +CREATE TRIGGER TRI_UPDATE_REMESAS_CLI FOR REMESAS_CLIENTE +ACTIVE BEFORE UPDATE POSITION 0 +AS +begin + NEW.FECHA_MODIFICACION = current_timestamp; +end ^ + +CREATE TRIGGER TRI_INSERT_REMESAS_PROVEEDOR FOR REMESAS_PROVEEDOR +ACTIVE BEFORE INSERT POSITION 0 +AS +begin + NEW.FECHA_ALTA = current_timestamp; + NEW.FECHA_MODIFICACION = Null; +end ^ + +CREATE TRIGGER TRI_UPDATE_REMESAS_PROV FOR REMESAS_PROVEEDOR +ACTIVE BEFORE UPDATE POSITION 0 +AS +begin + NEW.FECHA_MODIFICACION = current_timestamp; +end ^ + +COMMIT WORK ^ +SET TERM ; ^ diff --git a/Database/scripts/factuges_sysdata.sql b/Database/scripts/factuges_sysdata.sql new file mode 100644 index 00000000..789a9a64 --- /dev/null +++ b/Database/scripts/factuges_sysdata.sql @@ -0,0 +1,49 @@ +SET SQL DIALECT 3; + +SET NAMES ISO8859_1; + +INSERT INTO CATEGORIAS (ID, CATEGORIA) VALUES (1, 'CLIENTE'); +INSERT INTO CATEGORIAS (ID, CATEGORIA) VALUES (2, 'PROVEEDOR'); +INSERT INTO CATEGORIAS (ID, CATEGORIA) VALUES (3, 'EMPLEADO'); +SET GENERATOR GEN_CATEGORIAS_ID TO 4; +COMMIT WORK; + +INSERT INTO INFORMES (ID, ID_EMPRESA, CATEGORIA, CONTROLLER, ICONO, NOMBRE, DESCRIPCION, ORDEN, MODIFICABLE) VALUES (1, 1, 'VENTAS ARTICULOS', 'InfVentasArticuloController', 4, 'Ventas por artículo', 'Informe de ventas por artículo', NULL, 'S'); +INSERT INTO INFORMES (ID, ID_EMPRESA, CATEGORIA, CONTROLLER, ICONO, NOMBRE, DESCRIPCION, ORDEN, MODIFICABLE) VALUES (2, 1, 'VENTAS ARTICULOS', 'InfVentasArticuloController', 4, 'Ventas por cliente', 'Informe de ventas por cliente y artículo', NULL, 'S'); +INSERT INTO INFORMES (ID, ID_EMPRESA, CATEGORIA, CONTROLLER, ICONO, NOMBRE, DESCRIPCION, ORDEN, MODIFICABLE) VALUES (3, 1, 'VENTAS ARTICULOS', 'InfVentasArticuloController', 4, 'Ventas por agente y cliente', 'Informe de ventas por agente y cliente', NULL, 'S'); +INSERT INTO INFORMES (ID, ID_EMPRESA, CATEGORIA, CONTROLLER, ICONO, NOMBRE, DESCRIPCION, ORDEN, MODIFICABLE) VALUES (4, 1, 'MARGEN ARTICULOS', 'InfMargenArticuloController', 0, 'Margen (promedio) por artículo', 'Informe de margen por artículo teniendo en cuenta el precio neto de venta promedio', NULL, 'S'); +INSERT INTO INFORMES (ID, ID_EMPRESA, CATEGORIA, CONTROLLER, ICONO, NOMBRE, DESCRIPCION, ORDEN, MODIFICABLE) VALUES (5, 1, 'VENTAS ARTICULOS', 'InfVentasArticuloController', 4, 'Ventas por proveedor', 'Informe de ventas por proveedor y artículo', NULL, 'S'); +INSERT INTO INFORMES (ID, ID_EMPRESA, CATEGORIA, CONTROLLER, ICONO, NOMBRE, DESCRIPCION, ORDEN, MODIFICABLE) VALUES (6, 1, 'MARGEN ARTICULOS', 'InfMargenArticuloController', 0, 'Margen (promedio) por cliente', 'Informe de margen por artículo agrupado por cliente teniendo en cuenta el precio neto de venta promedio', NULL, 'S'); +INSERT INTO INFORMES (ID, ID_EMPRESA, CATEGORIA, CONTROLLER, ICONO, NOMBRE, DESCRIPCION, ORDEN, MODIFICABLE) VALUES (7, 1, 'MARGEN ARTICULOS', 'InfMargenArticuloController', 0, 'Margen (promedio) por agente y cliente', 'Informe de margen por artículo agrupado por agente y cliente teniendo en cuenta el precio neto de venta promedio', NULL, 'S'); +INSERT INTO INFORMES (ID, ID_EMPRESA, CATEGORIA, CONTROLLER, ICONO, NOMBRE, DESCRIPCION, ORDEN, MODIFICABLE) VALUES (8, 1, 'MARGEN ARTICULOS', 'InfMargenArticuloController', 2, 'Margen (ult. venta) por artículo', 'Informe de margen por artículo teniendo en cuenta el precio neto de última venta', NULL, 'S'); +INSERT INTO INFORMES (ID, ID_EMPRESA, CATEGORIA, CONTROLLER, ICONO, NOMBRE, DESCRIPCION, ORDEN, MODIFICABLE) VALUES (9, 1, 'MARGEN ARTICULOS', 'InfMargenArticuloController', 2, 'Margen (ult.venta) por clientes', 'Informe de margen por artículo agrupado por cliente teniendo en cuenta el precio neto de última venta', NULL, 'S'); +INSERT INTO INFORMES (ID, ID_EMPRESA, CATEGORIA, CONTROLLER, ICONO, NOMBRE, DESCRIPCION, ORDEN, MODIFICABLE) VALUES (10, 1, 'MARGEN ARTICULOS', 'InfMargenArticuloController', 2, 'Margen (ult. venta) por agente y cliente', 'Informe de margen por artículo agrupado por agente y cliente teniendo en cuenta el precio neto de última venta', NULL, 'S'); +SET GENERATOR GEN_INFORMES_ID TO 11; +COMMIT WORK; + +INSERT INTO REFERENCIAS (CODIGO, VALOR, ID_EMPRESA, DESCRIPCION) VALUES ('REF_FACTURAS_CLIENTE', '00001', 1, 'Ref. facturas de cliente'); +INSERT INTO REFERENCIAS (CODIGO, VALOR, ID_EMPRESA, DESCRIPCION) VALUES ('REF_PEDIDOS_CLIENTE', '00001', 1, 'Ref. pedidos de cliente'); +INSERT INTO REFERENCIAS (CODIGO, VALOR, ID_EMPRESA, DESCRIPCION) VALUES ('REF_PEDIDOS_PROVEEDOR', '00001', 1, 'Ref. pedidos de proveedor'); +INSERT INTO REFERENCIAS (CODIGO, VALOR, ID_EMPRESA, DESCRIPCION) VALUES ('REF_ALBARANES_CLIENTE', '00001', 1, 'Ref. albaranes de cliente'); +INSERT INTO REFERENCIAS (CODIGO, VALOR, ID_EMPRESA, DESCRIPCION) VALUES ('REF_ALBARANES_PROVEEDOR', '00001', 1, 'Ref. albaranes de proveedor'); +INSERT INTO REFERENCIAS (CODIGO, VALOR, ID_EMPRESA, DESCRIPCION) VALUES ('REF_REMESAS_CLIENTE', '00001', 1, 'Ref. remesas de cliente'); +INSERT INTO REFERENCIAS (CODIGO, VALOR, ID_EMPRESA, DESCRIPCION) VALUES ('REF_COMISIONES', '00001', 1, 'Ref. liquidaciones de comision'); +INSERT INTO REFERENCIAS (CODIGO, VALOR, ID_EMPRESA, DESCRIPCION) VALUES ('REF_FACTURAS_PROVEEDOR', '00001', 1, 'Ref. facturas de proveedor'); +INSERT INTO REFERENCIAS (CODIGO, VALOR, ID_EMPRESA, DESCRIPCION) VALUES ('REF_ALBARANES_DEV_CLIENTE', '00001', 1, 'Ref. ordenes de devolucion de cliente'); +INSERT INTO REFERENCIAS (CODIGO, VALOR, ID_EMPRESA, DESCRIPCION) VALUES ('REF_ALBARANES_DEV_PROVEEDOR', '00001', 1, 'Ref. ordenes de devolucion de proveedor'); +INSERT INTO REFERENCIAS (CODIGO, VALOR, ID_EMPRESA, DESCRIPCION) VALUES ('REF_REMESAS_PROVEEDOR', '00001', 1, 'Ref. remesas de proveedor'); +INSERT INTO REFERENCIAS (CODIGO, VALOR, ID_EMPRESA, DESCRIPCION) VALUES ('REF_ABONOS_CLIENTE', '00001', 1, 'Ref. abonos de cliente'); +INSERT INTO REFERENCIAS (CODIGO, VALOR, ID_EMPRESA, DESCRIPCION) VALUES ('REF_ABONOS_PROVEEDOR', '00001', 1, 'Ref. abonos de proveedor'); +COMMIT WORK; + +INSERT INTO TIPOS_IVA (ID, REFERENCIA, DESCRIPCION, IVA, RE) VALUES (1, 'IVA16', 'IVA16', 16, 4); +INSERT INTO TIPOS_IVA (ID, REFERENCIA, DESCRIPCION, IVA, RE) VALUES (2, 'IVA4', 'IVA4', 4, 0.5); +INSERT INTO TIPOS_IVA (ID, REFERENCIA, DESCRIPCION, IVA, RE) VALUES (3, 'IVA7', 'IVA7', 7, 1); +INSERT INTO TIPOS_IVA (ID, REFERENCIA, DESCRIPCION, IVA, RE) VALUES (4, 'EXENTO', 'EXTRANJERO', 0, 0); +SET GENERATOR GEN_TIPOS_IVA_ID TO 5; +COMMIT WORK; + +/* Usuario 'Administrador' (Contraseña en blanco) */ +INSERT INTO USUARIOS (ID, USERNAME, LOGIN, PASS, PASSEXPIRED, BLOQUEADO, EMAIL, USERDAYSSUN, PRIVILEGED, TIPO, ID_PERFIL, CHECKSUM) VALUES (1, 'Administrador', 'admin', 'd41d8cd98f00b204e9800998ecf8427e', '2007-07-11', 0, 'admin@correo.net', 30, -1, 'U', 0, '6d1089be77aaaffa4ae01a4dd2fee551'); +SET GENERATOR GEN_USUARIOS_ID TO 2; +COMMIT WORK; diff --git a/Enviroment.config b/Enviroment.config new file mode 100644 index 00000000..c676d66e --- /dev/null +++ b/Enviroment.config @@ -0,0 +1,27 @@ + + + + + + + + + + + + + + + + + diff --git a/Output/Debug/Cliente/FactuGES.exe b/Output/Debug/Cliente/FactuGES.exe deleted file mode 100644 index cc3e7f6d..00000000 Binary files a/Output/Debug/Cliente/FactuGES.exe and /dev/null differ diff --git a/Output/Debug/Cliente/FactuGES.ini b/Output/Debug/Cliente/FactuGES.ini deleted file mode 100644 index 795e07f1..00000000 --- a/Output/Debug/Cliente/FactuGES.ini +++ /dev/null @@ -1,2 +0,0 @@ -[Server] -URL=http://localhost:8090/bin diff --git a/Output/Debug/Cliente/dunit.ini b/Output/Debug/Cliente/dunit.ini deleted file mode 100644 index 62830e87..00000000 --- a/Output/Debug/Cliente/dunit.ini +++ /dev/null @@ -1,25 +0,0 @@ -[Tests.TiendaWeb_Tests.exe] -TestTOscCustomersController=0 - -[Tests.TiendaWeb_Tests.exe.TestTTiendaWebController] -TestActualizarTienda=0 - -[GUITestRunner Config] -AutoSave=1 -Left=686 -Top=422 -Width=446 -Height=470 -Maximized=0 -UseRegistry=0 -ResultsPanel.Height=174 -ErrorMessage.Height=75 -ErrorMessage.Visible=1 -FailureList.ColumnWidth[0]=120 -FailureList.ColumnWidth[1]=100 -FailureList.ColumnWidth[2]=200 -FailureList.ColumnWidth[3]=50 -HideTestNodesOnOpen=0 -BreakOnFailures=0 -SelectTestedNode=1 - diff --git a/Output/Debug/Cliente/libmySQL.dll b/Output/Debug/Cliente/libmySQL.dll deleted file mode 100644 index 0e4fa175..00000000 Binary files a/Output/Debug/Cliente/libmySQL.dll and /dev/null differ diff --git a/Output/Debug/Cliente/midas.bat b/Output/Debug/Cliente/midas.bat deleted file mode 100644 index bbc9134b..00000000 --- a/Output/Debug/Cliente/midas.bat +++ /dev/null @@ -1,2 +0,0 @@ -copy midas.dll %windir%\system32 -regsvr32 %windir%\system32\midas.dll \ No newline at end of file diff --git a/Output/Debug/Cliente/midas.dll b/Output/Debug/Cliente/midas.dll deleted file mode 100644 index 17e795b1..00000000 Binary files a/Output/Debug/Cliente/midas.dll and /dev/null differ diff --git a/Output/Debug/Cliente/update/versionlocal.ini b/Output/Debug/Cliente/update/versionlocal.ini deleted file mode 100644 index 8eebefd1..00000000 --- a/Output/Debug/Cliente/update/versionlocal.ini +++ /dev/null @@ -1,19 +0,0 @@ -[Version] -Count=1 -CurrentProductionProgramVersion=2.2.4.0 -CurrentBetaProgramVersion= -CurrentAlphaProgramVersion= - -[Program Version 0] -DownloadPasswordRequired=FALSE -LocalInstallerParams= -ProgramLocationPath=files -ProgramLocationFileName=instalar.exe -ProgramVersion=2.2.4.0 -ProgramReleaseType=prtProduction -ProgramSize=1000000 -ProgramReleaseDate=30/08/2007 - -[Program Version 0\VersionDescription] -Count=0 - diff --git a/Output/Debug/Cliente/update/versionlocal.ini.temp b/Output/Debug/Cliente/update/versionlocal.ini.temp deleted file mode 100644 index e69de29b..00000000 diff --git a/Output/Debug/Servidor/FactuGES_Server.exe b/Output/Debug/Servidor/FactuGES_Server.exe deleted file mode 100644 index 49968182..00000000 Binary files a/Output/Debug/Servidor/FactuGES_Server.exe and /dev/null differ diff --git a/Output/Debug/Servidor/FactuGES_Server.exe.bak b/Output/Debug/Servidor/FactuGES_Server.exe.bak deleted file mode 100644 index f20fe4af..00000000 Binary files a/Output/Debug/Servidor/FactuGES_Server.exe.bak and /dev/null differ diff --git a/Output/Debug/Servidor/GDS32.DLL b/Output/Debug/Servidor/GDS32.DLL deleted file mode 100644 index f1148b77..00000000 Binary files a/Output/Debug/Servidor/GDS32.DLL and /dev/null differ diff --git a/Output/Debug/Servidor/ServerLog.txt b/Output/Debug/Servidor/ServerLog.txt deleted file mode 100644 index c878a01f..00000000 --- a/Output/Debug/Servidor/ServerLog.txt +++ /dev/null @@ -1,855 +0,0 @@ -[06/09/2007 12:28:09] -[Application: FactuGES (Servidor)] -: [Connect] - - > -[06/09/2007 12:28:09] -[Application: FactuGES (Servidor)] -: [Prepare] SELECT - ID - FROM - USUARIOS - WHERE USUARIO = :USUARIO AND - PASS = :PASS AND - ACTIVO = 1 - - Plan: PLAN (USUARIOS NATURAL) - - > -[06/09/2007 12:28:09] -[Application: FactuGES (Servidor)] -: [Start transaction] - - > -[06/09/2007 12:28:09] -[Application: FactuGES (Servidor)] -: [Prepare] Select F.RDB$COMPUTED_BLR, F.RDB$DEFAULT_VALUE, R.RDB$DEFAULT_VALUE, R.RDB$FIELD_NAME from RDB$RELATION_FIELDS R, RDB$FIELDS F where R.RDB$RELATION_NAME = :RELATION and R.RDB$FIELD_SOURCE = F.RDB$FIELD_NAME and ((not F.RDB$COMPUTED_BLR is NULL) or (not (F.RDB$DEFAULT_VALUE is NULL and R.RDB$DEFAULT_VALUE is NULL))) - - Plan: PLAN JOIN (R INDEX (RDB$INDEX_4), F INDEX (RDB$INDEX_2)) - - > -[06/09/2007 12:28:09] -[Application: FactuGES (Servidor)] -: [Execute] Select F.RDB$COMPUTED_BLR, F.RDB$DEFAULT_VALUE, R.RDB$DEFAULT_VALUE, R.RDB$FIELD_NAME from RDB$RELATION_FIELDS R, RDB$FIELDS F where R.RDB$RELATION_NAME = :RELATION and R.RDB$FIELD_SOURCE = F.RDB$FIELD_NAME and ((not F.RDB$COMPUTED_BLR is NULL) or (not (F.RDB$DEFAULT_VALUE is NULL and R.RDB$DEFAULT_VALUE is NULL))) - - RELATION = USUARIOS - - > -[06/09/2007 12:28:09] -[Application: FactuGES (Servidor)] -: [Prepare] SELECT RDB$FIELD_NAME, RDB$FIELD_POSITION FROM RDB$RELATION_CONSTRAINTS RR JOIN RDB$INDEX_SEGMENTS RI ON RR.RDB$INDEX_NAME = RI.RDB$INDEX_NAME WHERE RDB$RELATION_NAME = :relation_name AND RDB$CONSTRAINT_TYPE = 'PRIMARY KEY ' ORDER BY RDB$FIELD_POSITION - - Plan: PLAN SORT (JOIN (RR INDEX (RDB$INDEX_42), RI INDEX (RDB$INDEX_6))) - - > -[06/09/2007 12:28:09] -[Application: FactuGES (Servidor)] -: [Execute] SELECT RDB$FIELD_NAME, RDB$FIELD_POSITION FROM RDB$RELATION_CONSTRAINTS RR JOIN RDB$INDEX_SEGMENTS RI ON RR.RDB$INDEX_NAME = RI.RDB$INDEX_NAME WHERE RDB$RELATION_NAME = :relation_name AND RDB$CONSTRAINT_TYPE = 'PRIMARY KEY ' ORDER BY RDB$FIELD_POSITION - - RELATION_NAME = USUARIOS - - > -[06/09/2007 12:28:09] -[Application: FactuGES (Servidor)] -: [Commit (Hard commit)] - - > -[06/09/2007 12:28:09] -[Application: FactuGES (Servidor)] -: [Execute] SELECT - ID - FROM - USUARIOS - WHERE USUARIO = :USUARIO AND - PASS = :PASS AND - ACTIVO = 1 - - USUARIO = Luis - PASS = 1 - - > -[06/09/2007 12:28:09] -[Application: FactuGES (Servidor)] -: [Prepare] SELECT - PERFILES.PERFIL - FROM - PERFILES, PERFILES_USUARIOS - WHERE PERFILES_USUARIOS.ID_USUARIO = :ID_USUARIO - AND PERFILES.ID = PERFILES_USUARIOS.ID_PERFIL - - Plan: PLAN JOIN (PERFILES_USUARIOS NATURAL, PERFILES INDEX (PK_PERFILES)) - - > -[06/09/2007 12:28:09] -[Application: FactuGES (Servidor)] -: [Start transaction] - - > -[06/09/2007 12:28:09] -[Application: FactuGES (Servidor)] -: [Execute] Select F.RDB$COMPUTED_BLR, F.RDB$DEFAULT_VALUE, R.RDB$DEFAULT_VALUE, R.RDB$FIELD_NAME from RDB$RELATION_FIELDS R, RDB$FIELDS F where R.RDB$RELATION_NAME = :RELATION and R.RDB$FIELD_SOURCE = F.RDB$FIELD_NAME and ((not F.RDB$COMPUTED_BLR is NULL) or (not (F.RDB$DEFAULT_VALUE is NULL and R.RDB$DEFAULT_VALUE is NULL))) - - RELATION = PERFILES - - > -[06/09/2007 12:28:09] -[Application: FactuGES (Servidor)] -: [Execute] SELECT RDB$FIELD_NAME, RDB$FIELD_POSITION FROM RDB$RELATION_CONSTRAINTS RR JOIN RDB$INDEX_SEGMENTS RI ON RR.RDB$INDEX_NAME = RI.RDB$INDEX_NAME WHERE RDB$RELATION_NAME = :relation_name AND RDB$CONSTRAINT_TYPE = 'PRIMARY KEY ' ORDER BY RDB$FIELD_POSITION - - RELATION_NAME = PERFILES - - > -[06/09/2007 12:28:09] -[Application: FactuGES (Servidor)] -: [Commit (Hard commit)] - - > -[06/09/2007 12:28:09] -[Application: FactuGES (Servidor)] -: [Execute] SELECT - PERFILES.PERFIL - FROM - PERFILES, PERFILES_USUARIOS - WHERE PERFILES_USUARIOS.ID_USUARIO = :ID_USUARIO - AND PERFILES.ID = PERFILES_USUARIOS.ID_PERFIL - - ID_USUARIO = 2 - - > -[06/09/2007 12:28:09] -[Application: FactuGES (Servidor)] -: [Prepare] SELECT - ID_EMPRESA - FROM - EMPRESAS_USUARIOS - WHERE ID_USUARIO = :ID_USUARIO - - Plan: PLAN (EMPRESAS_USUARIOS NATURAL) - - > -[06/09/2007 12:28:09] -[Application: FactuGES (Servidor)] -: [Start transaction] - - > -[06/09/2007 12:28:09] -[Application: FactuGES (Servidor)] -: [Execute] Select F.RDB$COMPUTED_BLR, F.RDB$DEFAULT_VALUE, R.RDB$DEFAULT_VALUE, R.RDB$FIELD_NAME from RDB$RELATION_FIELDS R, RDB$FIELDS F where R.RDB$RELATION_NAME = :RELATION and R.RDB$FIELD_SOURCE = F.RDB$FIELD_NAME and ((not F.RDB$COMPUTED_BLR is NULL) or (not (F.RDB$DEFAULT_VALUE is NULL and R.RDB$DEFAULT_VALUE is NULL))) - - RELATION = EMPRESAS_USUARIOS - - > -[06/09/2007 12:28:09] -[Application: FactuGES (Servidor)] -: [Execute] SELECT RDB$FIELD_NAME, RDB$FIELD_POSITION FROM RDB$RELATION_CONSTRAINTS RR JOIN RDB$INDEX_SEGMENTS RI ON RR.RDB$INDEX_NAME = RI.RDB$INDEX_NAME WHERE RDB$RELATION_NAME = :relation_name AND RDB$CONSTRAINT_TYPE = 'PRIMARY KEY ' ORDER BY RDB$FIELD_POSITION - - RELATION_NAME = EMPRESAS_USUARIOS - - > -[06/09/2007 12:28:09] -[Application: FactuGES (Servidor)] -: [Commit (Hard commit)] - - > -[06/09/2007 12:28:09] -[Application: FactuGES (Servidor)] -: [Execute] SELECT - ID_EMPRESA - FROM - EMPRESAS_USUARIOS - WHERE ID_USUARIO = :ID_USUARIO - - ID_USUARIO = 2 - - > -[06/09/2007 12:28:09] -[Application: FactuGES (Servidor)] -: [Prepare] SELECT - ID, NIF_CIF, NOMBRE, RAZON_SOCIAL, CALLE, POBLACION, - PROVINCIA, CODIGO_POSTAL, TELEFONO_1, TELEFONO_2, MOVIL_1, - MOVIL_2, FAX, EMAIL_1, EMAIL_2, PAGINA_WEB, NOTAS, - FECHA_ALTA, FECHA_MODIFICACION, USUARIO, LOGOTIPO, - REGISTRO_MERCANTIL, IVA - FROM - EMPRESAS WHERE (ID IN (1,2)) - - Plan: PLAN (EMPRESAS INDEX (PK_EMPRESAS, PK_EMPRESAS)) - - > -[06/09/2007 12:28:09] -[Application: FactuGES (Servidor)] -: [Start transaction] - - > -[06/09/2007 12:28:09] -[Application: FactuGES (Servidor)] -: [Execute] Select F.RDB$COMPUTED_BLR, F.RDB$DEFAULT_VALUE, R.RDB$DEFAULT_VALUE, R.RDB$FIELD_NAME from RDB$RELATION_FIELDS R, RDB$FIELDS F where R.RDB$RELATION_NAME = :RELATION and R.RDB$FIELD_SOURCE = F.RDB$FIELD_NAME and ((not F.RDB$COMPUTED_BLR is NULL) or (not (F.RDB$DEFAULT_VALUE is NULL and R.RDB$DEFAULT_VALUE is NULL))) - - RELATION = EMPRESAS - - > -[06/09/2007 12:28:09] -[Application: FactuGES (Servidor)] -: [Execute] SELECT RDB$FIELD_NAME, RDB$FIELD_POSITION FROM RDB$RELATION_CONSTRAINTS RR JOIN RDB$INDEX_SEGMENTS RI ON RR.RDB$INDEX_NAME = RI.RDB$INDEX_NAME WHERE RDB$RELATION_NAME = :relation_name AND RDB$CONSTRAINT_TYPE = 'PRIMARY KEY ' ORDER BY RDB$FIELD_POSITION - - RELATION_NAME = EMPRESAS - - > -[06/09/2007 12:28:09] -[Application: FactuGES (Servidor)] -: [Commit (Hard commit)] - - > -[06/09/2007 12:28:09] -[Application: FactuGES (Servidor)] -: [Execute] SELECT - ID, NIF_CIF, NOMBRE, RAZON_SOCIAL, CALLE, POBLACION, - PROVINCIA, CODIGO_POSTAL, TELEFONO_1, TELEFONO_2, MOVIL_1, - MOVIL_2, FAX, EMAIL_1, EMAIL_2, PAGINA_WEB, NOTAS, - FECHA_ALTA, FECHA_MODIFICACION, USUARIO, LOGOTIPO, - REGISTRO_MERCANTIL, IVA - FROM - EMPRESAS WHERE (ID IN (1,2)) - - - > -[06/09/2007 12:28:09] -[Application: FactuGES (Servidor)] -: [Prepare] SELECT - ID, ID_EMPRESA, NOMBRE, ENTIDAD, SUCURSAL, DC, CUENTA, - SUFIJO_N19, SUFIJO_N58 - FROM - EMPRESAS_DATOS_BANCO -WHERE ID_EMPRESA = :ID_EMPRESA - - Plan: PLAN (EMPRESAS_DATOS_BANCO INDEX (FK_EMPRESAS_DATOS_BANCO)) - - > -[06/09/2007 12:28:09] -[Application: FactuGES (Servidor)] -: [Start transaction] - - > -[06/09/2007 12:28:09] -[Application: FactuGES (Servidor)] -: [Execute] Select F.RDB$COMPUTED_BLR, F.RDB$DEFAULT_VALUE, R.RDB$DEFAULT_VALUE, R.RDB$FIELD_NAME from RDB$RELATION_FIELDS R, RDB$FIELDS F where R.RDB$RELATION_NAME = :RELATION and R.RDB$FIELD_SOURCE = F.RDB$FIELD_NAME and ((not F.RDB$COMPUTED_BLR is NULL) or (not (F.RDB$DEFAULT_VALUE is NULL and R.RDB$DEFAULT_VALUE is NULL))) - - RELATION = EMPRESAS_DATOS_BANCO - - > -[06/09/2007 12:28:09] -[Application: FactuGES (Servidor)] -: [Execute] SELECT RDB$FIELD_NAME, RDB$FIELD_POSITION FROM RDB$RELATION_CONSTRAINTS RR JOIN RDB$INDEX_SEGMENTS RI ON RR.RDB$INDEX_NAME = RI.RDB$INDEX_NAME WHERE RDB$RELATION_NAME = :relation_name AND RDB$CONSTRAINT_TYPE = 'PRIMARY KEY ' ORDER BY RDB$FIELD_POSITION - - RELATION_NAME = EMPRESAS_DATOS_BANCO - - > -[06/09/2007 12:28:09] -[Application: FactuGES (Servidor)] -: [Commit (Hard commit)] - - > -[06/09/2007 12:28:09] -[Application: FactuGES (Servidor)] -: [Execute] SELECT - ID, ID_EMPRESA, NOMBRE, ENTIDAD, SUCURSAL, DC, CUENTA, - SUFIJO_N19, SUFIJO_N58 - FROM - EMPRESAS_DATOS_BANCO -WHERE ID_EMPRESA = :ID_EMPRESA - - ID_EMPRESA = 1 - - > -[06/09/2007 12:28:09] -[Application: FactuGES (Servidor)] -: [Prepare] SELECT - ID, ID_EMPRESA, NOMBRE, ENTIDAD, SUCURSAL, DC, CUENTA, - SUFIJO_N19, SUFIJO_N58 - FROM - EMPRESAS_DATOS_BANCO -WHERE ID_EMPRESA = :ID_EMPRESA - - Plan: PLAN (EMPRESAS_DATOS_BANCO INDEX (FK_EMPRESAS_DATOS_BANCO)) - - > -[06/09/2007 12:28:09] -[Application: FactuGES (Servidor)] -: [Execute] SELECT - ID, ID_EMPRESA, NOMBRE, ENTIDAD, SUCURSAL, DC, CUENTA, - SUFIJO_N19, SUFIJO_N58 - FROM - EMPRESAS_DATOS_BANCO -WHERE ID_EMPRESA = :ID_EMPRESA - - ID_EMPRESA = 2 - - > -[06/09/2007 12:28:09] -[Application: FactuGES (Servidor)] -: [Prepare] SELECT - ID, NIF_CIF, NOMBRE, RAZON_SOCIAL, CALLE, POBLACION, - PROVINCIA, CODIGO_POSTAL, TELEFONO_1, TELEFONO_2, MOVIL_1, - MOVIL_2, FAX, EMAIL_1, EMAIL_2, PAGINA_WEB, NOTAS, - FECHA_ALTA, FECHA_MODIFICACION, USUARIO, LOGOTIPO, - REGISTRO_MERCANTIL, IVA - FROM - EMPRESAS WHERE (ID IN (1,2)) - - Plan: PLAN (EMPRESAS INDEX (PK_EMPRESAS, PK_EMPRESAS)) - - > -[06/09/2007 12:28:09] -[Application: FactuGES (Servidor)] -: [Execute] SELECT - ID, NIF_CIF, NOMBRE, RAZON_SOCIAL, CALLE, POBLACION, - PROVINCIA, CODIGO_POSTAL, TELEFONO_1, TELEFONO_2, MOVIL_1, - MOVIL_2, FAX, EMAIL_1, EMAIL_2, PAGINA_WEB, NOTAS, - FECHA_ALTA, FECHA_MODIFICACION, USUARIO, LOGOTIPO, - REGISTRO_MERCANTIL, IVA - FROM - EMPRESAS WHERE (ID IN (1,2)) - - - > -[06/09/2007 12:28:09] -[Application: FactuGES (Servidor)] -: [Prepare] SELECT - ID, ID_EMPRESA, NOMBRE, ENTIDAD, SUCURSAL, DC, CUENTA, - SUFIJO_N19, SUFIJO_N58 - FROM - EMPRESAS_DATOS_BANCO -WHERE ID_EMPRESA = :ID_EMPRESA - - Plan: PLAN (EMPRESAS_DATOS_BANCO INDEX (FK_EMPRESAS_DATOS_BANCO)) - - > -[06/09/2007 12:28:09] -[Application: FactuGES (Servidor)] -: [Execute] SELECT - ID, ID_EMPRESA, NOMBRE, ENTIDAD, SUCURSAL, DC, CUENTA, - SUFIJO_N19, SUFIJO_N58 - FROM - EMPRESAS_DATOS_BANCO -WHERE ID_EMPRESA = :ID_EMPRESA - - ID_EMPRESA = 1 - - > -[06/09/2007 12:28:09] -[Application: FactuGES (Servidor)] -: [Prepare] SELECT - ID, ID_EMPRESA, NOMBRE, ENTIDAD, SUCURSAL, DC, CUENTA, - SUFIJO_N19, SUFIJO_N58 - FROM - EMPRESAS_DATOS_BANCO -WHERE ID_EMPRESA = :ID_EMPRESA - - Plan: PLAN (EMPRESAS_DATOS_BANCO INDEX (FK_EMPRESAS_DATOS_BANCO)) - - > -[06/09/2007 12:28:09] -[Application: FactuGES (Servidor)] -: [Execute] SELECT - ID, ID_EMPRESA, NOMBRE, ENTIDAD, SUCURSAL, DC, CUENTA, - SUFIJO_N19, SUFIJO_N58 - FROM - EMPRESAS_DATOS_BANCO -WHERE ID_EMPRESA = :ID_EMPRESA - - ID_EMPRESA = 2 - - > -[06/09/2007 12:28:11] -[Application: FactuGES (Servidor)] -: [Prepare] SELECT - ID, NIF_CIF, NOMBRE, RAZON_SOCIAL, CALLE, POBLACION, - PROVINCIA, CODIGO_POSTAL, TELEFONO_1, TELEFONO_2, MOVIL_1, - MOVIL_2, FAX, EMAIL_1, EMAIL_2, PAGINA_WEB, NOTAS, - FECHA_ALTA, FECHA_MODIFICACION, USUARIO, LOGOTIPO, - REGISTRO_MERCANTIL, IVA - FROM - EMPRESAS WHERE (EMPRESAS.ID = 1) AND (ID IN (1,2)) - - Plan: PLAN (EMPRESAS INDEX (PK_EMPRESAS)) - - > -[06/09/2007 12:28:11] -[Application: FactuGES (Servidor)] -: [Execute] SELECT - ID, NIF_CIF, NOMBRE, RAZON_SOCIAL, CALLE, POBLACION, - PROVINCIA, CODIGO_POSTAL, TELEFONO_1, TELEFONO_2, MOVIL_1, - MOVIL_2, FAX, EMAIL_1, EMAIL_2, PAGINA_WEB, NOTAS, - FECHA_ALTA, FECHA_MODIFICACION, USUARIO, LOGOTIPO, - REGISTRO_MERCANTIL, IVA - FROM - EMPRESAS WHERE (EMPRESAS.ID = 1) AND (ID IN (1,2)) - - - > -[06/09/2007 12:28:12] -[Application: FactuGES (Servidor)] -: [Prepare] SELECT - ID, ID_EMPRESA, NOMBRE, ENTIDAD, SUCURSAL, DC, CUENTA, - SUFIJO_N19, SUFIJO_N58 - FROM - EMPRESAS_DATOS_BANCO -WHERE ID_EMPRESA = :ID_EMPRESA - - Plan: PLAN (EMPRESAS_DATOS_BANCO INDEX (FK_EMPRESAS_DATOS_BANCO)) - - > -[06/09/2007 12:28:12] -[Application: FactuGES (Servidor)] -: [Execute] SELECT - ID, ID_EMPRESA, NOMBRE, ENTIDAD, SUCURSAL, DC, CUENTA, - SUFIJO_N19, SUFIJO_N58 - FROM - EMPRESAS_DATOS_BANCO -WHERE ID_EMPRESA = :ID_EMPRESA - - ID_EMPRESA = 1 - - > -[06/09/2007 12:28:13] -[Application: FactuGES (Servidor)] -: [Prepare] SELECT - ID, ID_CATEGORIA, REFERENCIA, NIF_CIF, NOMBRE, PERSONA_CONTACTO, CALLE, - POBLACION, PROVINCIA, CODIGO_POSTAL, TELEFONO_1, TELEFONO_2, - MOVIL_1, MOVIL_2, FAX, EMAIL_1, EMAIL_2, PAGINA_WEB, - NOTAS, USUARIO, ID_EMPRESA, - - GRUPO_CLIENTE, NOMBRE_COMERCIAL, VENCIMIENTO_FACTURAS, BLOQUEADO, - MOTIVO_BLOQUEO, RECARGO_EQUIVALENCIA, REGIMEN_IVA, ID_TIPO_IVA, - ID_FORMA_PAGO, TIENDA_WEB - FROM - V_CLIENTES WHERE (ID_EMPRESA = 1) AND (ID_EMPRESA IN (1,2)) - - Plan: PLAN JOIN (JOIN (V_CLIENTES V_CONTACTOS EMPRESAS_CONTACTOS INDEX (PK_EMPRESAS_CONTACTOS), V_CLIENTES V_CONTACTOS CONTACTOS_CATEGORIAS INDEX (PK_CONTACTOS_CATEGORIAS), V_CLIENTES V_CONTACTOS CONTACTOS INDEX (PK_CONTACTOS)), V_CLIENTES CLIENTES_DATOS INDEX (PK_CLIENTES_DATOS)) - - > -[06/09/2007 12:28:13] -[Application: FactuGES (Servidor)] -: [Start transaction] - - > -[06/09/2007 12:28:13] -[Application: FactuGES (Servidor)] -: [Execute] Select F.RDB$COMPUTED_BLR, F.RDB$DEFAULT_VALUE, R.RDB$DEFAULT_VALUE, R.RDB$FIELD_NAME from RDB$RELATION_FIELDS R, RDB$FIELDS F where R.RDB$RELATION_NAME = :RELATION and R.RDB$FIELD_SOURCE = F.RDB$FIELD_NAME and ((not F.RDB$COMPUTED_BLR is NULL) or (not (F.RDB$DEFAULT_VALUE is NULL and R.RDB$DEFAULT_VALUE is NULL))) - - RELATION = V_CLIENTES - - > -[06/09/2007 12:28:13] -[Application: FactuGES (Servidor)] -: [Execute] SELECT RDB$FIELD_NAME, RDB$FIELD_POSITION FROM RDB$RELATION_CONSTRAINTS RR JOIN RDB$INDEX_SEGMENTS RI ON RR.RDB$INDEX_NAME = RI.RDB$INDEX_NAME WHERE RDB$RELATION_NAME = :relation_name AND RDB$CONSTRAINT_TYPE = 'PRIMARY KEY ' ORDER BY RDB$FIELD_POSITION - - RELATION_NAME = V_CLIENTES - - > -[06/09/2007 12:28:13] -[Application: FactuGES (Servidor)] -: [Commit (Hard commit)] - - > -[06/09/2007 12:28:13] -[Application: FactuGES (Servidor)] -: [Execute] SELECT - ID, ID_CATEGORIA, REFERENCIA, NIF_CIF, NOMBRE, PERSONA_CONTACTO, CALLE, - POBLACION, PROVINCIA, CODIGO_POSTAL, TELEFONO_1, TELEFONO_2, - MOVIL_1, MOVIL_2, FAX, EMAIL_1, EMAIL_2, PAGINA_WEB, - NOTAS, USUARIO, ID_EMPRESA, - - GRUPO_CLIENTE, NOMBRE_COMERCIAL, VENCIMIENTO_FACTURAS, BLOQUEADO, - MOTIVO_BLOQUEO, RECARGO_EQUIVALENCIA, REGIMEN_IVA, ID_TIPO_IVA, - ID_FORMA_PAGO, TIENDA_WEB - FROM - V_CLIENTES WHERE (ID_EMPRESA = 1) AND (ID_EMPRESA IN (1,2)) - - - > -[06/09/2007 12:28:15] -[Application: FactuGES (Servidor)] -: [Prepare] SELECT - CLIENTES_DTOS_PROVEEDORES.ID, - CLIENTES_DTOS_PROVEEDORES.ID_CLIENTE, - CLIENTES_DTOS_PROVEEDORES.ID_PROVEEDOR, - CONTACTOS.NOMBRE, - CLIENTES_DTOS_PROVEEDORES.DESCUENTO - FROM - CLIENTES_DTOS_PROVEEDORES - LEFT JOIN CONTACTOS ON (CONTACTOS.ID = CLIENTES_DTOS_PROVEEDORES.ID_PROVEEDOR) -WHERE CLIENTES_DTOS_PROVEEDORES.ID_CLIENTE = :ID_CLIENTE - - Plan: PLAN JOIN (CLIENTES_DTOS_PROVEEDORES INDEX (IDX_CLIENTES_DTOS_PROV_ID_CLI), CONTACTOS INDEX (PK_CONTACTOS)) - - > -[06/09/2007 12:28:15] -[Application: FactuGES (Servidor)] -: [Start transaction] - - > -[06/09/2007 12:28:15] -[Application: FactuGES (Servidor)] -: [Execute] Select F.RDB$COMPUTED_BLR, F.RDB$DEFAULT_VALUE, R.RDB$DEFAULT_VALUE, R.RDB$FIELD_NAME from RDB$RELATION_FIELDS R, RDB$FIELDS F where R.RDB$RELATION_NAME = :RELATION and R.RDB$FIELD_SOURCE = F.RDB$FIELD_NAME and ((not F.RDB$COMPUTED_BLR is NULL) or (not (F.RDB$DEFAULT_VALUE is NULL and R.RDB$DEFAULT_VALUE is NULL))) - - RELATION = CLIENTES_DTOS_PROVEEDORES - - > -[06/09/2007 12:28:15] -[Application: FactuGES (Servidor)] -: [Execute] SELECT RDB$FIELD_NAME, RDB$FIELD_POSITION FROM RDB$RELATION_CONSTRAINTS RR JOIN RDB$INDEX_SEGMENTS RI ON RR.RDB$INDEX_NAME = RI.RDB$INDEX_NAME WHERE RDB$RELATION_NAME = :relation_name AND RDB$CONSTRAINT_TYPE = 'PRIMARY KEY ' ORDER BY RDB$FIELD_POSITION - - RELATION_NAME = CLIENTES_DTOS_PROVEEDORES - - > -[06/09/2007 12:28:15] -[Application: FactuGES (Servidor)] -: [Commit (Hard commit)] - - > -[06/09/2007 12:28:15] -[Application: FactuGES (Servidor)] -: [Start transaction] - - > -[06/09/2007 12:28:15] -[Application: FactuGES (Servidor)] -: [Execute] Select F.RDB$COMPUTED_BLR, F.RDB$DEFAULT_VALUE, R.RDB$DEFAULT_VALUE, R.RDB$FIELD_NAME from RDB$RELATION_FIELDS R, RDB$FIELDS F where R.RDB$RELATION_NAME = :RELATION and R.RDB$FIELD_SOURCE = F.RDB$FIELD_NAME and ((not F.RDB$COMPUTED_BLR is NULL) or (not (F.RDB$DEFAULT_VALUE is NULL and R.RDB$DEFAULT_VALUE is NULL))) - - RELATION = CONTACTOS - - > -[06/09/2007 12:28:15] -[Application: FactuGES (Servidor)] -: [Execute] SELECT RDB$FIELD_NAME, RDB$FIELD_POSITION FROM RDB$RELATION_CONSTRAINTS RR JOIN RDB$INDEX_SEGMENTS RI ON RR.RDB$INDEX_NAME = RI.RDB$INDEX_NAME WHERE RDB$RELATION_NAME = :relation_name AND RDB$CONSTRAINT_TYPE = 'PRIMARY KEY ' ORDER BY RDB$FIELD_POSITION - - RELATION_NAME = CONTACTOS - - > -[06/09/2007 12:28:15] -[Application: FactuGES (Servidor)] -: [Commit (Hard commit)] - - > -[06/09/2007 12:28:15] -[Application: FactuGES (Servidor)] -: [Execute] SELECT - CLIENTES_DTOS_PROVEEDORES.ID, - CLIENTES_DTOS_PROVEEDORES.ID_CLIENTE, - CLIENTES_DTOS_PROVEEDORES.ID_PROVEEDOR, - CONTACTOS.NOMBRE, - CLIENTES_DTOS_PROVEEDORES.DESCUENTO - FROM - CLIENTES_DTOS_PROVEEDORES - LEFT JOIN CONTACTOS ON (CONTACTOS.ID = CLIENTES_DTOS_PROVEEDORES.ID_PROVEEDOR) -WHERE CLIENTES_DTOS_PROVEEDORES.ID_CLIENTE = :ID_CLIENTE - - ID_CLIENTE = 1018 - - > -[06/09/2007 12:28:15] -[Application: FactuGES (Servidor)] -: [Prepare] SELECT - ID, ID_CONTACTO, NOMBRE, CALLE, POBLACION, PROVINCIA, CODIGO_POSTAL, PERSONA_CONTACTO, - TELEFONO, MOVIL, FAX, EMAIL, NOTAS, PORTE - FROM - CONTACTOS_DIRECCIONES - WHERE ID_CONTACTO = :ID_CONTACTO - - Plan: PLAN (CONTACTOS_DIRECCIONES INDEX (IDX_CONTACTOS_DIR_ID_CONTACTO)) - - > -[06/09/2007 12:28:15] -[Application: FactuGES (Servidor)] -: [Start transaction] - - > -[06/09/2007 12:28:15] -[Application: FactuGES (Servidor)] -: [Execute] Select F.RDB$COMPUTED_BLR, F.RDB$DEFAULT_VALUE, R.RDB$DEFAULT_VALUE, R.RDB$FIELD_NAME from RDB$RELATION_FIELDS R, RDB$FIELDS F where R.RDB$RELATION_NAME = :RELATION and R.RDB$FIELD_SOURCE = F.RDB$FIELD_NAME and ((not F.RDB$COMPUTED_BLR is NULL) or (not (F.RDB$DEFAULT_VALUE is NULL and R.RDB$DEFAULT_VALUE is NULL))) - - RELATION = CONTACTOS_DIRECCIONES - - > -[06/09/2007 12:28:15] -[Application: FactuGES (Servidor)] -: [Execute] SELECT RDB$FIELD_NAME, RDB$FIELD_POSITION FROM RDB$RELATION_CONSTRAINTS RR JOIN RDB$INDEX_SEGMENTS RI ON RR.RDB$INDEX_NAME = RI.RDB$INDEX_NAME WHERE RDB$RELATION_NAME = :relation_name AND RDB$CONSTRAINT_TYPE = 'PRIMARY KEY ' ORDER BY RDB$FIELD_POSITION - - RELATION_NAME = CONTACTOS_DIRECCIONES - - > -[06/09/2007 12:28:15] -[Application: FactuGES (Servidor)] -: [Commit (Hard commit)] - - > -[06/09/2007 12:28:15] -[Application: FactuGES (Servidor)] -: [Execute] SELECT - ID, ID_CONTACTO, NOMBRE, CALLE, POBLACION, PROVINCIA, CODIGO_POSTAL, PERSONA_CONTACTO, - TELEFONO, MOVIL, FAX, EMAIL, NOTAS, PORTE - FROM - CONTACTOS_DIRECCIONES - WHERE ID_CONTACTO = :ID_CONTACTO - - ID_CONTACTO = 1018 - - > -[06/09/2007 12:28:15] -[Application: FactuGES (Servidor)] -: [Prepare] SELECT - ID, ID_CONTACTO, TITULAR, ENTIDAD, SUCURSAL, DC, CUENTA - FROM - CONTACTOS_DATOS_BANCO - WHERE ID_CONTACTO = :ID_CONTACTO - - Plan: PLAN (CONTACTOS_DATOS_BANCO INDEX (IDX_CONTACTOS_DATOS_BANCO)) - - > -[06/09/2007 12:28:15] -[Application: FactuGES (Servidor)] -: [Start transaction] - - > -[06/09/2007 12:28:15] -[Application: FactuGES (Servidor)] -: [Execute] Select F.RDB$COMPUTED_BLR, F.RDB$DEFAULT_VALUE, R.RDB$DEFAULT_VALUE, R.RDB$FIELD_NAME from RDB$RELATION_FIELDS R, RDB$FIELDS F where R.RDB$RELATION_NAME = :RELATION and R.RDB$FIELD_SOURCE = F.RDB$FIELD_NAME and ((not F.RDB$COMPUTED_BLR is NULL) or (not (F.RDB$DEFAULT_VALUE is NULL and R.RDB$DEFAULT_VALUE is NULL))) - - RELATION = CONTACTOS_DATOS_BANCO - - > -[06/09/2007 12:28:15] -[Application: FactuGES (Servidor)] -: [Execute] SELECT RDB$FIELD_NAME, RDB$FIELD_POSITION FROM RDB$RELATION_CONSTRAINTS RR JOIN RDB$INDEX_SEGMENTS RI ON RR.RDB$INDEX_NAME = RI.RDB$INDEX_NAME WHERE RDB$RELATION_NAME = :relation_name AND RDB$CONSTRAINT_TYPE = 'PRIMARY KEY ' ORDER BY RDB$FIELD_POSITION - - RELATION_NAME = CONTACTOS_DATOS_BANCO - - > -[06/09/2007 12:28:15] -[Application: FactuGES (Servidor)] -: [Commit (Hard commit)] - - > -[06/09/2007 12:28:15] -[Application: FactuGES (Servidor)] -: [Execute] SELECT - ID, ID_CONTACTO, TITULAR, ENTIDAD, SUCURSAL, DC, CUENTA - FROM - CONTACTOS_DATOS_BANCO - WHERE ID_CONTACTO = :ID_CONTACTO - - ID_CONTACTO = 1018 - - > -[06/09/2007 12:28:15] -[Application: FactuGES (Servidor)] -: [Prepare] SELECT - ID_CONTACTO, ID_CATEGORIA - FROM - CONTACTOS_CATEGORIAS - WHERE - ID_CONTACTO = :ID_CONTACTO - - Plan: PLAN (CONTACTOS_CATEGORIAS INDEX (IDX_CONTACTOS_CATEGORIAS)) - - > -[06/09/2007 12:28:15] -[Application: FactuGES (Servidor)] -: [Start transaction] - - > -[06/09/2007 12:28:15] -[Application: FactuGES (Servidor)] -: [Execute] Select F.RDB$COMPUTED_BLR, F.RDB$DEFAULT_VALUE, R.RDB$DEFAULT_VALUE, R.RDB$FIELD_NAME from RDB$RELATION_FIELDS R, RDB$FIELDS F where R.RDB$RELATION_NAME = :RELATION and R.RDB$FIELD_SOURCE = F.RDB$FIELD_NAME and ((not F.RDB$COMPUTED_BLR is NULL) or (not (F.RDB$DEFAULT_VALUE is NULL and R.RDB$DEFAULT_VALUE is NULL))) - - RELATION = CONTACTOS_CATEGORIAS - - > -[06/09/2007 12:28:15] -[Application: FactuGES (Servidor)] -: [Execute] SELECT RDB$FIELD_NAME, RDB$FIELD_POSITION FROM RDB$RELATION_CONSTRAINTS RR JOIN RDB$INDEX_SEGMENTS RI ON RR.RDB$INDEX_NAME = RI.RDB$INDEX_NAME WHERE RDB$RELATION_NAME = :relation_name AND RDB$CONSTRAINT_TYPE = 'PRIMARY KEY ' ORDER BY RDB$FIELD_POSITION - - RELATION_NAME = CONTACTOS_CATEGORIAS - - > -[06/09/2007 12:28:15] -[Application: FactuGES (Servidor)] -: [Commit (Hard commit)] - - > -[06/09/2007 12:28:15] -[Application: FactuGES (Servidor)] -: [Execute] SELECT - ID_CONTACTO, ID_CATEGORIA - FROM - CONTACTOS_CATEGORIAS - WHERE - ID_CONTACTO = :ID_CONTACTO - - ID_CONTACTO = 1018 - - > -[06/09/2007 12:28:15] -[Application: FactuGES (Servidor)] -: [Prepare] SELECT - ID_CONTACTO, ID_CATEGORIA - FROM - CONTACTOS_CATEGORIAS - WHERE - ID_CONTACTO = :ID_CONTACTO - - Plan: PLAN (CONTACTOS_CATEGORIAS INDEX (IDX_CONTACTOS_CATEGORIAS)) - - > -[06/09/2007 12:28:15] -[Application: FactuGES (Servidor)] -: [Execute] SELECT - ID_CONTACTO, ID_CATEGORIA - FROM - CONTACTOS_CATEGORIAS - WHERE - ID_CONTACTO = :ID_CONTACTO - - ID_CONTACTO = 850 - - > -[06/09/2007 12:28:15] -[Application: FactuGES (Servidor)] -: [Prepare] SELECT - ID, ID_CONTACTO, TITULAR, ENTIDAD, SUCURSAL, DC, CUENTA - FROM - CONTACTOS_DATOS_BANCO - WHERE ID_CONTACTO = :ID_CONTACTO - - Plan: PLAN (CONTACTOS_DATOS_BANCO INDEX (IDX_CONTACTOS_DATOS_BANCO)) - - > -[06/09/2007 12:28:15] -[Application: FactuGES (Servidor)] -: [Execute] SELECT - ID, ID_CONTACTO, TITULAR, ENTIDAD, SUCURSAL, DC, CUENTA - FROM - CONTACTOS_DATOS_BANCO - WHERE ID_CONTACTO = :ID_CONTACTO - - ID_CONTACTO = 850 - - > -[06/09/2007 12:28:15] -[Application: FactuGES (Servidor)] -: [Prepare] SELECT - ID, ID_CONTACTO, NOMBRE, CALLE, POBLACION, PROVINCIA, CODIGO_POSTAL, PERSONA_CONTACTO, - TELEFONO, MOVIL, FAX, EMAIL, NOTAS, PORTE - FROM - CONTACTOS_DIRECCIONES - WHERE ID_CONTACTO = :ID_CONTACTO - - Plan: PLAN (CONTACTOS_DIRECCIONES INDEX (IDX_CONTACTOS_DIR_ID_CONTACTO)) - - > -[06/09/2007 12:28:15] -[Application: FactuGES (Servidor)] -: [Execute] SELECT - ID, ID_CONTACTO, NOMBRE, CALLE, POBLACION, PROVINCIA, CODIGO_POSTAL, PERSONA_CONTACTO, - TELEFONO, MOVIL, FAX, EMAIL, NOTAS, PORTE - FROM - CONTACTOS_DIRECCIONES - WHERE ID_CONTACTO = :ID_CONTACTO - - ID_CONTACTO = 850 - - > -[06/09/2007 12:28:15] -[Application: FactuGES (Servidor)] -: [Prepare] SELECT - CLIENTES_DTOS_PROVEEDORES.ID, - CLIENTES_DTOS_PROVEEDORES.ID_CLIENTE, - CLIENTES_DTOS_PROVEEDORES.ID_PROVEEDOR, - CONTACTOS.NOMBRE, - CLIENTES_DTOS_PROVEEDORES.DESCUENTO - FROM - CLIENTES_DTOS_PROVEEDORES - LEFT JOIN CONTACTOS ON (CONTACTOS.ID = CLIENTES_DTOS_PROVEEDORES.ID_PROVEEDOR) -WHERE CLIENTES_DTOS_PROVEEDORES.ID_CLIENTE = :ID_CLIENTE - - Plan: PLAN JOIN (CLIENTES_DTOS_PROVEEDORES INDEX (IDX_CLIENTES_DTOS_PROV_ID_CLI), CONTACTOS INDEX (PK_CONTACTOS)) - - > -[06/09/2007 12:28:15] -[Application: FactuGES (Servidor)] -: [Execute] SELECT - CLIENTES_DTOS_PROVEEDORES.ID, - CLIENTES_DTOS_PROVEEDORES.ID_CLIENTE, - CLIENTES_DTOS_PROVEEDORES.ID_PROVEEDOR, - CONTACTOS.NOMBRE, - CLIENTES_DTOS_PROVEEDORES.DESCUENTO - FROM - CLIENTES_DTOS_PROVEEDORES - LEFT JOIN CONTACTOS ON (CONTACTOS.ID = CLIENTES_DTOS_PROVEEDORES.ID_PROVEEDOR) -WHERE CLIENTES_DTOS_PROVEEDORES.ID_CLIENTE = :ID_CLIENTE - - ID_CLIENTE = 850 - - > -[06/09/2007 12:28:18] -[Application: FactuGES (Servidor)] -: [Prepare] SELECT - ID, ID_CATEGORIA, REFERENCIA, NIF_CIF, NOMBRE, PERSONA_CONTACTO, CALLE, - POBLACION, PROVINCIA, CODIGO_POSTAL, TELEFONO_1, TELEFONO_2, - MOVIL_1, MOVIL_2, FAX, EMAIL_1, EMAIL_2, PAGINA_WEB, - NOTAS, USUARIO, ID_EMPRESA, - - - REGIMEN_IVA, DESCUENTO, DESCRIPCION_PROVEEDOR, - CODIGO_ASIGNADO, ID_TIPO_IVA, ID_FORMA_PAGO, TIENDA_WEB, HOMOLOGADO, CERTIFICACION, - GRUPO_PROVEEDOR - - FROM - V_PROVEEDORES WHERE (ID_EMPRESA = 1) AND (ID_EMPRESA IN (1,2)) - - Plan: PLAN JOIN (V_PROVEEDORES PROVEEDORES_DATOS NATURAL, V_PROVEEDORES V_CONTACTOS EMPRESAS_CONTACTOS INDEX (PK_EMPRESAS_CONTACTOS), V_PROVEEDORES V_CONTACTOS CONTACTOS_CATEGORIAS INDEX (PK_CONTACTOS_CATEGORIAS), V_PROVEEDORES V_CONTACTOS CONTACTOS INDEX (PK_CONTACTOS)) - - > -[06/09/2007 12:28:18] -[Application: FactuGES (Servidor)] -: [Start transaction] - - > -[06/09/2007 12:28:18] -[Application: FactuGES (Servidor)] -: [Execute] Select F.RDB$COMPUTED_BLR, F.RDB$DEFAULT_VALUE, R.RDB$DEFAULT_VALUE, R.RDB$FIELD_NAME from RDB$RELATION_FIELDS R, RDB$FIELDS F where R.RDB$RELATION_NAME = :RELATION and R.RDB$FIELD_SOURCE = F.RDB$FIELD_NAME and ((not F.RDB$COMPUTED_BLR is NULL) or (not (F.RDB$DEFAULT_VALUE is NULL and R.RDB$DEFAULT_VALUE is NULL))) - - RELATION = V_PROVEEDORES - - > -[06/09/2007 12:28:18] -[Application: FactuGES (Servidor)] -: [Execute] SELECT RDB$FIELD_NAME, RDB$FIELD_POSITION FROM RDB$RELATION_CONSTRAINTS RR JOIN RDB$INDEX_SEGMENTS RI ON RR.RDB$INDEX_NAME = RI.RDB$INDEX_NAME WHERE RDB$RELATION_NAME = :relation_name AND RDB$CONSTRAINT_TYPE = 'PRIMARY KEY ' ORDER BY RDB$FIELD_POSITION - - RELATION_NAME = V_PROVEEDORES - - > -[06/09/2007 12:28:18] -[Application: FactuGES (Servidor)] -: [Commit (Hard commit)] - - > -[06/09/2007 12:28:18] -[Application: FactuGES (Servidor)] -: [Execute] SELECT - ID, ID_CATEGORIA, REFERENCIA, NIF_CIF, NOMBRE, PERSONA_CONTACTO, CALLE, - POBLACION, PROVINCIA, CODIGO_POSTAL, TELEFONO_1, TELEFONO_2, - MOVIL_1, MOVIL_2, FAX, EMAIL_1, EMAIL_2, PAGINA_WEB, - NOTAS, USUARIO, ID_EMPRESA, - - - REGIMEN_IVA, DESCUENTO, DESCRIPCION_PROVEEDOR, - CODIGO_ASIGNADO, ID_TIPO_IVA, ID_FORMA_PAGO, TIENDA_WEB, HOMOLOGADO, CERTIFICACION, - GRUPO_PROVEEDOR - - FROM - V_PROVEEDORES WHERE (ID_EMPRESA = 1) AND (ID_EMPRESA IN (1,2)) - - - > diff --git a/Output/Debug/Servidor/UIBHook.dll b/Output/Debug/Servidor/UIBHook.dll deleted file mode 100644 index f0b69c2c..00000000 Binary files a/Output/Debug/Servidor/UIBHook.dll and /dev/null differ diff --git a/Output/Debug/Servidor/UIBMonitor.exe b/Output/Debug/Servidor/UIBMonitor.exe deleted file mode 100644 index f4a97d16..00000000 Binary files a/Output/Debug/Servidor/UIBMonitor.exe and /dev/null differ diff --git a/Output/Debug/Servidor/config.ini b/Output/Debug/Servidor/config.ini deleted file mode 100644 index ed5a03d5..00000000 --- a/Output/Debug/Servidor/config.ini +++ /dev/null @@ -1,3 +0,0 @@ -[CONFIG] -APPPATH=E:\Codigo (Tecsitel)\Output\Debug\Servidor\FactuGES_Server.exe -LIBPATH=E:\Codigo (Tecsitel)\Output\Debug\Servidor\GDS32.DLL diff --git a/Output/Debug/Servidor/dbxmys30.dll b/Output/Debug/Servidor/dbxmys30.dll deleted file mode 100644 index 2b7afa47..00000000 Binary files a/Output/Debug/Servidor/dbxmys30.dll and /dev/null differ diff --git a/Output/Debug/Servidor/libmySQL.dll b/Output/Debug/Servidor/libmySQL.dll deleted file mode 100644 index 0e4fa175..00000000 Binary files a/Output/Debug/Servidor/libmySQL.dll and /dev/null differ diff --git a/Output/Debug/Servidor/madCHook.dll b/Output/Debug/Servidor/madCHook.dll deleted file mode 100644 index 53d4fbcd..00000000 Binary files a/Output/Debug/Servidor/madCHook.dll and /dev/null differ diff --git a/Source/Iconos/Agenda/16x16/Date-Time.png b/Resources/Iconos/Agenda/16x16/Date-Time.png similarity index 100% rename from Source/Iconos/Agenda/16x16/Date-Time.png rename to Resources/Iconos/Agenda/16x16/Date-Time.png diff --git a/Source/Iconos/Agenda/16x16/Thumbs.db b/Resources/Iconos/Agenda/16x16/Thumbs.db similarity index 100% rename from Source/Iconos/Agenda/16x16/Thumbs.db rename to Resources/Iconos/Agenda/16x16/Thumbs.db diff --git a/Source/Iconos/Agenda/24x24/Date-Time.png b/Resources/Iconos/Agenda/24x24/Date-Time.png similarity index 100% rename from Source/Iconos/Agenda/24x24/Date-Time.png rename to Resources/Iconos/Agenda/24x24/Date-Time.png diff --git a/Source/Iconos/Agenda/24x24/Thumbs.db b/Resources/Iconos/Agenda/24x24/Thumbs.db similarity index 100% rename from Source/Iconos/Agenda/24x24/Thumbs.db rename to Resources/Iconos/Agenda/24x24/Thumbs.db diff --git a/Source/Iconos/Agenda/28x28/Date-Time.png b/Resources/Iconos/Agenda/28x28/Date-Time.png similarity index 100% rename from Source/Iconos/Agenda/28x28/Date-Time.png rename to Resources/Iconos/Agenda/28x28/Date-Time.png diff --git a/Source/Iconos/Agenda/28x28/Thumbs.db b/Resources/Iconos/Agenda/28x28/Thumbs.db similarity index 100% rename from Source/Iconos/Agenda/28x28/Thumbs.db rename to Resources/Iconos/Agenda/28x28/Thumbs.db diff --git a/Source/Iconos/Agenda/Thumbs.db b/Resources/Iconos/Agenda/Thumbs.db similarity index 100% rename from Source/Iconos/Agenda/Thumbs.db rename to Resources/Iconos/Agenda/Thumbs.db diff --git a/Source/Iconos/Albaranes/16x16/Letters patent.png b/Resources/Iconos/Albaranes/16x16/Letters patent.png similarity index 100% rename from Source/Iconos/Albaranes/16x16/Letters patent.png rename to Resources/Iconos/Albaranes/16x16/Letters patent.png diff --git a/Source/Iconos/Albaranes/16x16/Thumbs.db b/Resources/Iconos/Albaranes/16x16/Thumbs.db similarity index 100% rename from Source/Iconos/Albaranes/16x16/Thumbs.db rename to Resources/Iconos/Albaranes/16x16/Thumbs.db diff --git a/Source/Iconos/Albaranes/16x16/pagado.png b/Resources/Iconos/Albaranes/16x16/pagado.png similarity index 100% rename from Source/Iconos/Albaranes/16x16/pagado.png rename to Resources/Iconos/Albaranes/16x16/pagado.png diff --git a/Source/Iconos/Albaranes/24x24/Letters patent.png b/Resources/Iconos/Albaranes/24x24/Letters patent.png similarity index 100% rename from Source/Iconos/Albaranes/24x24/Letters patent.png rename to Resources/Iconos/Albaranes/24x24/Letters patent.png diff --git a/Source/Iconos/Albaranes/24x24/Thumbs.db b/Resources/Iconos/Albaranes/24x24/Thumbs.db similarity index 100% rename from Source/Iconos/Albaranes/24x24/Thumbs.db rename to Resources/Iconos/Albaranes/24x24/Thumbs.db diff --git a/Source/Iconos/Albaranes/28x28/Letters patent.png b/Resources/Iconos/Albaranes/28x28/Letters patent.png similarity index 100% rename from Source/Iconos/Albaranes/28x28/Letters patent.png rename to Resources/Iconos/Albaranes/28x28/Letters patent.png diff --git a/Source/Iconos/Albaranes/28x28/Thumbs.db b/Resources/Iconos/Albaranes/28x28/Thumbs.db similarity index 100% rename from Source/Iconos/Albaranes/28x28/Thumbs.db rename to Resources/Iconos/Albaranes/28x28/Thumbs.db diff --git a/Source/Iconos/Almacenes/16x16/Box-Closed-2.png b/Resources/Iconos/Almacenes/16x16/Box-Closed-2.png similarity index 100% rename from Source/Iconos/Almacenes/16x16/Box-Closed-2.png rename to Resources/Iconos/Almacenes/16x16/Box-Closed-2.png diff --git a/Source/Iconos/Almacenes/16x16/Thumbs.db b/Resources/Iconos/Almacenes/16x16/Thumbs.db similarity index 100% rename from Source/Iconos/Almacenes/16x16/Thumbs.db rename to Resources/Iconos/Almacenes/16x16/Thumbs.db diff --git a/Source/Iconos/Almacenes/16x16/nuevoalmacen.png b/Resources/Iconos/Almacenes/16x16/nuevoalmacen.png similarity index 100% rename from Source/Iconos/Almacenes/16x16/nuevoalmacen.png rename to Resources/Iconos/Almacenes/16x16/nuevoalmacen.png diff --git a/Source/Iconos/Almacenes/24x24/Box-Closed-2.png b/Resources/Iconos/Almacenes/24x24/Box-Closed-2.png similarity index 100% rename from Source/Iconos/Almacenes/24x24/Box-Closed-2.png rename to Resources/Iconos/Almacenes/24x24/Box-Closed-2.png diff --git a/Source/Iconos/Almacenes/24x24/Thumbs.db b/Resources/Iconos/Almacenes/24x24/Thumbs.db similarity index 100% rename from Source/Iconos/Almacenes/24x24/Thumbs.db rename to Resources/Iconos/Almacenes/24x24/Thumbs.db diff --git a/Source/Iconos/Almacenes/24x24/nuevoalmacen.png b/Resources/Iconos/Almacenes/24x24/nuevoalmacen.png similarity index 100% rename from Source/Iconos/Almacenes/24x24/nuevoalmacen.png rename to Resources/Iconos/Almacenes/24x24/nuevoalmacen.png diff --git a/Source/Iconos/Almacenes/28x28/Box-Closed-2.png b/Resources/Iconos/Almacenes/28x28/Box-Closed-2.png similarity index 100% rename from Source/Iconos/Almacenes/28x28/Box-Closed-2.png rename to Resources/Iconos/Almacenes/28x28/Box-Closed-2.png diff --git a/Source/Iconos/Almacenes/28x28/Thumbs.db b/Resources/Iconos/Almacenes/28x28/Thumbs.db similarity index 100% rename from Source/Iconos/Almacenes/28x28/Thumbs.db rename to Resources/Iconos/Almacenes/28x28/Thumbs.db diff --git a/Source/Iconos/Artículos/16x16/Image.png b/Resources/Iconos/Artículos/16x16/Image.png similarity index 100% rename from Source/Iconos/Artículos/16x16/Image.png rename to Resources/Iconos/Artículos/16x16/Image.png diff --git a/Source/Iconos/Artículos/16x16/Insert.png b/Resources/Iconos/Artículos/16x16/Insert.png similarity index 100% rename from Source/Iconos/Artículos/16x16/Insert.png rename to Resources/Iconos/Artículos/16x16/Insert.png diff --git a/Source/Iconos/Artículos/16x16/Note-Edit.png b/Resources/Iconos/Artículos/16x16/Note-Edit.png similarity index 100% rename from Source/Iconos/Artículos/16x16/Note-Edit.png rename to Resources/Iconos/Artículos/16x16/Note-Edit.png diff --git a/Source/Iconos/Artículos/16x16/Remove.png b/Resources/Iconos/Artículos/16x16/Remove.png similarity index 100% rename from Source/Iconos/Artículos/16x16/Remove.png rename to Resources/Iconos/Artículos/16x16/Remove.png diff --git a/Source/Iconos/Artículos/16x16/Swap.png b/Resources/Iconos/Artículos/16x16/Swap.png similarity index 100% rename from Source/Iconos/Artículos/16x16/Swap.png rename to Resources/Iconos/Artículos/16x16/Swap.png diff --git a/Source/Iconos/Artículos/16x16/Thumbs.db b/Resources/Iconos/Artículos/16x16/Thumbs.db similarity index 100% rename from Source/Iconos/Artículos/16x16/Thumbs.db rename to Resources/Iconos/Artículos/16x16/Thumbs.db diff --git a/Source/Iconos/Artículos/16x16/articulos.png b/Resources/Iconos/Artículos/16x16/articulos.png similarity index 100% rename from Source/Iconos/Artículos/16x16/articulos.png rename to Resources/Iconos/Artículos/16x16/articulos.png diff --git a/Source/Iconos/Artículos/16x16/comisionable.png b/Resources/Iconos/Artículos/16x16/comisionable.png similarity index 100% rename from Source/Iconos/Artículos/16x16/comisionable.png rename to Resources/Iconos/Artículos/16x16/comisionable.png diff --git a/Source/Iconos/Artículos/16x16/liberar.png b/Resources/Iconos/Artículos/16x16/liberar.png similarity index 100% rename from Source/Iconos/Artículos/16x16/liberar.png rename to Resources/Iconos/Artículos/16x16/liberar.png diff --git a/Source/Iconos/Artículos/16x16/no_comisionable.png b/Resources/Iconos/Artículos/16x16/no_comisionable.png similarity index 100% rename from Source/Iconos/Artículos/16x16/no_comisionable.png rename to Resources/Iconos/Artículos/16x16/no_comisionable.png diff --git a/Source/Iconos/Artículos/16x16/recibirpedido.png b/Resources/Iconos/Artículos/16x16/recibirpedido.png similarity index 100% rename from Source/Iconos/Artículos/16x16/recibirpedido.png rename to Resources/Iconos/Artículos/16x16/recibirpedido.png diff --git a/Source/Iconos/Artículos/16x16/reservar.png b/Resources/Iconos/Artículos/16x16/reservar.png similarity index 100% rename from Source/Iconos/Artículos/16x16/reservar.png rename to Resources/Iconos/Artículos/16x16/reservar.png diff --git a/Source/Iconos/Artículos/24x24/Image.png b/Resources/Iconos/Artículos/24x24/Image.png similarity index 100% rename from Source/Iconos/Artículos/24x24/Image.png rename to Resources/Iconos/Artículos/24x24/Image.png diff --git a/Source/Iconos/Artículos/24x24/Insert.png b/Resources/Iconos/Artículos/24x24/Insert.png similarity index 100% rename from Source/Iconos/Artículos/24x24/Insert.png rename to Resources/Iconos/Artículos/24x24/Insert.png diff --git a/Source/Iconos/Artículos/24x24/Note-Edit.png b/Resources/Iconos/Artículos/24x24/Note-Edit.png similarity index 100% rename from Source/Iconos/Artículos/24x24/Note-Edit.png rename to Resources/Iconos/Artículos/24x24/Note-Edit.png diff --git a/Source/Iconos/Artículos/24x24/Remove.png b/Resources/Iconos/Artículos/24x24/Remove.png similarity index 100% rename from Source/Iconos/Artículos/24x24/Remove.png rename to Resources/Iconos/Artículos/24x24/Remove.png diff --git a/Source/Iconos/Artículos/24x24/Swap.png b/Resources/Iconos/Artículos/24x24/Swap.png similarity index 100% rename from Source/Iconos/Artículos/24x24/Swap.png rename to Resources/Iconos/Artículos/24x24/Swap.png diff --git a/Source/Iconos/Artículos/24x24/Thumbs.db b/Resources/Iconos/Artículos/24x24/Thumbs.db similarity index 100% rename from Source/Iconos/Artículos/24x24/Thumbs.db rename to Resources/Iconos/Artículos/24x24/Thumbs.db diff --git a/Source/Iconos/Artículos/24x24/articulos.png b/Resources/Iconos/Artículos/24x24/articulos.png similarity index 100% rename from Source/Iconos/Artículos/24x24/articulos.png rename to Resources/Iconos/Artículos/24x24/articulos.png diff --git a/Source/Iconos/Artículos/24x24/liberar.png b/Resources/Iconos/Artículos/24x24/liberar.png similarity index 100% rename from Source/Iconos/Artículos/24x24/liberar.png rename to Resources/Iconos/Artículos/24x24/liberar.png diff --git a/Source/Iconos/Artículos/24x24/recibirpedido.png b/Resources/Iconos/Artículos/24x24/recibirpedido.png similarity index 100% rename from Source/Iconos/Artículos/24x24/recibirpedido.png rename to Resources/Iconos/Artículos/24x24/recibirpedido.png diff --git a/Source/Iconos/Artículos/24x24/reservar.png b/Resources/Iconos/Artículos/24x24/reservar.png similarity index 100% rename from Source/Iconos/Artículos/24x24/reservar.png rename to Resources/Iconos/Artículos/24x24/reservar.png diff --git a/Source/Iconos/Artículos/28x28/Image.png b/Resources/Iconos/Artículos/28x28/Image.png similarity index 100% rename from Source/Iconos/Artículos/28x28/Image.png rename to Resources/Iconos/Artículos/28x28/Image.png diff --git a/Source/Iconos/Artículos/28x28/Insert.png b/Resources/Iconos/Artículos/28x28/Insert.png similarity index 100% rename from Source/Iconos/Artículos/28x28/Insert.png rename to Resources/Iconos/Artículos/28x28/Insert.png diff --git a/Source/Iconos/Artículos/28x28/Note-Edit.png b/Resources/Iconos/Artículos/28x28/Note-Edit.png similarity index 100% rename from Source/Iconos/Artículos/28x28/Note-Edit.png rename to Resources/Iconos/Artículos/28x28/Note-Edit.png diff --git a/Source/Iconos/Artículos/28x28/Remove.png b/Resources/Iconos/Artículos/28x28/Remove.png similarity index 100% rename from Source/Iconos/Artículos/28x28/Remove.png rename to Resources/Iconos/Artículos/28x28/Remove.png diff --git a/Source/Iconos/Artículos/28x28/Swap.png b/Resources/Iconos/Artículos/28x28/Swap.png similarity index 100% rename from Source/Iconos/Artículos/28x28/Swap.png rename to Resources/Iconos/Artículos/28x28/Swap.png diff --git a/Source/Iconos/Artículos/28x28/Thumbs.db b/Resources/Iconos/Artículos/28x28/Thumbs.db similarity index 100% rename from Source/Iconos/Artículos/28x28/Thumbs.db rename to Resources/Iconos/Artículos/28x28/Thumbs.db diff --git a/Source/Iconos/Artículos/28x28/articulos.png b/Resources/Iconos/Artículos/28x28/articulos.png similarity index 100% rename from Source/Iconos/Artículos/28x28/articulos.png rename to Resources/Iconos/Artículos/28x28/articulos.png diff --git a/Source/Iconos/Artículos/28x28/liberar.png b/Resources/Iconos/Artículos/28x28/liberar.png similarity index 100% rename from Source/Iconos/Artículos/28x28/liberar.png rename to Resources/Iconos/Artículos/28x28/liberar.png diff --git a/Source/Iconos/Artículos/28x28/recibirpedido.png b/Resources/Iconos/Artículos/28x28/recibirpedido.png similarity index 100% rename from Source/Iconos/Artículos/28x28/recibirpedido.png rename to Resources/Iconos/Artículos/28x28/recibirpedido.png diff --git a/Source/Iconos/Artículos/28x28/reservar.png b/Resources/Iconos/Artículos/28x28/reservar.png similarity index 100% rename from Source/Iconos/Artículos/28x28/reservar.png rename to Resources/Iconos/Artículos/28x28/reservar.png diff --git a/Source/Iconos/Asientos/16x16/Cerrar.png b/Resources/Iconos/Asientos/16x16/Cerrar.png similarity index 100% rename from Source/Iconos/Asientos/16x16/Cerrar.png rename to Resources/Iconos/Asientos/16x16/Cerrar.png diff --git a/Source/Iconos/Asientos/16x16/Thumbs.db b/Resources/Iconos/Asientos/16x16/Thumbs.db similarity index 100% rename from Source/Iconos/Asientos/16x16/Thumbs.db rename to Resources/Iconos/Asientos/16x16/Thumbs.db diff --git a/Source/Iconos/Asientos/16x16/Tick.png b/Resources/Iconos/Asientos/16x16/Tick.png similarity index 100% rename from Source/Iconos/Asientos/16x16/Tick.png rename to Resources/Iconos/Asientos/16x16/Tick.png diff --git a/Source/Iconos/Asientos/24x24/Cerrar.png b/Resources/Iconos/Asientos/24x24/Cerrar.png similarity index 100% rename from Source/Iconos/Asientos/24x24/Cerrar.png rename to Resources/Iconos/Asientos/24x24/Cerrar.png diff --git a/Source/Iconos/Asientos/24x24/Thumbs.db b/Resources/Iconos/Asientos/24x24/Thumbs.db similarity index 100% rename from Source/Iconos/Asientos/24x24/Thumbs.db rename to Resources/Iconos/Asientos/24x24/Thumbs.db diff --git a/Source/Iconos/Asientos/24x24/Tick.png b/Resources/Iconos/Asientos/24x24/Tick.png similarity index 100% rename from Source/Iconos/Asientos/24x24/Tick.png rename to Resources/Iconos/Asientos/24x24/Tick.png diff --git a/Source/Iconos/Asientos/28x28/Cerrar.png b/Resources/Iconos/Asientos/28x28/Cerrar.png similarity index 100% rename from Source/Iconos/Asientos/28x28/Cerrar.png rename to Resources/Iconos/Asientos/28x28/Cerrar.png diff --git a/Source/Iconos/Asientos/28x28/Thumbs.db b/Resources/Iconos/Asientos/28x28/Thumbs.db similarity index 100% rename from Source/Iconos/Asientos/28x28/Thumbs.db rename to Resources/Iconos/Asientos/28x28/Thumbs.db diff --git a/Source/Iconos/Asientos/28x28/Tick.png b/Resources/Iconos/Asientos/28x28/Tick.png similarity index 100% rename from Source/Iconos/Asientos/28x28/Tick.png rename to Resources/Iconos/Asientos/28x28/Tick.png diff --git a/Source/Iconos/Contactos/16x16/Box-Open-2.png b/Resources/Iconos/Contactos/16x16/Box-Open-2.png similarity index 100% rename from Source/Iconos/Contactos/16x16/Box-Open-2.png rename to Resources/Iconos/Contactos/16x16/Box-Open-2.png diff --git a/Source/Iconos/Contactos/16x16/Comisiones.png b/Resources/Iconos/Contactos/16x16/Comisiones.png similarity index 100% rename from Source/Iconos/Contactos/16x16/Comisiones.png rename to Resources/Iconos/Contactos/16x16/Comisiones.png diff --git a/Source/Iconos/Contactos/16x16/Contact-Add.png b/Resources/Iconos/Contactos/16x16/Contact-Add.png similarity index 100% rename from Source/Iconos/Contactos/16x16/Contact-Add.png rename to Resources/Iconos/Contactos/16x16/Contact-Add.png diff --git a/Source/Iconos/Contactos/16x16/Contact-Edit.png b/Resources/Iconos/Contactos/16x16/Contact-Edit.png similarity index 100% rename from Source/Iconos/Contactos/16x16/Contact-Edit.png rename to Resources/Iconos/Contactos/16x16/Contact-Edit.png diff --git a/Source/Iconos/Contactos/16x16/Contact.png b/Resources/Iconos/Contactos/16x16/Contact.png similarity index 100% rename from Source/Iconos/Contactos/16x16/Contact.png rename to Resources/Iconos/Contactos/16x16/Contact.png diff --git a/Source/Iconos/Contactos/16x16/Contact2.png b/Resources/Iconos/Contactos/16x16/Contact2.png similarity index 100% rename from Source/Iconos/Contactos/16x16/Contact2.png rename to Resources/Iconos/Contactos/16x16/Contact2.png diff --git a/Source/Iconos/Contactos/16x16/Contact3.png b/Resources/Iconos/Contactos/16x16/Contact3.png similarity index 100% rename from Source/Iconos/Contactos/16x16/Contact3.png rename to Resources/Iconos/Contactos/16x16/Contact3.png diff --git a/Source/Iconos/Contactos/16x16/Contact4.png b/Resources/Iconos/Contactos/16x16/Contact4.png similarity index 100% rename from Source/Iconos/Contactos/16x16/Contact4.png rename to Resources/Iconos/Contactos/16x16/Contact4.png diff --git a/Source/Iconos/Contactos/16x16/Currency.png b/Resources/Iconos/Contactos/16x16/Currency.png similarity index 100% rename from Source/Iconos/Contactos/16x16/Currency.png rename to Resources/Iconos/Contactos/16x16/Currency.png diff --git a/Source/Iconos/Contactos/16x16/Internet.png b/Resources/Iconos/Contactos/16x16/Internet.png similarity index 100% rename from Source/Iconos/Contactos/16x16/Internet.png rename to Resources/Iconos/Contactos/16x16/Internet.png diff --git a/Source/Iconos/Contactos/16x16/Lock.png b/Resources/Iconos/Contactos/16x16/Lock.png similarity index 100% rename from Source/Iconos/Contactos/16x16/Lock.png rename to Resources/Iconos/Contactos/16x16/Lock.png diff --git a/Source/Iconos/Contactos/16x16/Mail.png b/Resources/Iconos/Contactos/16x16/Mail.png similarity index 100% rename from Source/Iconos/Contactos/16x16/Mail.png rename to Resources/Iconos/Contactos/16x16/Mail.png diff --git a/Source/Iconos/Contactos/16x16/Proveedor-Add.png b/Resources/Iconos/Contactos/16x16/Proveedor-Add.png similarity index 100% rename from Source/Iconos/Contactos/16x16/Proveedor-Add.png rename to Resources/Iconos/Contactos/16x16/Proveedor-Add.png diff --git a/Source/Iconos/Contactos/16x16/Thumbs.db b/Resources/Iconos/Contactos/16x16/Thumbs.db similarity index 100% rename from Source/Iconos/Contactos/16x16/Thumbs.db rename to Resources/Iconos/Contactos/16x16/Thumbs.db diff --git a/Source/Iconos/Contactos/16x16/Unlock.png b/Resources/Iconos/Contactos/16x16/Unlock.png similarity index 100% rename from Source/Iconos/Contactos/16x16/Unlock.png rename to Resources/Iconos/Contactos/16x16/Unlock.png diff --git a/Source/Iconos/Contactos/16x16/User.png b/Resources/Iconos/Contactos/16x16/User.png similarity index 100% rename from Source/Iconos/Contactos/16x16/User.png rename to Resources/Iconos/Contactos/16x16/User.png diff --git a/Source/Iconos/Contactos/16x16/User2.png b/Resources/Iconos/Contactos/16x16/User2.png similarity index 100% rename from Source/Iconos/Contactos/16x16/User2.png rename to Resources/Iconos/Contactos/16x16/User2.png diff --git a/Source/Iconos/Contactos/16x16/User3.png b/Resources/Iconos/Contactos/16x16/User3.png similarity index 100% rename from Source/Iconos/Contactos/16x16/User3.png rename to Resources/Iconos/Contactos/16x16/User3.png diff --git a/Source/Iconos/Contactos/16x16/User4.png b/Resources/Iconos/Contactos/16x16/User4.png similarity index 100% rename from Source/Iconos/Contactos/16x16/User4.png rename to Resources/Iconos/Contactos/16x16/User4.png diff --git a/Source/Iconos/Contactos/16x16/grupos.png b/Resources/Iconos/Contactos/16x16/grupos.png similarity index 100% rename from Source/Iconos/Contactos/16x16/grupos.png rename to Resources/Iconos/Contactos/16x16/grupos.png diff --git a/Source/Iconos/Contactos/24x24/Box-Open-2.png b/Resources/Iconos/Contactos/24x24/Box-Open-2.png similarity index 100% rename from Source/Iconos/Contactos/24x24/Box-Open-2.png rename to Resources/Iconos/Contactos/24x24/Box-Open-2.png diff --git a/Source/Iconos/Contactos/24x24/Comisiones.png b/Resources/Iconos/Contactos/24x24/Comisiones.png similarity index 100% rename from Source/Iconos/Contactos/24x24/Comisiones.png rename to Resources/Iconos/Contactos/24x24/Comisiones.png diff --git a/Source/Iconos/Contactos/24x24/Contact-Add.png b/Resources/Iconos/Contactos/24x24/Contact-Add.png similarity index 100% rename from Source/Iconos/Contactos/24x24/Contact-Add.png rename to Resources/Iconos/Contactos/24x24/Contact-Add.png diff --git a/Source/Iconos/Contactos/24x24/Contact-Edit.png b/Resources/Iconos/Contactos/24x24/Contact-Edit.png similarity index 100% rename from Source/Iconos/Contactos/24x24/Contact-Edit.png rename to Resources/Iconos/Contactos/24x24/Contact-Edit.png diff --git a/Source/Iconos/Contactos/24x24/Contact.png b/Resources/Iconos/Contactos/24x24/Contact.png similarity index 100% rename from Source/Iconos/Contactos/24x24/Contact.png rename to Resources/Iconos/Contactos/24x24/Contact.png diff --git a/Source/Iconos/Contactos/24x24/Contact2.png b/Resources/Iconos/Contactos/24x24/Contact2.png similarity index 100% rename from Source/Iconos/Contactos/24x24/Contact2.png rename to Resources/Iconos/Contactos/24x24/Contact2.png diff --git a/Source/Iconos/Contactos/24x24/Contact3.png b/Resources/Iconos/Contactos/24x24/Contact3.png similarity index 100% rename from Source/Iconos/Contactos/24x24/Contact3.png rename to Resources/Iconos/Contactos/24x24/Contact3.png diff --git a/Source/Iconos/Contactos/24x24/Contact4.png b/Resources/Iconos/Contactos/24x24/Contact4.png similarity index 100% rename from Source/Iconos/Contactos/24x24/Contact4.png rename to Resources/Iconos/Contactos/24x24/Contact4.png diff --git a/Source/Iconos/Contactos/24x24/Currency.png b/Resources/Iconos/Contactos/24x24/Currency.png similarity index 100% rename from Source/Iconos/Contactos/24x24/Currency.png rename to Resources/Iconos/Contactos/24x24/Currency.png diff --git a/Source/Iconos/Contactos/24x24/Lock.png b/Resources/Iconos/Contactos/24x24/Lock.png similarity index 100% rename from Source/Iconos/Contactos/24x24/Lock.png rename to Resources/Iconos/Contactos/24x24/Lock.png diff --git a/Source/Iconos/Contactos/24x24/Thumbs.db b/Resources/Iconos/Contactos/24x24/Thumbs.db similarity index 100% rename from Source/Iconos/Contactos/24x24/Thumbs.db rename to Resources/Iconos/Contactos/24x24/Thumbs.db diff --git a/Source/Iconos/Contactos/24x24/Unlock.png b/Resources/Iconos/Contactos/24x24/Unlock.png similarity index 100% rename from Source/Iconos/Contactos/24x24/Unlock.png rename to Resources/Iconos/Contactos/24x24/Unlock.png diff --git a/Source/Iconos/Contactos/24x24/grupos.png b/Resources/Iconos/Contactos/24x24/grupos.png similarity index 100% rename from Source/Iconos/Contactos/24x24/grupos.png rename to Resources/Iconos/Contactos/24x24/grupos.png diff --git a/Source/Iconos/Contactos/28x28/Box-Open-2.png b/Resources/Iconos/Contactos/28x28/Box-Open-2.png similarity index 100% rename from Source/Iconos/Contactos/28x28/Box-Open-2.png rename to Resources/Iconos/Contactos/28x28/Box-Open-2.png diff --git a/Source/Iconos/Contactos/28x28/Currency.png b/Resources/Iconos/Contactos/28x28/Currency.png similarity index 100% rename from Source/Iconos/Contactos/28x28/Currency.png rename to Resources/Iconos/Contactos/28x28/Currency.png diff --git a/Source/Iconos/Contactos/28x28/Lock.png b/Resources/Iconos/Contactos/28x28/Lock.png similarity index 100% rename from Source/Iconos/Contactos/28x28/Lock.png rename to Resources/Iconos/Contactos/28x28/Lock.png diff --git a/Source/Iconos/Contactos/28x28/Thumbs.db b/Resources/Iconos/Contactos/28x28/Thumbs.db similarity index 100% rename from Source/Iconos/Contactos/28x28/Thumbs.db rename to Resources/Iconos/Contactos/28x28/Thumbs.db diff --git a/Source/Iconos/Contactos/28x28/Unlock.png b/Resources/Iconos/Contactos/28x28/Unlock.png similarity index 100% rename from Source/Iconos/Contactos/28x28/Unlock.png rename to Resources/Iconos/Contactos/28x28/Unlock.png diff --git a/Source/Iconos/Contactos/28x28/grupos.png b/Resources/Iconos/Contactos/28x28/grupos.png similarity index 100% rename from Source/Iconos/Contactos/28x28/grupos.png rename to Resources/Iconos/Contactos/28x28/grupos.png diff --git a/Source/Iconos/Cuentas/16x16/Book-Open.png b/Resources/Iconos/Cuentas/16x16/Book-Open.png similarity index 100% rename from Source/Iconos/Cuentas/16x16/Book-Open.png rename to Resources/Iconos/Cuentas/16x16/Book-Open.png diff --git a/Source/Iconos/Cuentas/16x16/Books.png b/Resources/Iconos/Cuentas/16x16/Books.png similarity index 100% rename from Source/Iconos/Cuentas/16x16/Books.png rename to Resources/Iconos/Cuentas/16x16/Books.png diff --git a/Source/Iconos/Cuentas/16x16/Thumbs.db b/Resources/Iconos/Cuentas/16x16/Thumbs.db similarity index 100% rename from Source/Iconos/Cuentas/16x16/Thumbs.db rename to Resources/Iconos/Cuentas/16x16/Thumbs.db diff --git a/Source/Iconos/Cuentas/24x24/Book-Open.png b/Resources/Iconos/Cuentas/24x24/Book-Open.png similarity index 100% rename from Source/Iconos/Cuentas/24x24/Book-Open.png rename to Resources/Iconos/Cuentas/24x24/Book-Open.png diff --git a/Source/Iconos/Cuentas/24x24/Books.png b/Resources/Iconos/Cuentas/24x24/Books.png similarity index 100% rename from Source/Iconos/Cuentas/24x24/Books.png rename to Resources/Iconos/Cuentas/24x24/Books.png diff --git a/Source/Iconos/Cuentas/24x24/Thumbs.db b/Resources/Iconos/Cuentas/24x24/Thumbs.db similarity index 100% rename from Source/Iconos/Cuentas/24x24/Thumbs.db rename to Resources/Iconos/Cuentas/24x24/Thumbs.db diff --git a/Source/Iconos/Cuentas/28x28/Book-Open.png b/Resources/Iconos/Cuentas/28x28/Book-Open.png similarity index 100% rename from Source/Iconos/Cuentas/28x28/Book-Open.png rename to Resources/Iconos/Cuentas/28x28/Book-Open.png diff --git a/Source/Iconos/Cuentas/28x28/Books.png b/Resources/Iconos/Cuentas/28x28/Books.png similarity index 100% rename from Source/Iconos/Cuentas/28x28/Books.png rename to Resources/Iconos/Cuentas/28x28/Books.png diff --git a/Source/Iconos/Cuentas/28x28/Thumbs.db b/Resources/Iconos/Cuentas/28x28/Thumbs.db similarity index 100% rename from Source/Iconos/Cuentas/28x28/Thumbs.db rename to Resources/Iconos/Cuentas/28x28/Thumbs.db diff --git a/Source/Iconos/Factuges.ico b/Resources/Iconos/Factuges.ico similarity index 100% rename from Source/Iconos/Factuges.ico rename to Resources/Iconos/Factuges.ico diff --git a/Source/Iconos/Facturas de cliente/16x16/Invoice.png b/Resources/Iconos/Facturas de cliente/16x16/Invoice.png similarity index 100% rename from Source/Iconos/Facturas de cliente/16x16/Invoice.png rename to Resources/Iconos/Facturas de cliente/16x16/Invoice.png diff --git a/Source/Iconos/Facturas de cliente/16x16/Thumbs.db b/Resources/Iconos/Facturas de cliente/16x16/Thumbs.db similarity index 100% rename from Source/Iconos/Facturas de cliente/16x16/Thumbs.db rename to Resources/Iconos/Facturas de cliente/16x16/Thumbs.db diff --git a/Source/Iconos/Facturas de cliente/24x24/Invoice.png b/Resources/Iconos/Facturas de cliente/24x24/Invoice.png similarity index 100% rename from Source/Iconos/Facturas de cliente/24x24/Invoice.png rename to Resources/Iconos/Facturas de cliente/24x24/Invoice.png diff --git a/Source/Iconos/Facturas de cliente/24x24/Thumbs.db b/Resources/Iconos/Facturas de cliente/24x24/Thumbs.db similarity index 100% rename from Source/Iconos/Facturas de cliente/24x24/Thumbs.db rename to Resources/Iconos/Facturas de cliente/24x24/Thumbs.db diff --git a/Source/Iconos/Facturas de cliente/28x28/Invoice.png b/Resources/Iconos/Facturas de cliente/28x28/Invoice.png similarity index 100% rename from Source/Iconos/Facturas de cliente/28x28/Invoice.png rename to Resources/Iconos/Facturas de cliente/28x28/Invoice.png diff --git a/Source/Iconos/Facturas de cliente/28x28/Thumbs.db b/Resources/Iconos/Facturas de cliente/28x28/Thumbs.db similarity index 100% rename from Source/Iconos/Facturas de cliente/28x28/Thumbs.db rename to Resources/Iconos/Facturas de cliente/28x28/Thumbs.db diff --git a/Source/Iconos/Familias/16x16/00473.png b/Resources/Iconos/Familias/16x16/00473.png similarity index 100% rename from Source/Iconos/Familias/16x16/00473.png rename to Resources/Iconos/Familias/16x16/00473.png diff --git a/Source/Iconos/Familias/16x16/Thumbs.db b/Resources/Iconos/Familias/16x16/Thumbs.db similarity index 100% rename from Source/Iconos/Familias/16x16/Thumbs.db rename to Resources/Iconos/Familias/16x16/Thumbs.db diff --git a/Source/Iconos/Generales/16x16/09378.bmp b/Resources/Iconos/Generales/16x16/09378.bmp similarity index 100% rename from Source/Iconos/Generales/16x16/09378.bmp rename to Resources/Iconos/Generales/16x16/09378.bmp diff --git a/Source/Iconos/Generales/16x16/09378.png b/Resources/Iconos/Generales/16x16/09378.png similarity index 100% rename from Source/Iconos/Generales/16x16/09378.png rename to Resources/Iconos/Generales/16x16/09378.png diff --git a/Source/Iconos/Generales/16x16/About.png b/Resources/Iconos/Generales/16x16/About.png similarity index 100% rename from Source/Iconos/Generales/16x16/About.png rename to Resources/Iconos/Generales/16x16/About.png diff --git a/Source/Iconos/Generales/16x16/Align-Centre-2.png b/Resources/Iconos/Generales/16x16/Align-Centre-2.png similarity index 100% rename from Source/Iconos/Generales/16x16/Align-Centre-2.png rename to Resources/Iconos/Generales/16x16/Align-Centre-2.png diff --git a/Source/Iconos/Generales/16x16/Align-Left-2.png b/Resources/Iconos/Generales/16x16/Align-Left-2.png similarity index 100% rename from Source/Iconos/Generales/16x16/Align-Left-2.png rename to Resources/Iconos/Generales/16x16/Align-Left-2.png diff --git a/Source/Iconos/Generales/16x16/Align-Right-2.png b/Resources/Iconos/Generales/16x16/Align-Right-2.png similarity index 100% rename from Source/Iconos/Generales/16x16/Align-Right-2.png rename to Resources/Iconos/Generales/16x16/Align-Right-2.png diff --git a/Source/Iconos/Generales/16x16/Añadir-capítulo.png b/Resources/Iconos/Generales/16x16/Añadir-capítulo.png similarity index 100% rename from Source/Iconos/Generales/16x16/Añadir-capítulo.png rename to Resources/Iconos/Generales/16x16/Añadir-capítulo.png diff --git a/Source/Iconos/Generales/16x16/Añadir-material.png b/Resources/Iconos/Generales/16x16/Añadir-material.png similarity index 100% rename from Source/Iconos/Generales/16x16/Añadir-material.png rename to Resources/Iconos/Generales/16x16/Añadir-material.png diff --git a/Source/Iconos/Generales/16x16/Back.png b/Resources/Iconos/Generales/16x16/Back.png similarity index 100% rename from Source/Iconos/Generales/16x16/Back.png rename to Resources/Iconos/Generales/16x16/Back.png diff --git a/Source/Iconos/Generales/16x16/Bold.png b/Resources/Iconos/Generales/16x16/Bold.png similarity index 100% rename from Source/Iconos/Generales/16x16/Bold.png rename to Resources/Iconos/Generales/16x16/Bold.png diff --git a/Source/Iconos/Generales/16x16/Box-Closed.png b/Resources/Iconos/Generales/16x16/Box-Closed.png similarity index 100% rename from Source/Iconos/Generales/16x16/Box-Closed.png rename to Resources/Iconos/Generales/16x16/Box-Closed.png diff --git a/Source/Iconos/Generales/16x16/Box-Open-2.png b/Resources/Iconos/Generales/16x16/Box-Open-2.png similarity index 100% rename from Source/Iconos/Generales/16x16/Box-Open-2.png rename to Resources/Iconos/Generales/16x16/Box-Open-2.png diff --git a/Source/Iconos/Generales/16x16/Card-Copy.png b/Resources/Iconos/Generales/16x16/Card-Copy.png similarity index 100% rename from Source/Iconos/Generales/16x16/Card-Copy.png rename to Resources/Iconos/Generales/16x16/Card-Copy.png diff --git a/Source/Iconos/Generales/16x16/Clear.png b/Resources/Iconos/Generales/16x16/Clear.png similarity index 100% rename from Source/Iconos/Generales/16x16/Clear.png rename to Resources/Iconos/Generales/16x16/Clear.png diff --git a/Source/Iconos/Generales/16x16/Copy.png b/Resources/Iconos/Generales/16x16/Copy.png similarity index 100% rename from Source/Iconos/Generales/16x16/Copy.png rename to Resources/Iconos/Generales/16x16/Copy.png diff --git a/Source/Iconos/Generales/16x16/Cut.png b/Resources/Iconos/Generales/16x16/Cut.png similarity index 100% rename from Source/Iconos/Generales/16x16/Cut.png rename to Resources/Iconos/Generales/16x16/Cut.png diff --git a/Source/Iconos/Generales/16x16/Debug-Breakpoint.png b/Resources/Iconos/Generales/16x16/Debug-Breakpoint.png similarity index 100% rename from Source/Iconos/Generales/16x16/Debug-Breakpoint.png rename to Resources/Iconos/Generales/16x16/Debug-Breakpoint.png diff --git a/Source/Iconos/Generales/16x16/Debug-Watch-Delete.png b/Resources/Iconos/Generales/16x16/Debug-Watch-Delete.png similarity index 100% rename from Source/Iconos/Generales/16x16/Debug-Watch-Delete.png rename to Resources/Iconos/Generales/16x16/Debug-Watch-Delete.png diff --git a/Source/Iconos/Generales/16x16/Debug-Watch.png b/Resources/Iconos/Generales/16x16/Debug-Watch.png similarity index 100% rename from Source/Iconos/Generales/16x16/Debug-Watch.png rename to Resources/Iconos/Generales/16x16/Debug-Watch.png diff --git a/Source/Iconos/Generales/16x16/Delete copia.bmp b/Resources/Iconos/Generales/16x16/Delete copia.bmp similarity index 100% rename from Source/Iconos/Generales/16x16/Delete copia.bmp rename to Resources/Iconos/Generales/16x16/Delete copia.bmp diff --git a/Source/Iconos/Generales/16x16/Delete.png b/Resources/Iconos/Generales/16x16/Delete.png similarity index 100% rename from Source/Iconos/Generales/16x16/Delete.png rename to Resources/Iconos/Generales/16x16/Delete.png diff --git a/Source/Iconos/Generales/16x16/Distribute-Rows Evenly.png b/Resources/Iconos/Generales/16x16/Distribute-Rows Evenly.png similarity index 100% rename from Source/Iconos/Generales/16x16/Distribute-Rows Evenly.png rename to Resources/Iconos/Generales/16x16/Distribute-Rows Evenly.png diff --git a/Source/Iconos/Generales/16x16/Edit.png b/Resources/Iconos/Generales/16x16/Edit.png similarity index 100% rename from Source/Iconos/Generales/16x16/Edit.png rename to Resources/Iconos/Generales/16x16/Edit.png diff --git a/Source/Iconos/Generales/16x16/Execute.png b/Resources/Iconos/Generales/16x16/Execute.png similarity index 100% rename from Source/Iconos/Generales/16x16/Execute.png rename to Resources/Iconos/Generales/16x16/Execute.png diff --git a/Source/Iconos/Generales/16x16/Exit.png b/Resources/Iconos/Generales/16x16/Exit.png similarity index 100% rename from Source/Iconos/Generales/16x16/Exit.png rename to Resources/Iconos/Generales/16x16/Exit.png diff --git a/Source/Iconos/Generales/16x16/Form-New.png b/Resources/Iconos/Generales/16x16/Form-New.png similarity index 100% rename from Source/Iconos/Generales/16x16/Form-New.png rename to Resources/Iconos/Generales/16x16/Form-New.png diff --git a/Source/Iconos/Generales/16x16/Format-Font.png b/Resources/Iconos/Generales/16x16/Format-Font.png similarity index 100% rename from Source/Iconos/Generales/16x16/Format-Font.png rename to Resources/Iconos/Generales/16x16/Format-Font.png diff --git a/Source/Iconos/Generales/16x16/Forward.png b/Resources/Iconos/Generales/16x16/Forward.png similarity index 100% rename from Source/Iconos/Generales/16x16/Forward.png rename to Resources/Iconos/Generales/16x16/Forward.png diff --git a/Source/Iconos/Generales/16x16/Home.png b/Resources/Iconos/Generales/16x16/Home.png similarity index 100% rename from Source/Iconos/Generales/16x16/Home.png rename to Resources/Iconos/Generales/16x16/Home.png diff --git a/Source/Iconos/Generales/16x16/Italic.png b/Resources/Iconos/Generales/16x16/Italic.png similarity index 100% rename from Source/Iconos/Generales/16x16/Italic.png rename to Resources/Iconos/Generales/16x16/Italic.png diff --git a/Source/Iconos/Generales/16x16/Minus.png b/Resources/Iconos/Generales/16x16/Minus.png similarity index 100% rename from Source/Iconos/Generales/16x16/Minus.png rename to Resources/Iconos/Generales/16x16/Minus.png diff --git a/Source/Iconos/Generales/16x16/New.png b/Resources/Iconos/Generales/16x16/New.png similarity index 100% rename from Source/Iconos/Generales/16x16/New.png rename to Resources/Iconos/Generales/16x16/New.png diff --git a/Source/Iconos/Generales/16x16/Outline-Collapse.png b/Resources/Iconos/Generales/16x16/Outline-Collapse.png similarity index 100% rename from Source/Iconos/Generales/16x16/Outline-Collapse.png rename to Resources/Iconos/Generales/16x16/Outline-Collapse.png diff --git a/Source/Iconos/Generales/16x16/Outline-Expand.png b/Resources/Iconos/Generales/16x16/Outline-Expand.png similarity index 100% rename from Source/Iconos/Generales/16x16/Outline-Expand.png rename to Resources/Iconos/Generales/16x16/Outline-Expand.png diff --git a/Source/Iconos/Generales/16x16/Outline-Move Down.png b/Resources/Iconos/Generales/16x16/Outline-Move Down.png similarity index 100% rename from Source/Iconos/Generales/16x16/Outline-Move Down.png rename to Resources/Iconos/Generales/16x16/Outline-Move Down.png diff --git a/Source/Iconos/Generales/16x16/Outline-Move Up.png b/Resources/Iconos/Generales/16x16/Outline-Move Up.png similarity index 100% rename from Source/Iconos/Generales/16x16/Outline-Move Up.png rename to Resources/Iconos/Generales/16x16/Outline-Move Up.png diff --git a/Source/Iconos/Generales/16x16/Parcel.png b/Resources/Iconos/Generales/16x16/Parcel.png similarity index 100% rename from Source/Iconos/Generales/16x16/Parcel.png rename to Resources/Iconos/Generales/16x16/Parcel.png diff --git a/Source/Iconos/Generales/16x16/Paste.png b/Resources/Iconos/Generales/16x16/Paste.png similarity index 100% rename from Source/Iconos/Generales/16x16/Paste.png rename to Resources/Iconos/Generales/16x16/Paste.png diff --git a/Source/Iconos/Generales/16x16/Plus copia.bmp b/Resources/Iconos/Generales/16x16/Plus copia.bmp similarity index 100% rename from Source/Iconos/Generales/16x16/Plus copia.bmp rename to Resources/Iconos/Generales/16x16/Plus copia.bmp diff --git a/Source/Iconos/Generales/16x16/Plus.png b/Resources/Iconos/Generales/16x16/Plus.png similarity index 100% rename from Source/Iconos/Generales/16x16/Plus.png rename to Resources/Iconos/Generales/16x16/Plus.png diff --git a/Source/Iconos/Generales/16x16/Preview.png b/Resources/Iconos/Generales/16x16/Preview.png similarity index 100% rename from Source/Iconos/Generales/16x16/Preview.png rename to Resources/Iconos/Generales/16x16/Preview.png diff --git a/Source/Iconos/Generales/16x16/Print-Options.png b/Resources/Iconos/Generales/16x16/Print-Options.png similarity index 100% rename from Source/Iconos/Generales/16x16/Print-Options.png rename to Resources/Iconos/Generales/16x16/Print-Options.png diff --git a/Source/Iconos/Generales/16x16/Print.png b/Resources/Iconos/Generales/16x16/Print.png similarity index 100% rename from Source/Iconos/Generales/16x16/Print.png rename to Resources/Iconos/Generales/16x16/Print.png diff --git a/Source/Iconos/Generales/16x16/Refresh.png b/Resources/Iconos/Generales/16x16/Refresh.png similarity index 100% rename from Source/Iconos/Generales/16x16/Refresh.png rename to Resources/Iconos/Generales/16x16/Refresh.png diff --git a/Source/Iconos/Generales/16x16/Save.png b/Resources/Iconos/Generales/16x16/Save.png similarity index 100% rename from Source/Iconos/Generales/16x16/Save.png rename to Resources/Iconos/Generales/16x16/Save.png diff --git a/Source/Iconos/Generales/16x16/Search.png b/Resources/Iconos/Generales/16x16/Search.png similarity index 100% rename from Source/Iconos/Generales/16x16/Search.png rename to Resources/Iconos/Generales/16x16/Search.png diff --git a/Source/Iconos/Generales/16x16/Select All.png b/Resources/Iconos/Generales/16x16/Select All.png similarity index 100% rename from Source/Iconos/Generales/16x16/Select All.png rename to Resources/Iconos/Generales/16x16/Select All.png diff --git a/Source/Iconos/Generales/16x16/Speaking-Start.png b/Resources/Iconos/Generales/16x16/Speaking-Start.png similarity index 100% rename from Source/Iconos/Generales/16x16/Speaking-Start.png rename to Resources/Iconos/Generales/16x16/Speaking-Start.png diff --git a/Source/Iconos/Generales/16x16/Sum-2.png b/Resources/Iconos/Generales/16x16/Sum-2.png similarity index 100% rename from Source/Iconos/Generales/16x16/Sum-2.png rename to Resources/Iconos/Generales/16x16/Sum-2.png diff --git a/Source/Iconos/Generales/16x16/Table-Find In Field.png b/Resources/Iconos/Generales/16x16/Table-Find In Field.png similarity index 100% rename from Source/Iconos/Generales/16x16/Table-Find In Field.png rename to Resources/Iconos/Generales/16x16/Table-Find In Field.png diff --git a/Source/Iconos/Generales/16x16/Table-Search.png b/Resources/Iconos/Generales/16x16/Table-Search.png similarity index 100% rename from Source/Iconos/Generales/16x16/Table-Search.png rename to Resources/Iconos/Generales/16x16/Table-Search.png diff --git a/Source/Iconos/Generales/16x16/Thumbs.db b/Resources/Iconos/Generales/16x16/Thumbs.db similarity index 100% rename from Source/Iconos/Generales/16x16/Thumbs.db rename to Resources/Iconos/Generales/16x16/Thumbs.db diff --git a/Source/Iconos/Generales/16x16/Total-capítulo.png b/Resources/Iconos/Generales/16x16/Total-capítulo.png similarity index 100% rename from Source/Iconos/Generales/16x16/Total-capítulo.png rename to Resources/Iconos/Generales/16x16/Total-capítulo.png diff --git a/Source/Iconos/Generales/16x16/Título-capítulo.png b/Resources/Iconos/Generales/16x16/Título-capítulo.png similarity index 100% rename from Source/Iconos/Generales/16x16/Título-capítulo.png rename to Resources/Iconos/Generales/16x16/Título-capítulo.png diff --git a/Source/Iconos/Generales/16x16/Underline.png b/Resources/Iconos/Generales/16x16/Underline.png similarity index 100% rename from Source/Iconos/Generales/16x16/Underline.png rename to Resources/Iconos/Generales/16x16/Underline.png diff --git a/Source/Iconos/Generales/16x16/Undo.png b/Resources/Iconos/Generales/16x16/Undo.png similarity index 100% rename from Source/Iconos/Generales/16x16/Undo.png rename to Resources/Iconos/Generales/16x16/Undo.png diff --git a/Source/Iconos/Generales/16x16/View-One Page.png b/Resources/Iconos/Generales/16x16/View-One Page.png similarity index 100% rename from Source/Iconos/Generales/16x16/View-One Page.png rename to Resources/Iconos/Generales/16x16/View-One Page.png diff --git a/Source/Iconos/Generales/16x16/View-Page Width.png b/Resources/Iconos/Generales/16x16/View-Page Width.png similarity index 100% rename from Source/Iconos/Generales/16x16/View-Page Width.png rename to Resources/Iconos/Generales/16x16/View-Page Width.png diff --git a/Source/Iconos/Generales/16x16/WEB.PNG b/Resources/Iconos/Generales/16x16/WEB.PNG similarity index 100% rename from Source/Iconos/Generales/16x16/WEB.PNG rename to Resources/Iconos/Generales/16x16/WEB.PNG diff --git a/Source/Iconos/Generales/16x16/Warning.png b/Resources/Iconos/Generales/16x16/Warning.png similarity index 100% rename from Source/Iconos/Generales/16x16/Warning.png rename to Resources/Iconos/Generales/16x16/Warning.png diff --git a/Source/Iconos/Generales/16x16/Zoom-In.png b/Resources/Iconos/Generales/16x16/Zoom-In.png similarity index 100% rename from Source/Iconos/Generales/16x16/Zoom-In.png rename to Resources/Iconos/Generales/16x16/Zoom-In.png diff --git a/Source/Iconos/Generales/16x16/Zoom-Out.png b/Resources/Iconos/Generales/16x16/Zoom-Out.png similarity index 100% rename from Source/Iconos/Generales/16x16/Zoom-Out.png rename to Resources/Iconos/Generales/16x16/Zoom-Out.png diff --git a/Source/Iconos/Generales/16x16/db-Next-2.png b/Resources/Iconos/Generales/16x16/db-Next-2.png similarity index 100% rename from Source/Iconos/Generales/16x16/db-Next-2.png rename to Resources/Iconos/Generales/16x16/db-Next-2.png diff --git a/Source/Iconos/Generales/16x16/db-Previous-2.png b/Resources/Iconos/Generales/16x16/db-Previous-2.png similarity index 100% rename from Source/Iconos/Generales/16x16/db-Previous-2.png rename to Resources/Iconos/Generales/16x16/db-Previous-2.png diff --git a/Source/Iconos/Generales/16x16/db-first-2.png b/Resources/Iconos/Generales/16x16/db-first-2.png similarity index 100% rename from Source/Iconos/Generales/16x16/db-first-2.png rename to Resources/Iconos/Generales/16x16/db-first-2.png diff --git a/Source/Iconos/Generales/16x16/db-last-2.png b/Resources/Iconos/Generales/16x16/db-last-2.png similarity index 100% rename from Source/Iconos/Generales/16x16/db-last-2.png rename to Resources/Iconos/Generales/16x16/db-last-2.png diff --git a/Source/Iconos/Generales/16x16/haycambios.png b/Resources/Iconos/Generales/16x16/haycambios.png similarity index 100% rename from Source/Iconos/Generales/16x16/haycambios.png rename to Resources/Iconos/Generales/16x16/haycambios.png diff --git a/Source/Iconos/Generales/24x24/About.png b/Resources/Iconos/Generales/24x24/About.png similarity index 100% rename from Source/Iconos/Generales/24x24/About.png rename to Resources/Iconos/Generales/24x24/About.png diff --git a/Source/Iconos/Generales/24x24/Back.png b/Resources/Iconos/Generales/24x24/Back.png similarity index 100% rename from Source/Iconos/Generales/24x24/Back.png rename to Resources/Iconos/Generales/24x24/Back.png diff --git a/Source/Iconos/Generales/24x24/Box-Open-2.png b/Resources/Iconos/Generales/24x24/Box-Open-2.png similarity index 100% rename from Source/Iconos/Generales/24x24/Box-Open-2.png rename to Resources/Iconos/Generales/24x24/Box-Open-2.png diff --git a/Source/Iconos/Generales/24x24/Card-Copy.png b/Resources/Iconos/Generales/24x24/Card-Copy.png similarity index 100% rename from Source/Iconos/Generales/24x24/Card-Copy.png rename to Resources/Iconos/Generales/24x24/Card-Copy.png diff --git a/Source/Iconos/Generales/24x24/Clear.png b/Resources/Iconos/Generales/24x24/Clear.png similarity index 100% rename from Source/Iconos/Generales/24x24/Clear.png rename to Resources/Iconos/Generales/24x24/Clear.png diff --git a/Source/Iconos/Generales/24x24/Copy.png b/Resources/Iconos/Generales/24x24/Copy.png similarity index 100% rename from Source/Iconos/Generales/24x24/Copy.png rename to Resources/Iconos/Generales/24x24/Copy.png diff --git a/Source/Iconos/Generales/24x24/Cut.png b/Resources/Iconos/Generales/24x24/Cut.png similarity index 100% rename from Source/Iconos/Generales/24x24/Cut.png rename to Resources/Iconos/Generales/24x24/Cut.png diff --git a/Source/Iconos/Generales/24x24/Debug-Breakpoint.png b/Resources/Iconos/Generales/24x24/Debug-Breakpoint.png similarity index 100% rename from Source/Iconos/Generales/24x24/Debug-Breakpoint.png rename to Resources/Iconos/Generales/24x24/Debug-Breakpoint.png diff --git a/Source/Iconos/Generales/24x24/Debug-Watch-Delete.png b/Resources/Iconos/Generales/24x24/Debug-Watch-Delete.png similarity index 100% rename from Source/Iconos/Generales/24x24/Debug-Watch-Delete.png rename to Resources/Iconos/Generales/24x24/Debug-Watch-Delete.png diff --git a/Source/Iconos/Generales/24x24/Debug-Watch.png b/Resources/Iconos/Generales/24x24/Debug-Watch.png similarity index 100% rename from Source/Iconos/Generales/24x24/Debug-Watch.png rename to Resources/Iconos/Generales/24x24/Debug-Watch.png diff --git a/Source/Iconos/Generales/24x24/Delete.png b/Resources/Iconos/Generales/24x24/Delete.png similarity index 100% rename from Source/Iconos/Generales/24x24/Delete.png rename to Resources/Iconos/Generales/24x24/Delete.png diff --git a/Source/Iconos/Generales/24x24/Distribute-Rows Evenly.png b/Resources/Iconos/Generales/24x24/Distribute-Rows Evenly.png similarity index 100% rename from Source/Iconos/Generales/24x24/Distribute-Rows Evenly.png rename to Resources/Iconos/Generales/24x24/Distribute-Rows Evenly.png diff --git a/Source/Iconos/Generales/24x24/Edit.png b/Resources/Iconos/Generales/24x24/Edit.png similarity index 100% rename from Source/Iconos/Generales/24x24/Edit.png rename to Resources/Iconos/Generales/24x24/Edit.png diff --git a/Source/Iconos/Generales/24x24/Execute.png b/Resources/Iconos/Generales/24x24/Execute.png similarity index 100% rename from Source/Iconos/Generales/24x24/Execute.png rename to Resources/Iconos/Generales/24x24/Execute.png diff --git a/Source/Iconos/Generales/24x24/Exit.png b/Resources/Iconos/Generales/24x24/Exit.png similarity index 100% rename from Source/Iconos/Generales/24x24/Exit.png rename to Resources/Iconos/Generales/24x24/Exit.png diff --git a/Source/Iconos/Generales/24x24/Form-New.png b/Resources/Iconos/Generales/24x24/Form-New.png similarity index 100% rename from Source/Iconos/Generales/24x24/Form-New.png rename to Resources/Iconos/Generales/24x24/Form-New.png diff --git a/Source/Iconos/Generales/24x24/Forward.png b/Resources/Iconos/Generales/24x24/Forward.png similarity index 100% rename from Source/Iconos/Generales/24x24/Forward.png rename to Resources/Iconos/Generales/24x24/Forward.png diff --git a/Source/Iconos/Generales/24x24/Home.png b/Resources/Iconos/Generales/24x24/Home.png similarity index 100% rename from Source/Iconos/Generales/24x24/Home.png rename to Resources/Iconos/Generales/24x24/Home.png diff --git a/Source/Iconos/Generales/24x24/Minus.png b/Resources/Iconos/Generales/24x24/Minus.png similarity index 100% rename from Source/Iconos/Generales/24x24/Minus.png rename to Resources/Iconos/Generales/24x24/Minus.png diff --git a/Source/Iconos/Generales/24x24/New.png b/Resources/Iconos/Generales/24x24/New.png similarity index 100% rename from Source/Iconos/Generales/24x24/New.png rename to Resources/Iconos/Generales/24x24/New.png diff --git a/Source/Iconos/Generales/24x24/Outline-Collapse.png b/Resources/Iconos/Generales/24x24/Outline-Collapse.png similarity index 100% rename from Source/Iconos/Generales/24x24/Outline-Collapse.png rename to Resources/Iconos/Generales/24x24/Outline-Collapse.png diff --git a/Source/Iconos/Generales/24x24/Outline-Expand.png b/Resources/Iconos/Generales/24x24/Outline-Expand.png similarity index 100% rename from Source/Iconos/Generales/24x24/Outline-Expand.png rename to Resources/Iconos/Generales/24x24/Outline-Expand.png diff --git a/Source/Iconos/Generales/24x24/Outline-Move Down.png b/Resources/Iconos/Generales/24x24/Outline-Move Down.png similarity index 100% rename from Source/Iconos/Generales/24x24/Outline-Move Down.png rename to Resources/Iconos/Generales/24x24/Outline-Move Down.png diff --git a/Source/Iconos/Generales/24x24/Outline-Move Up.png b/Resources/Iconos/Generales/24x24/Outline-Move Up.png similarity index 100% rename from Source/Iconos/Generales/24x24/Outline-Move Up.png rename to Resources/Iconos/Generales/24x24/Outline-Move Up.png diff --git a/Source/Iconos/Generales/24x24/Paste.png b/Resources/Iconos/Generales/24x24/Paste.png similarity index 100% rename from Source/Iconos/Generales/24x24/Paste.png rename to Resources/Iconos/Generales/24x24/Paste.png diff --git a/Source/Iconos/Generales/24x24/Plus.png b/Resources/Iconos/Generales/24x24/Plus.png similarity index 100% rename from Source/Iconos/Generales/24x24/Plus.png rename to Resources/Iconos/Generales/24x24/Plus.png diff --git a/Source/Iconos/Generales/24x24/Preview.png b/Resources/Iconos/Generales/24x24/Preview.png similarity index 100% rename from Source/Iconos/Generales/24x24/Preview.png rename to Resources/Iconos/Generales/24x24/Preview.png diff --git a/Source/Iconos/Generales/24x24/Print-Options.png b/Resources/Iconos/Generales/24x24/Print-Options.png similarity index 100% rename from Source/Iconos/Generales/24x24/Print-Options.png rename to Resources/Iconos/Generales/24x24/Print-Options.png diff --git a/Source/Iconos/Generales/24x24/Print.png b/Resources/Iconos/Generales/24x24/Print.png similarity index 100% rename from Source/Iconos/Generales/24x24/Print.png rename to Resources/Iconos/Generales/24x24/Print.png diff --git a/Source/Iconos/Generales/24x24/Refresh.png b/Resources/Iconos/Generales/24x24/Refresh.png similarity index 100% rename from Source/Iconos/Generales/24x24/Refresh.png rename to Resources/Iconos/Generales/24x24/Refresh.png diff --git a/Source/Iconos/Generales/24x24/Save.png b/Resources/Iconos/Generales/24x24/Save.png similarity index 100% rename from Source/Iconos/Generales/24x24/Save.png rename to Resources/Iconos/Generales/24x24/Save.png diff --git a/Source/Iconos/Generales/24x24/Search.png b/Resources/Iconos/Generales/24x24/Search.png similarity index 100% rename from Source/Iconos/Generales/24x24/Search.png rename to Resources/Iconos/Generales/24x24/Search.png diff --git a/Source/Iconos/Generales/24x24/Select All.png b/Resources/Iconos/Generales/24x24/Select All.png similarity index 100% rename from Source/Iconos/Generales/24x24/Select All.png rename to Resources/Iconos/Generales/24x24/Select All.png diff --git a/Source/Iconos/Generales/24x24/Speaking-Start.png b/Resources/Iconos/Generales/24x24/Speaking-Start.png similarity index 100% rename from Source/Iconos/Generales/24x24/Speaking-Start.png rename to Resources/Iconos/Generales/24x24/Speaking-Start.png diff --git a/Source/Iconos/Generales/24x24/Sum-2.png b/Resources/Iconos/Generales/24x24/Sum-2.png similarity index 100% rename from Source/Iconos/Generales/24x24/Sum-2.png rename to Resources/Iconos/Generales/24x24/Sum-2.png diff --git a/Source/Iconos/Generales/24x24/Table-Find In Field.png b/Resources/Iconos/Generales/24x24/Table-Find In Field.png similarity index 100% rename from Source/Iconos/Generales/24x24/Table-Find In Field.png rename to Resources/Iconos/Generales/24x24/Table-Find In Field.png diff --git a/Source/Iconos/Generales/24x24/Table-Search.png b/Resources/Iconos/Generales/24x24/Table-Search.png similarity index 100% rename from Source/Iconos/Generales/24x24/Table-Search.png rename to Resources/Iconos/Generales/24x24/Table-Search.png diff --git a/Source/Iconos/Generales/24x24/Thumbs.db b/Resources/Iconos/Generales/24x24/Thumbs.db similarity index 100% rename from Source/Iconos/Generales/24x24/Thumbs.db rename to Resources/Iconos/Generales/24x24/Thumbs.db diff --git a/Source/Iconos/Generales/24x24/Undo.png b/Resources/Iconos/Generales/24x24/Undo.png similarity index 100% rename from Source/Iconos/Generales/24x24/Undo.png rename to Resources/Iconos/Generales/24x24/Undo.png diff --git a/Source/Iconos/Generales/24x24/View-One Page.png b/Resources/Iconos/Generales/24x24/View-One Page.png similarity index 100% rename from Source/Iconos/Generales/24x24/View-One Page.png rename to Resources/Iconos/Generales/24x24/View-One Page.png diff --git a/Source/Iconos/Generales/24x24/View-Page Width.png b/Resources/Iconos/Generales/24x24/View-Page Width.png similarity index 100% rename from Source/Iconos/Generales/24x24/View-Page Width.png rename to Resources/Iconos/Generales/24x24/View-Page Width.png diff --git a/Source/Iconos/Generales/24x24/Warning.png b/Resources/Iconos/Generales/24x24/Warning.png similarity index 100% rename from Source/Iconos/Generales/24x24/Warning.png rename to Resources/Iconos/Generales/24x24/Warning.png diff --git a/Source/Iconos/Generales/24x24/Zoom-In.png b/Resources/Iconos/Generales/24x24/Zoom-In.png similarity index 100% rename from Source/Iconos/Generales/24x24/Zoom-In.png rename to Resources/Iconos/Generales/24x24/Zoom-In.png diff --git a/Source/Iconos/Generales/24x24/Zoom-Out.png b/Resources/Iconos/Generales/24x24/Zoom-Out.png similarity index 100% rename from Source/Iconos/Generales/24x24/Zoom-Out.png rename to Resources/Iconos/Generales/24x24/Zoom-Out.png diff --git a/Source/Iconos/Generales/24x24/db-First-2.png b/Resources/Iconos/Generales/24x24/db-First-2.png similarity index 100% rename from Source/Iconos/Generales/24x24/db-First-2.png rename to Resources/Iconos/Generales/24x24/db-First-2.png diff --git a/Source/Iconos/Generales/24x24/db-Last-2.png b/Resources/Iconos/Generales/24x24/db-Last-2.png similarity index 100% rename from Source/Iconos/Generales/24x24/db-Last-2.png rename to Resources/Iconos/Generales/24x24/db-Last-2.png diff --git a/Source/Iconos/Generales/24x24/db-Next-2.png b/Resources/Iconos/Generales/24x24/db-Next-2.png similarity index 100% rename from Source/Iconos/Generales/24x24/db-Next-2.png rename to Resources/Iconos/Generales/24x24/db-Next-2.png diff --git a/Source/Iconos/Generales/24x24/db-Previous-2.png b/Resources/Iconos/Generales/24x24/db-Previous-2.png similarity index 100% rename from Source/Iconos/Generales/24x24/db-Previous-2.png rename to Resources/Iconos/Generales/24x24/db-Previous-2.png diff --git a/Source/Iconos/Generales/28x28/Box-Open-2.png b/Resources/Iconos/Generales/28x28/Box-Open-2.png similarity index 100% rename from Source/Iconos/Generales/28x28/Box-Open-2.png rename to Resources/Iconos/Generales/28x28/Box-Open-2.png diff --git a/Source/Iconos/Generales/28x28/Card-Copy.png b/Resources/Iconos/Generales/28x28/Card-Copy.png similarity index 100% rename from Source/Iconos/Generales/28x28/Card-Copy.png rename to Resources/Iconos/Generales/28x28/Card-Copy.png diff --git a/Source/Iconos/Generales/28x28/Debug-Watch-Delete.png b/Resources/Iconos/Generales/28x28/Debug-Watch-Delete.png similarity index 100% rename from Source/Iconos/Generales/28x28/Debug-Watch-Delete.png rename to Resources/Iconos/Generales/28x28/Debug-Watch-Delete.png diff --git a/Source/Iconos/Generales/28x28/Debug-Watch.png b/Resources/Iconos/Generales/28x28/Debug-Watch.png similarity index 100% rename from Source/Iconos/Generales/28x28/Debug-Watch.png rename to Resources/Iconos/Generales/28x28/Debug-Watch.png diff --git a/Source/Iconos/Generales/28x28/Distribute-Rows Evenly.png b/Resources/Iconos/Generales/28x28/Distribute-Rows Evenly.png similarity index 100% rename from Source/Iconos/Generales/28x28/Distribute-Rows Evenly.png rename to Resources/Iconos/Generales/28x28/Distribute-Rows Evenly.png diff --git a/Source/Iconos/Generales/28x28/Execute.png b/Resources/Iconos/Generales/28x28/Execute.png similarity index 100% rename from Source/Iconos/Generales/28x28/Execute.png rename to Resources/Iconos/Generales/28x28/Execute.png diff --git a/Source/Iconos/Generales/28x28/Form-New.ico b/Resources/Iconos/Generales/28x28/Form-New.ico similarity index 100% rename from Source/Iconos/Generales/28x28/Form-New.ico rename to Resources/Iconos/Generales/28x28/Form-New.ico diff --git a/Source/Iconos/Generales/28x28/Form-New.png b/Resources/Iconos/Generales/28x28/Form-New.png similarity index 100% rename from Source/Iconos/Generales/28x28/Form-New.png rename to Resources/Iconos/Generales/28x28/Form-New.png diff --git a/Source/Iconos/Generales/28x28/Home.png b/Resources/Iconos/Generales/28x28/Home.png similarity index 100% rename from Source/Iconos/Generales/28x28/Home.png rename to Resources/Iconos/Generales/28x28/Home.png diff --git a/Source/Iconos/Generales/28x28/New.png b/Resources/Iconos/Generales/28x28/New.png similarity index 100% rename from Source/Iconos/Generales/28x28/New.png rename to Resources/Iconos/Generales/28x28/New.png diff --git a/Source/Iconos/Generales/28x28/Outline-Move Down.png b/Resources/Iconos/Generales/28x28/Outline-Move Down.png similarity index 100% rename from Source/Iconos/Generales/28x28/Outline-Move Down.png rename to Resources/Iconos/Generales/28x28/Outline-Move Down.png diff --git a/Source/Iconos/Generales/28x28/Outline-Move Up.png b/Resources/Iconos/Generales/28x28/Outline-Move Up.png similarity index 100% rename from Source/Iconos/Generales/28x28/Outline-Move Up.png rename to Resources/Iconos/Generales/28x28/Outline-Move Up.png diff --git a/Source/Iconos/Generales/28x28/Speaking-Start.png b/Resources/Iconos/Generales/28x28/Speaking-Start.png similarity index 100% rename from Source/Iconos/Generales/28x28/Speaking-Start.png rename to Resources/Iconos/Generales/28x28/Speaking-Start.png diff --git a/Source/Iconos/Generales/28x28/Sum-2.png b/Resources/Iconos/Generales/28x28/Sum-2.png similarity index 100% rename from Source/Iconos/Generales/28x28/Sum-2.png rename to Resources/Iconos/Generales/28x28/Sum-2.png diff --git a/Source/Iconos/Generales/28x28/Table-Find In Field.png b/Resources/Iconos/Generales/28x28/Table-Find In Field.png similarity index 100% rename from Source/Iconos/Generales/28x28/Table-Find In Field.png rename to Resources/Iconos/Generales/28x28/Table-Find In Field.png diff --git a/Source/Iconos/Generales/28x28/Table-Search.png b/Resources/Iconos/Generales/28x28/Table-Search.png similarity index 100% rename from Source/Iconos/Generales/28x28/Table-Search.png rename to Resources/Iconos/Generales/28x28/Table-Search.png diff --git a/Source/Iconos/Generales/28x28/Thumbs.db b/Resources/Iconos/Generales/28x28/Thumbs.db similarity index 100% rename from Source/Iconos/Generales/28x28/Thumbs.db rename to Resources/Iconos/Generales/28x28/Thumbs.db diff --git a/Source/Iconos/Generales/28x28/Warning.png b/Resources/Iconos/Generales/28x28/Warning.png similarity index 100% rename from Source/Iconos/Generales/28x28/Warning.png rename to Resources/Iconos/Generales/28x28/Warning.png diff --git a/Source/Iconos/Historico de movimientos/16x16/Entradas.png b/Resources/Iconos/Historico de movimientos/16x16/Entradas.png similarity index 100% rename from Source/Iconos/Historico de movimientos/16x16/Entradas.png rename to Resources/Iconos/Historico de movimientos/16x16/Entradas.png diff --git a/Source/Iconos/Historico de movimientos/16x16/Salidas.png b/Resources/Iconos/Historico de movimientos/16x16/Salidas.png similarity index 100% rename from Source/Iconos/Historico de movimientos/16x16/Salidas.png rename to Resources/Iconos/Historico de movimientos/16x16/Salidas.png diff --git a/Source/Iconos/Historico de movimientos/16x16/Thumbs.db b/Resources/Iconos/Historico de movimientos/16x16/Thumbs.db similarity index 100% rename from Source/Iconos/Historico de movimientos/16x16/Thumbs.db rename to Resources/Iconos/Historico de movimientos/16x16/Thumbs.db diff --git a/Source/Iconos/Historico de movimientos/24x24/Thumbs.db b/Resources/Iconos/Historico de movimientos/24x24/Thumbs.db similarity index 100% rename from Source/Iconos/Historico de movimientos/24x24/Thumbs.db rename to Resources/Iconos/Historico de movimientos/24x24/Thumbs.db diff --git a/Source/Iconos/Historico de movimientos/24x24/historico.png b/Resources/Iconos/Historico de movimientos/24x24/historico.png similarity index 100% rename from Source/Iconos/Historico de movimientos/24x24/historico.png rename to Resources/Iconos/Historico de movimientos/24x24/historico.png diff --git a/Source/Iconos/Historico de movimientos/28x28/Thumbs.db b/Resources/Iconos/Historico de movimientos/28x28/Thumbs.db similarity index 100% rename from Source/Iconos/Historico de movimientos/28x28/Thumbs.db rename to Resources/Iconos/Historico de movimientos/28x28/Thumbs.db diff --git a/Source/Iconos/Historico de movimientos/28x28/historico.png b/Resources/Iconos/Historico de movimientos/28x28/historico.png similarity index 100% rename from Source/Iconos/Historico de movimientos/28x28/historico.png rename to Resources/Iconos/Historico de movimientos/28x28/historico.png diff --git a/Source/Iconos/Montajes/16x16/Document-Labels.png b/Resources/Iconos/Montajes/16x16/Document-Labels.png similarity index 100% rename from Source/Iconos/Montajes/16x16/Document-Labels.png rename to Resources/Iconos/Montajes/16x16/Document-Labels.png diff --git a/Source/Iconos/Montajes/16x16/Thumbs.db b/Resources/Iconos/Montajes/16x16/Thumbs.db similarity index 100% rename from Source/Iconos/Montajes/16x16/Thumbs.db rename to Resources/Iconos/Montajes/16x16/Thumbs.db diff --git a/Source/Iconos/Montajes/16x16/Tools.png b/Resources/Iconos/Montajes/16x16/Tools.png similarity index 100% rename from Source/Iconos/Montajes/16x16/Tools.png rename to Resources/Iconos/Montajes/16x16/Tools.png diff --git a/Source/Iconos/Montajes/24x24/Document-Labels.png b/Resources/Iconos/Montajes/24x24/Document-Labels.png similarity index 100% rename from Source/Iconos/Montajes/24x24/Document-Labels.png rename to Resources/Iconos/Montajes/24x24/Document-Labels.png diff --git a/Source/Iconos/Montajes/24x24/Thumbs.db b/Resources/Iconos/Montajes/24x24/Thumbs.db similarity index 100% rename from Source/Iconos/Montajes/24x24/Thumbs.db rename to Resources/Iconos/Montajes/24x24/Thumbs.db diff --git a/Source/Iconos/Montajes/24x24/Tools.png b/Resources/Iconos/Montajes/24x24/Tools.png similarity index 100% rename from Source/Iconos/Montajes/24x24/Tools.png rename to Resources/Iconos/Montajes/24x24/Tools.png diff --git a/Source/Iconos/Montajes/28x28/Document-Labels.png b/Resources/Iconos/Montajes/28x28/Document-Labels.png similarity index 100% rename from Source/Iconos/Montajes/28x28/Document-Labels.png rename to Resources/Iconos/Montajes/28x28/Document-Labels.png diff --git a/Source/Iconos/Montajes/28x28/Thumbs.db b/Resources/Iconos/Montajes/28x28/Thumbs.db similarity index 100% rename from Source/Iconos/Montajes/28x28/Thumbs.db rename to Resources/Iconos/Montajes/28x28/Thumbs.db diff --git a/Source/Iconos/Montajes/28x28/Tools.png b/Resources/Iconos/Montajes/28x28/Tools.png similarity index 100% rename from Source/Iconos/Montajes/28x28/Tools.png rename to Resources/Iconos/Montajes/28x28/Tools.png diff --git a/Source/Iconos/Pagos/16x16/Thumbs.db b/Resources/Iconos/Pagos/16x16/Thumbs.db similarity index 100% rename from Source/Iconos/Pagos/16x16/Thumbs.db rename to Resources/Iconos/Pagos/16x16/Thumbs.db diff --git a/Source/Iconos/Pagos/16x16/pagado.png b/Resources/Iconos/Pagos/16x16/pagado.png similarity index 100% rename from Source/Iconos/Pagos/16x16/pagado.png rename to Resources/Iconos/Pagos/16x16/pagado.png diff --git a/Source/Iconos/Pagos/24x24/Thumbs.db b/Resources/Iconos/Pagos/24x24/Thumbs.db similarity index 100% rename from Source/Iconos/Pagos/24x24/Thumbs.db rename to Resources/Iconos/Pagos/24x24/Thumbs.db diff --git a/Source/Iconos/Pagos/24x24/pagado.png b/Resources/Iconos/Pagos/24x24/pagado.png similarity index 100% rename from Source/Iconos/Pagos/24x24/pagado.png rename to Resources/Iconos/Pagos/24x24/pagado.png diff --git a/Source/Iconos/Pagos/28x28/Thumbs.db b/Resources/Iconos/Pagos/28x28/Thumbs.db similarity index 100% rename from Source/Iconos/Pagos/28x28/Thumbs.db rename to Resources/Iconos/Pagos/28x28/Thumbs.db diff --git a/Source/Iconos/Pagos/28x28/pagado.png b/Resources/Iconos/Pagos/28x28/pagado.png similarity index 100% rename from Source/Iconos/Pagos/28x28/pagado.png rename to Resources/Iconos/Pagos/28x28/pagado.png diff --git a/Source/Iconos/Pedidos a proveedor/16x16/Complete-0.png b/Resources/Iconos/Pedidos a proveedor/16x16/Complete-0.png similarity index 100% rename from Source/Iconos/Pedidos a proveedor/16x16/Complete-0.png rename to Resources/Iconos/Pedidos a proveedor/16x16/Complete-0.png diff --git a/Source/Iconos/Pedidos a proveedor/16x16/Complete-100.png b/Resources/Iconos/Pedidos a proveedor/16x16/Complete-100.png similarity index 100% rename from Source/Iconos/Pedidos a proveedor/16x16/Complete-100.png rename to Resources/Iconos/Pedidos a proveedor/16x16/Complete-100.png diff --git a/Source/Iconos/Pedidos a proveedor/16x16/Complete-50.png b/Resources/Iconos/Pedidos a proveedor/16x16/Complete-50.png similarity index 100% rename from Source/Iconos/Pedidos a proveedor/16x16/Complete-50.png rename to Resources/Iconos/Pedidos a proveedor/16x16/Complete-50.png diff --git a/Source/Iconos/Pedidos a proveedor/16x16/Thumbs.db b/Resources/Iconos/Pedidos a proveedor/16x16/Thumbs.db similarity index 100% rename from Source/Iconos/Pedidos a proveedor/16x16/Thumbs.db rename to Resources/Iconos/Pedidos a proveedor/16x16/Thumbs.db diff --git a/Source/Iconos/Pedidos a proveedor/16x16/pedidos.png b/Resources/Iconos/Pedidos a proveedor/16x16/pedidos.png similarity index 100% rename from Source/Iconos/Pedidos a proveedor/16x16/pedidos.png rename to Resources/Iconos/Pedidos a proveedor/16x16/pedidos.png diff --git a/Source/Iconos/Pedidos a proveedor/24x24/Complete-0.png b/Resources/Iconos/Pedidos a proveedor/24x24/Complete-0.png similarity index 100% rename from Source/Iconos/Pedidos a proveedor/24x24/Complete-0.png rename to Resources/Iconos/Pedidos a proveedor/24x24/Complete-0.png diff --git a/Source/Iconos/Pedidos a proveedor/24x24/Complete-100.png b/Resources/Iconos/Pedidos a proveedor/24x24/Complete-100.png similarity index 100% rename from Source/Iconos/Pedidos a proveedor/24x24/Complete-100.png rename to Resources/Iconos/Pedidos a proveedor/24x24/Complete-100.png diff --git a/Source/Iconos/Pedidos a proveedor/24x24/Complete-50.png b/Resources/Iconos/Pedidos a proveedor/24x24/Complete-50.png similarity index 100% rename from Source/Iconos/Pedidos a proveedor/24x24/Complete-50.png rename to Resources/Iconos/Pedidos a proveedor/24x24/Complete-50.png diff --git a/Source/Iconos/Pedidos a proveedor/24x24/Thumbs.db b/Resources/Iconos/Pedidos a proveedor/24x24/Thumbs.db similarity index 100% rename from Source/Iconos/Pedidos a proveedor/24x24/Thumbs.db rename to Resources/Iconos/Pedidos a proveedor/24x24/Thumbs.db diff --git a/Source/Iconos/Pedidos a proveedor/24x24/pedido.png b/Resources/Iconos/Pedidos a proveedor/24x24/pedido.png similarity index 100% rename from Source/Iconos/Pedidos a proveedor/24x24/pedido.png rename to Resources/Iconos/Pedidos a proveedor/24x24/pedido.png diff --git a/Source/Iconos/Pedidos a proveedor/28x28/Complete-0.png b/Resources/Iconos/Pedidos a proveedor/28x28/Complete-0.png similarity index 100% rename from Source/Iconos/Pedidos a proveedor/28x28/Complete-0.png rename to Resources/Iconos/Pedidos a proveedor/28x28/Complete-0.png diff --git a/Source/Iconos/Pedidos a proveedor/28x28/Complete-100.png b/Resources/Iconos/Pedidos a proveedor/28x28/Complete-100.png similarity index 100% rename from Source/Iconos/Pedidos a proveedor/28x28/Complete-100.png rename to Resources/Iconos/Pedidos a proveedor/28x28/Complete-100.png diff --git a/Source/Iconos/Pedidos a proveedor/28x28/Complete-50.png b/Resources/Iconos/Pedidos a proveedor/28x28/Complete-50.png similarity index 100% rename from Source/Iconos/Pedidos a proveedor/28x28/Complete-50.png rename to Resources/Iconos/Pedidos a proveedor/28x28/Complete-50.png diff --git a/Source/Iconos/Pedidos a proveedor/28x28/Thumbs.db b/Resources/Iconos/Pedidos a proveedor/28x28/Thumbs.db similarity index 100% rename from Source/Iconos/Pedidos a proveedor/28x28/Thumbs.db rename to Resources/Iconos/Pedidos a proveedor/28x28/Thumbs.db diff --git a/Source/Iconos/Pedidos a proveedor/28x28/pedido.png b/Resources/Iconos/Pedidos a proveedor/28x28/pedido.png similarity index 100% rename from Source/Iconos/Pedidos a proveedor/28x28/pedido.png rename to Resources/Iconos/Pedidos a proveedor/28x28/pedido.png diff --git a/Source/Iconos/Pedidos de cliente/16x16/Budget.png b/Resources/Iconos/Pedidos de cliente/16x16/Budget.png similarity index 100% rename from Source/Iconos/Pedidos de cliente/16x16/Budget.png rename to Resources/Iconos/Pedidos de cliente/16x16/Budget.png diff --git a/Source/Iconos/Pedidos de cliente/16x16/Thumbs.db b/Resources/Iconos/Pedidos de cliente/16x16/Thumbs.db similarity index 100% rename from Source/Iconos/Pedidos de cliente/16x16/Thumbs.db rename to Resources/Iconos/Pedidos de cliente/16x16/Thumbs.db diff --git a/Source/Iconos/Pedidos de cliente/24x24/Budget.png b/Resources/Iconos/Pedidos de cliente/24x24/Budget.png similarity index 100% rename from Source/Iconos/Pedidos de cliente/24x24/Budget.png rename to Resources/Iconos/Pedidos de cliente/24x24/Budget.png diff --git a/Source/Iconos/Pedidos de cliente/24x24/Thumbs.db b/Resources/Iconos/Pedidos de cliente/24x24/Thumbs.db similarity index 100% rename from Source/Iconos/Pedidos de cliente/24x24/Thumbs.db rename to Resources/Iconos/Pedidos de cliente/24x24/Thumbs.db diff --git a/Source/Iconos/Pedidos de cliente/28x28/Budget.png b/Resources/Iconos/Pedidos de cliente/28x28/Budget.png similarity index 100% rename from Source/Iconos/Pedidos de cliente/28x28/Budget.png rename to Resources/Iconos/Pedidos de cliente/28x28/Budget.png diff --git a/Source/Iconos/Pedidos de cliente/28x28/Thumbs.db b/Resources/Iconos/Pedidos de cliente/28x28/Thumbs.db similarity index 100% rename from Source/Iconos/Pedidos de cliente/28x28/Thumbs.db rename to Resources/Iconos/Pedidos de cliente/28x28/Thumbs.db diff --git a/Source/Iconos/Presupuestos/16x16/Aumentar_letra.png b/Resources/Iconos/Presupuestos/16x16/Aumentar_letra.png similarity index 100% rename from Source/Iconos/Presupuestos/16x16/Aumentar_letra.png rename to Resources/Iconos/Presupuestos/16x16/Aumentar_letra.png diff --git a/Source/Iconos/Presupuestos/16x16/Budget.png b/Resources/Iconos/Presupuestos/16x16/Budget.png similarity index 100% rename from Source/Iconos/Presupuestos/16x16/Budget.png rename to Resources/Iconos/Presupuestos/16x16/Budget.png diff --git a/Source/Iconos/Presupuestos/16x16/Delete-Blue.png b/Resources/Iconos/Presupuestos/16x16/Delete-Blue.png similarity index 100% rename from Source/Iconos/Presupuestos/16x16/Delete-Blue.png rename to Resources/Iconos/Presupuestos/16x16/Delete-Blue.png diff --git a/Source/Iconos/Presupuestos/16x16/Disminuir_letra.png b/Resources/Iconos/Presupuestos/16x16/Disminuir_letra.png similarity index 100% rename from Source/Iconos/Presupuestos/16x16/Disminuir_letra.png rename to Resources/Iconos/Presupuestos/16x16/Disminuir_letra.png diff --git a/Source/Iconos/Presupuestos/16x16/Thumbs.db b/Resources/Iconos/Presupuestos/16x16/Thumbs.db similarity index 100% rename from Source/Iconos/Presupuestos/16x16/Thumbs.db rename to Resources/Iconos/Presupuestos/16x16/Thumbs.db diff --git a/Source/Iconos/Presupuestos/16x16/Tick.png b/Resources/Iconos/Presupuestos/16x16/Tick.png similarity index 100% rename from Source/Iconos/Presupuestos/16x16/Tick.png rename to Resources/Iconos/Presupuestos/16x16/Tick.png diff --git a/Source/Iconos/Presupuestos/24x24/Budget.png b/Resources/Iconos/Presupuestos/24x24/Budget.png similarity index 100% rename from Source/Iconos/Presupuestos/24x24/Budget.png rename to Resources/Iconos/Presupuestos/24x24/Budget.png diff --git a/Source/Iconos/Presupuestos/24x24/Delete-Blue.png b/Resources/Iconos/Presupuestos/24x24/Delete-Blue.png similarity index 100% rename from Source/Iconos/Presupuestos/24x24/Delete-Blue.png rename to Resources/Iconos/Presupuestos/24x24/Delete-Blue.png diff --git a/Source/Iconos/Presupuestos/24x24/Thumbs.db b/Resources/Iconos/Presupuestos/24x24/Thumbs.db similarity index 100% rename from Source/Iconos/Presupuestos/24x24/Thumbs.db rename to Resources/Iconos/Presupuestos/24x24/Thumbs.db diff --git a/Source/Iconos/Presupuestos/24x24/Tick.png b/Resources/Iconos/Presupuestos/24x24/Tick.png similarity index 100% rename from Source/Iconos/Presupuestos/24x24/Tick.png rename to Resources/Iconos/Presupuestos/24x24/Tick.png diff --git a/Source/Iconos/Presupuestos/28x28/Budget.png b/Resources/Iconos/Presupuestos/28x28/Budget.png similarity index 100% rename from Source/Iconos/Presupuestos/28x28/Budget.png rename to Resources/Iconos/Presupuestos/28x28/Budget.png diff --git a/Source/Iconos/Presupuestos/28x28/Thumbs.db b/Resources/Iconos/Presupuestos/28x28/Thumbs.db similarity index 100% rename from Source/Iconos/Presupuestos/28x28/Thumbs.db rename to Resources/Iconos/Presupuestos/28x28/Thumbs.db diff --git a/Source/Iconos/Remesas/16x16/Export.png b/Resources/Iconos/Remesas/16x16/Export.png similarity index 100% rename from Source/Iconos/Remesas/16x16/Export.png rename to Resources/Iconos/Remesas/16x16/Export.png diff --git a/Source/Iconos/Remesas/16x16/Thumbs.db b/Resources/Iconos/Remesas/16x16/Thumbs.db similarity index 100% rename from Source/Iconos/Remesas/16x16/Thumbs.db rename to Resources/Iconos/Remesas/16x16/Thumbs.db diff --git a/Source/Iconos/Remesas/24x24/Export.png b/Resources/Iconos/Remesas/24x24/Export.png similarity index 100% rename from Source/Iconos/Remesas/24x24/Export.png rename to Resources/Iconos/Remesas/24x24/Export.png diff --git a/Source/Iconos/Remesas/24x24/Thumbs.db b/Resources/Iconos/Remesas/24x24/Thumbs.db similarity index 100% rename from Source/Iconos/Remesas/24x24/Thumbs.db rename to Resources/Iconos/Remesas/24x24/Thumbs.db diff --git a/Source/Iconos/Remesas/28x28/Export.png b/Resources/Iconos/Remesas/28x28/Export.png similarity index 100% rename from Source/Iconos/Remesas/28x28/Export.png rename to Resources/Iconos/Remesas/28x28/Export.png diff --git a/Source/Iconos/Remesas/28x28/Thumbs.db b/Resources/Iconos/Remesas/28x28/Thumbs.db similarity index 100% rename from Source/Iconos/Remesas/28x28/Thumbs.db rename to Resources/Iconos/Remesas/28x28/Thumbs.db diff --git a/Source/Iconos/Servidor.ico b/Resources/Iconos/Servidor.ico similarity index 100% rename from Source/Iconos/Servidor.ico rename to Resources/Iconos/Servidor.ico diff --git a/Source/Iconos/Servidor/16x16/Database.png b/Resources/Iconos/Servidor/16x16/Database.png similarity index 100% rename from Source/Iconos/Servidor/16x16/Database.png rename to Resources/Iconos/Servidor/16x16/Database.png diff --git a/Source/Iconos/Servidor/16x16/Thumbs.db b/Resources/Iconos/Servidor/16x16/Thumbs.db similarity index 100% rename from Source/Iconos/Servidor/16x16/Thumbs.db rename to Resources/Iconos/Servidor/16x16/Thumbs.db diff --git a/Source/Iconos/Servidor/24x24/Database.png b/Resources/Iconos/Servidor/24x24/Database.png similarity index 100% rename from Source/Iconos/Servidor/24x24/Database.png rename to Resources/Iconos/Servidor/24x24/Database.png diff --git a/Source/Iconos/Servidor/24x24/Thumbs.db b/Resources/Iconos/Servidor/24x24/Thumbs.db similarity index 100% rename from Source/Iconos/Servidor/24x24/Thumbs.db rename to Resources/Iconos/Servidor/24x24/Thumbs.db diff --git a/Source/Iconos/Servidor/28x28/Database.png b/Resources/Iconos/Servidor/28x28/Database.png similarity index 100% rename from Source/Iconos/Servidor/28x28/Database.png rename to Resources/Iconos/Servidor/28x28/Database.png diff --git a/Source/Iconos/Servidor/28x28/Thumbs.db b/Resources/Iconos/Servidor/28x28/Thumbs.db similarity index 100% rename from Source/Iconos/Servidor/28x28/Thumbs.db rename to Resources/Iconos/Servidor/28x28/Thumbs.db diff --git a/Source/Iconos/Thumbs.db b/Resources/Iconos/Thumbs.db similarity index 100% rename from Source/Iconos/Thumbs.db rename to Resources/Iconos/Thumbs.db diff --git a/Source/Iconos/Usuarios/16x16/Thumbs.db b/Resources/Iconos/Usuarios/16x16/Thumbs.db similarity index 100% rename from Source/Iconos/Usuarios/16x16/Thumbs.db rename to Resources/Iconos/Usuarios/16x16/Thumbs.db diff --git a/Source/Iconos/Usuarios/16x16/User-Add.png b/Resources/Iconos/Usuarios/16x16/User-Add.png similarity index 100% rename from Source/Iconos/Usuarios/16x16/User-Add.png rename to Resources/Iconos/Usuarios/16x16/User-Add.png diff --git a/Source/Iconos/Usuarios/16x16/User-Edit.png b/Resources/Iconos/Usuarios/16x16/User-Edit.png similarity index 100% rename from Source/Iconos/Usuarios/16x16/User-Edit.png rename to Resources/Iconos/Usuarios/16x16/User-Edit.png diff --git a/Source/Iconos/Usuarios/16x16/User-Password.png b/Resources/Iconos/Usuarios/16x16/User-Password.png similarity index 100% rename from Source/Iconos/Usuarios/16x16/User-Password.png rename to Resources/Iconos/Usuarios/16x16/User-Password.png diff --git a/Source/Iconos/Usuarios/16x16/User-Remove.png b/Resources/Iconos/Usuarios/16x16/User-Remove.png similarity index 100% rename from Source/Iconos/Usuarios/16x16/User-Remove.png rename to Resources/Iconos/Usuarios/16x16/User-Remove.png diff --git a/Source/Iconos/Usuarios/16x16/User.png b/Resources/Iconos/Usuarios/16x16/User.png similarity index 100% rename from Source/Iconos/Usuarios/16x16/User.png rename to Resources/Iconos/Usuarios/16x16/User.png diff --git a/Source/Iconos/Usuarios/16x16/Users.png b/Resources/Iconos/Usuarios/16x16/Users.png similarity index 100% rename from Source/Iconos/Usuarios/16x16/Users.png rename to Resources/Iconos/Usuarios/16x16/Users.png diff --git a/Source/Iconos/Usuarios/24x24/Thumbs.db b/Resources/Iconos/Usuarios/24x24/Thumbs.db similarity index 100% rename from Source/Iconos/Usuarios/24x24/Thumbs.db rename to Resources/Iconos/Usuarios/24x24/Thumbs.db diff --git a/Source/Iconos/Usuarios/24x24/User-Add.png b/Resources/Iconos/Usuarios/24x24/User-Add.png similarity index 100% rename from Source/Iconos/Usuarios/24x24/User-Add.png rename to Resources/Iconos/Usuarios/24x24/User-Add.png diff --git a/Source/Iconos/Usuarios/24x24/User-Edit.png b/Resources/Iconos/Usuarios/24x24/User-Edit.png similarity index 100% rename from Source/Iconos/Usuarios/24x24/User-Edit.png rename to Resources/Iconos/Usuarios/24x24/User-Edit.png diff --git a/Source/Iconos/Usuarios/24x24/User-Password.png b/Resources/Iconos/Usuarios/24x24/User-Password.png similarity index 100% rename from Source/Iconos/Usuarios/24x24/User-Password.png rename to Resources/Iconos/Usuarios/24x24/User-Password.png diff --git a/Source/Iconos/Usuarios/24x24/User-Remove.png b/Resources/Iconos/Usuarios/24x24/User-Remove.png similarity index 100% rename from Source/Iconos/Usuarios/24x24/User-Remove.png rename to Resources/Iconos/Usuarios/24x24/User-Remove.png diff --git a/Source/Iconos/Usuarios/24x24/User.png b/Resources/Iconos/Usuarios/24x24/User.png similarity index 100% rename from Source/Iconos/Usuarios/24x24/User.png rename to Resources/Iconos/Usuarios/24x24/User.png diff --git a/Source/Iconos/Usuarios/24x24/Users.png b/Resources/Iconos/Usuarios/24x24/Users.png similarity index 100% rename from Source/Iconos/Usuarios/24x24/Users.png rename to Resources/Iconos/Usuarios/24x24/Users.png diff --git a/Source/Iconos/Usuarios/28x28/Thumbs.db b/Resources/Iconos/Usuarios/28x28/Thumbs.db similarity index 100% rename from Source/Iconos/Usuarios/28x28/Thumbs.db rename to Resources/Iconos/Usuarios/28x28/Thumbs.db diff --git a/Source/Iconos/Usuarios/28x28/User-Add.png b/Resources/Iconos/Usuarios/28x28/User-Add.png similarity index 100% rename from Source/Iconos/Usuarios/28x28/User-Add.png rename to Resources/Iconos/Usuarios/28x28/User-Add.png diff --git a/Source/Iconos/Usuarios/28x28/User-Edit.png b/Resources/Iconos/Usuarios/28x28/User-Edit.png similarity index 100% rename from Source/Iconos/Usuarios/28x28/User-Edit.png rename to Resources/Iconos/Usuarios/28x28/User-Edit.png diff --git a/Source/Iconos/Usuarios/28x28/User-Password.png b/Resources/Iconos/Usuarios/28x28/User-Password.png similarity index 100% rename from Source/Iconos/Usuarios/28x28/User-Password.png rename to Resources/Iconos/Usuarios/28x28/User-Password.png diff --git a/Source/Iconos/Usuarios/28x28/User-Remove.png b/Resources/Iconos/Usuarios/28x28/User-Remove.png similarity index 100% rename from Source/Iconos/Usuarios/28x28/User-Remove.png rename to Resources/Iconos/Usuarios/28x28/User-Remove.png diff --git a/Source/Iconos/Usuarios/28x28/User.png b/Resources/Iconos/Usuarios/28x28/User.png similarity index 100% rename from Source/Iconos/Usuarios/28x28/User.png rename to Resources/Iconos/Usuarios/28x28/User.png diff --git a/Source/Iconos/Usuarios/28x28/Users.png b/Resources/Iconos/Usuarios/28x28/Users.png similarity index 100% rename from Source/Iconos/Usuarios/28x28/Users.png rename to Resources/Iconos/Usuarios/28x28/Users.png diff --git a/Source/Iconos/Usuarios/48x48/Thumbs.db b/Resources/Iconos/Usuarios/48x48/Thumbs.db similarity index 100% rename from Source/Iconos/Usuarios/48x48/Thumbs.db rename to Resources/Iconos/Usuarios/48x48/Thumbs.db diff --git a/Source/Iconos/Usuarios/48x48/Users.png b/Resources/Iconos/Usuarios/48x48/Users.png similarity index 100% rename from Source/Iconos/Usuarios/48x48/Users.png rename to Resources/Iconos/Usuarios/48x48/Users.png diff --git a/Source/Iconos/fac.png b/Resources/Iconos/fac.png similarity index 100% rename from Source/Iconos/fac.png rename to Resources/Iconos/fac.png diff --git a/RodaxSoftware.FactuGES.Common.targets b/RodaxSoftware.FactuGES.Common.targets new file mode 100644 index 00000000..03b81f23 --- /dev/null +++ b/RodaxSoftware.FactuGES.Common.targets @@ -0,0 +1,281 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + '%(RootDir)%(Directory)bin\$(Configuration)\*$(NUnitFile)'); + @(TestProjects->'%(RootDir)%(Directory)bin\$(Configuration)\*$(LastTestRunSucceededFile)'); + @(TestProjects->'%(RootDir)%(Directory)bin\$(Configuration)\*$(NCoverFile)'); + @(TestProjects->'%(RootDir)%(Directory)bin\$(Configuration)\*$(NCoverLogFile)')"> + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/RodaxSoftware.FactuGES.proj b/RodaxSoftware.FactuGES.proj new file mode 100644 index 00000000..5c23b36c --- /dev/null +++ b/RodaxSoftware.FactuGES.proj @@ -0,0 +1,239 @@ + + + + %0D%0A + %0A%0D%0C%08 + %0A%20%08 + %09 + %40 + %25 + %22 + %27 + %0D + %0A + %20 + + + + + $(MSBuildProjectDirectory)\Build + $(MSBuildProjectDirectory)\Source + $(MSBuildProjectDirectory)\Database + $(MSBuildProjectDirectory)\Lib + $(MSBuildProjectDirectory)\Install + $(MSBuildProjectDirectory)\Output + $(SqlFolder)\Scripts + $(MSBuildProjectDirectory)\Code Metrics + $(MSBuildProjectDirectory)\Tools + $(MSBuildProjectDirectory)\Qtp + \\qtpserver\qtpshare + $(QtpDeployFolder)\Install + $(QtpDeployFolder)\Uninstall + $(QtpFolder)\TestResults + + + + + DEV + localhost + firebird2 + sysdba + masterkey + $(ToolsFolder)\ISQL\isql.exe + smtp.somewhere.co.za + + + + + C:\Archivos de programa\FinalBuilder 5 + $(FinalBuilderPath)\FBCMD.exe + C:\Program Files\Subversion\bin + $(SubversionPath)\svn.exe + C:\Program Files\NCover\ + C:\Program Files\NCoverExplorer\ + C:\Program Files\NUnit-Net-2.0 2.2.10\bin + $(NUnitPath)\nunit-console.exe + C:\Program Files\Installshield 12 StandaloneBuild + $(InstallShieldPath)\IsSaBld.exe + + + + + + ..\Sanlam.snk + Sanlam.SanQuote.sln + $(MSBuildProjectDirectory)\IterationNumber.txt + $(MSBuildProjectDirectory)\Environment.txt + LastTestRunSucceeded + LastCodeAnalysisSucceeded + $(Temp)\InstallBuildEmailFile.htm + $(InstallFolder)\InstallBuildEmailTemplate.htm + TestResult.xml + CodeAnalysisLog.xml + Coverage.xml + Coverage.log + CoverageSummary.xml + CoverageSummary.html + $(SqlScriptsFolder)\CreateDBBackupsForAutomatedBuild.cmd + $(QtpFolder)\RunQTP.vbs + QtpResultsSummary.xml + + + + + $(MSBuildProjectDirectory) + https://svn.somewhere.co.za/sanquote + $(SvnServerPath)/trunk + $(SvnServerPath)/tags + + + + + SanQuote.msi + $(InstallFolder)\SanQuote.ism + $(InstallFolder)\SetMsiProductVersion.vbs + $(InstallFolder)\Binaries\InstallFiles + $(Temp)\SanQuote\Install + PROJECT_ASSISTANT\SINGLE_MSI_IMAGE\DiskImages\DISK1 + $(InstallFolder)\Merge Modules + + + + + 1 + 0 + $(Iteration) + Build + false + + + + + $(CodeOutputFolder) + Debug + AnyCPU + false + $(CodeOutputFolder)\Debug + $(CodeOutputFolder)\Release + + + + + + + + + + + + $(CleanDependsOn); + CleanDatabase + CleanCode + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/Source/ApplicationBase/ApplicationBase.bdsproj b/Source/ApplicationBase/ApplicationBase.bdsproj new file mode 100644 index 00000000..d4951b0d --- /dev/null +++ b/Source/ApplicationBase/ApplicationBase.bdsproj @@ -0,0 +1,697 @@ + + + + + + + + + + + + ApplicationBase.dpk + + + 7.0 + + + 8 + 0 + 1 + 1 + 0 + 0 + 1 + 1 + 1 + 0 + 0 + 1 + 0 + 1 + 1 + 1 + 0 + 0 + 0 + 0 + 0 + 1 + 0 + 1 + 1 + 1 + True + True + WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; + + False + + True + True + True + True + True + True + True + True + True + True + True + True + True + True + True + True + True + True + True + True + True + True + True + True + True + True + True + True + True + True + True + True + True + True + True + True + True + True + True + True + True + True + True + True + True + True + False + False + False + True + True + True + True + True + True + True + True + True + True + True + True + True + True + True + + + + 0 + 0 + False + 1 + False + False + False + 16384 + 1048576 + 4194304 + + + + + .\ + ..\..\..\..\Output\Debug\Cliente + ..\Lib + ..\Lib + + + + False + + + + + + False + + + True + False + + + False + + + True + False + 1 + 0 + 0 + 0 + False + False + False + False + False + 3082 + 1252 + + + + + 1.0.0.0 + + + + + + 1.0.0.0 + + + + + + + + + + + + + + + + + + + + + + + + + VCL for the Web Design Package for CodeGear RAD Studio + CodeGear WebSnap Components + CodeGear SOAP Components + Microsoft Office XP Sample Automation Server Wrapper Components + Microsoft Office 2000 Sample Automation Server Wrapper Components + CodeGear C++Builder Office 2000 Servers Package + CodeGear C++Builder Office XP Servers Package + + + + + + diff --git a/Source/ApplicationBase/ApplicationBase.cfg b/Source/ApplicationBase/ApplicationBase.cfg new file mode 100644 index 00000000..7b0053cd --- /dev/null +++ b/Source/ApplicationBase/ApplicationBase.cfg @@ -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" diff --git a/Source/ApplicationBase/ApplicationBase.dpk b/Source/ApplicationBase/ApplicationBase.dpk new file mode 100644 index 00000000..4bf5dfec --- /dev/null +++ b/Source/ApplicationBase/ApplicationBase.dpk @@ -0,0 +1,84 @@ +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 ON} +{$OVERFLOWCHECKS OFF} +{$RANGECHECKS OFF} +{$REFERENCEINFO ON} +{$SAFEDIVIDE OFF} +{$STACKFRAMES OFF} +{$TYPEDADDRESS OFF} +{$VARSTRINGCHECKS ON} +{$WRITEABLECONST OFF} +{$MINENUMSIZE 1} +{$IMAGEBASE $400000} +{$IMPLICITBUILD ON} +{$DEFINE DEBUG} + +requires + rtl, + vcl, + dbrtl, + Base, + GUIBase, + pckUCDataConnector, + pckUserControl_RT, + JvJansD11R, + cxLibraryD10, + dxThemeD10, + cxEditorsD10, + cxDataD10, + vcljpg, + vcldb, + PNG_D10, + PngComponentsD10, + vclactnband, + vclx, + JvCoreD11R, + Jcl, + JclVcl, + JvSystemD11R, + JvMMD11R, + JvStdCtrlsD11R, + JvCtrlsD11R; + +contains + uFactuGES_App in 'uFactuGES_App.pas', + uIDataModuleUsuarios in 'Usuarios\Model\Data\uIDataModuleUsuarios.pas', + uDataModuleUsuarios in 'Usuarios\Data\uDataModuleUsuarios.pas', + uUCROConn in 'Usuarios\Data\uUCROConn.pas', + uUsuariosController in 'Usuarios\Controller\uUsuariosController.pas', + uBizEmpresasDatosBancarios in 'Empresas\Model\uBizEmpresasDatosBancarios.pas', + schEmpresasClient_Intf in 'Empresas\Model\schEmpresasClient_Intf.pas', + schEmpresasServer_Intf in 'Empresas\Model\schEmpresasServer_Intf.pas', + uBizEmpresas in 'Empresas\Model\uBizEmpresas.pas', + uIDataModuleEmpresas in 'Empresas\Model\Data\uIDataModuleEmpresas.pas', + uDataModuleEmpresas in 'Empresas\Data\uDataModuleEmpresas.pas', + uEmpresasController in 'Empresas\Controller\uEmpresasController.pas', + uDatosBancariosEmpresaController in 'Empresas\Controller\uDatosBancariosEmpresaController.pas', + uIEditorEmpresas in 'Empresas\Controller\View\uIEditorEmpresas.pas', + uIEditorDatosBancarioEmpresa in 'Empresas\Controller\View\uIEditorDatosBancarioEmpresa.pas', + uIEditorEmpresa in 'Empresas\Controller\View\uIEditorEmpresa.pas', + uViewEmpresa in 'Empresas\Views\uViewEmpresa.pas', + uEditorDatosBancariosEmpresa in 'Empresas\Views\uEditorDatosBancariosEmpresa.pas', + uEditorEmpresa in 'Empresas\Views\uEditorEmpresa.pas', + uEmpresasViewRegister in 'Empresas\Views\uEmpresasViewRegister.pas', + uViewDatosBancarios in 'Empresas\Views\uViewDatosBancarios.pas', + uUsuarios in 'Usuarios\Model\uUsuarios.pas', + schUsuariosServer_Intf in 'Usuarios\Model\schUsuariosServer_Intf.pas', + schUsuariosClient_Intf in 'Usuarios\Model\schUsuariosClient_Intf.pas', + uIEditorLogin in 'Usuarios\Controller\View\uIEditorLogin.pas', + uEditorLogin in 'Usuarios\Views\uEditorLogin.pas', + uUsuariosViewRegister in 'Usuarios\Views\uUsuariosViewRegister.pas'; + +end. diff --git a/Source/ApplicationBase/ApplicationBase.dproj b/Source/ApplicationBase/ApplicationBase.dproj new file mode 100644 index 00000000..04e4a093 --- /dev/null +++ b/Source/ApplicationBase/ApplicationBase.dproj @@ -0,0 +1,595 @@ + + + + {14a25028-ec1a-430c-ade3-13c264e9bac2} + ApplicationBase.dpk + Debug + AnyCPU + DCC32 + ..\..\Output\Debug\Cliente\ApplicationBase.bpl + + + 7.0 + False + False + 0 + .\ + .\ + .\ + ..\..\Output\Release\Cliente + ..\Lib + ..\Lib + ..\Lib + ..\Lib + ..\Lib + RELEASE + + + 7.0 + .\ + .\ + .\ + ..\..\Output\Debug\Cliente + ..\Lib + ..\Lib + ..\Lib + ..\Lib + ..\Lib + DEBUG + + + Delphi.Personality + Package + +FalseTrueFalseTrueFalseFalseTrueFalse1000FalseFalseFalseFalseFalse308212521.0.0.01.0.0.0 + VCL for the Web Design Package for CodeGear RAD Studio + CodeGear WebSnap Components + CodeGear SOAP Components + Microsoft Office XP Sample Automation Server Wrapper Components + Microsoft Office 2000 Sample Automation Server Wrapper Components + CodeGear C++Builder Office 2000 Servers Package + CodeGear C++Builder Office XP Servers Package + ApplicationBase.dpkFalse + + + + + MainSource + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Source/ApplicationBase/ApplicationBase.rc b/Source/ApplicationBase/ApplicationBase.rc new file mode 100644 index 00000000..153736af --- /dev/null +++ b/Source/ApplicationBase/ApplicationBase.rc @@ -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 diff --git a/Source/ApplicationBase/ApplicationBase.res b/Source/ApplicationBase/ApplicationBase.res new file mode 100644 index 00000000..8b251f31 Binary files /dev/null and b/Source/ApplicationBase/ApplicationBase.res differ diff --git a/Source/Modulos/Empresas/Controller/View/uIEditorDatosBancarioEmpresa.pas b/Source/ApplicationBase/Empresas/Controller/View/uIEditorDatosBancarioEmpresa.pas similarity index 100% rename from Source/Modulos/Empresas/Controller/View/uIEditorDatosBancarioEmpresa.pas rename to Source/ApplicationBase/Empresas/Controller/View/uIEditorDatosBancarioEmpresa.pas diff --git a/Source/Modulos/Empresas/Controller/View/uIEditorEmpresa.pas b/Source/ApplicationBase/Empresas/Controller/View/uIEditorEmpresa.pas similarity index 100% rename from Source/Modulos/Empresas/Controller/View/uIEditorEmpresa.pas rename to Source/ApplicationBase/Empresas/Controller/View/uIEditorEmpresa.pas diff --git a/Source/Modulos/Empresas/Controller/View/uIEditorEmpresas.pas b/Source/ApplicationBase/Empresas/Controller/View/uIEditorEmpresas.pas similarity index 100% rename from Source/Modulos/Empresas/Controller/View/uIEditorEmpresas.pas rename to Source/ApplicationBase/Empresas/Controller/View/uIEditorEmpresas.pas diff --git a/Source/ApplicationBase/Empresas/Controller/uDatosBancariosEmpresaController.pas b/Source/ApplicationBase/Empresas/Controller/uDatosBancariosEmpresaController.pas new file mode 100644 index 00000000..64e6b6a7 --- /dev/null +++ b/Source/ApplicationBase/Empresas/Controller/uDatosBancariosEmpresaController.pas @@ -0,0 +1,71 @@ +unit uDatosBancariosEmpresaController; + +interface + +uses + Windows, Forms, Classes, Controls, Contnrs, SysUtils, uDADataTable, + uBizEmpresas, uBizEmpresasDatosBancarios, uIDataModuleEmpresas; + +type + IDatosBancariosEmpresaController = interface + ['{E9B0313E-7B16-420A-B47E-20E42E96BAC6}'] + procedure Ver(ADatosBancarios : IBizEmpresasDatosBancarios); + end; + + TDatosBancariosEmpresaController = class(TInterfacedObject, IDatosBancariosEmpresaController) + private + FDataModule : IDataModuleEmpresas; + public + procedure Ver(ADatosBancarios : IBizEmpresasDatosBancarios); + constructor Create; virtual; + destructor Destroy; override; + end; + +implementation + +{ TDatosBancariosEmpresaController } + +uses + uDataModuleEmpresas, schEmpresasClient_Intf, uIEditorDatosBancarioEmpresa, + uEditorRegistryUtils, cxControls; + +constructor TDatosBancariosEmpresaController.Create; +begin + inherited; + FDataModule := TDataModuleEmpresas.Create(Nil); +end; + +destructor TDatosBancariosEmpresaController.Destroy; +begin + FDataModule := Nil; + inherited; +end; + +procedure TDatosBancariosEmpresaController.Ver( + ADatosBancarios : IBizEmpresasDatosBancarios); +var + AEditor : IEditorDatosBancariosEmpresa; +begin + AEditor := NIL; + ShowHourglassCursor; + try + CreateEditor('EditorDatosBancariosEmpresa', IEditorDatosBancariosEmpresa, AEditor); + with AEditor do + begin + DatosBancarios := ADatosBancarios; + Controller := Self; + end; + finally + HideHourglassCursor; + end; + + if Assigned(AEditor) then + try + AEditor.ShowModal; + AEditor.Release; + finally + AEditor := NIL; + end; +end; + +end. diff --git a/Source/Modulos/Empresas/Controller/uEmpresasController.pas b/Source/ApplicationBase/Empresas/Controller/uEmpresasController.pas similarity index 63% rename from Source/Modulos/Empresas/Controller/uEmpresasController.pas rename to Source/ApplicationBase/Empresas/Controller/uEmpresasController.pas index 5e8bc077..f38cb497 100644 --- a/Source/Modulos/Empresas/Controller/uEmpresasController.pas +++ b/Source/ApplicationBase/Empresas/Controller/uEmpresasController.pas @@ -5,10 +5,10 @@ interface uses Windows, Forms, Classes, Controls, Contnrs, SysUtils, - uBizEmpresas, uIDataModuleEmpresas, uDADataTable; + uBizEmpresas, uIDataModuleEmpresas, uDADataTable, uControllerBase; type - IEmpresasController = interface + IEmpresasController = interface(IControllerBase) ['{2F0AB21C-4F19-446E-87C4-B9C1038850FC}'] function Buscar(const ID: Integer): IBizEmpresa; function BuscarTodos: IBizEmpresa; @@ -24,13 +24,9 @@ type function ToStringList(AEmpresa : IBizEmpresa) : TStringList; end; - TEmpresasController = class(TInterfacedObject, IEmpresasController) + TEmpresasController = class(TControllerBase, IEmpresasController) protected FDataModule : IDataModuleEmpresas; - procedure AsignarID(AEmpresa: IBizEmpresa; - const IDNuevo : Integer); virtual; - procedure AsignarIDDetalles(AEmpresa: IBizEmpresa; - const IDCabecera : Integer; ADataTable : TDADataTable); function ValidarEmpresa(AEmpresa : IBizEmpresa): Boolean; virtual; public constructor Create; virtual; @@ -64,87 +60,6 @@ begin AEmpresa.Insert; end; -procedure TEmpresasController.AsignarID(AEmpresa: IBizEmpresa; - const IDNuevo: Integer); -var - AContador : Integer; -begin - if not Assigned(AEmpresa) then - raise Exception.Create ('Empresa no asignada'); - - { Los datos bancarios hay que comprobarlos siempre - tanto en inserción como en modificación. } - if Assigned(AEmpresa.DatosBancarios) then - AsignarIDDetalles(AEmpresa, IDNuevo, AEmpresa.DatosBancarios.DataTable); - - - if AEmpresa.EsNuevo then - begin - AEmpresa.Edit; - AEmpresa.ID := IDNuevo; - AEmpresa.Post; - end; -end; - -procedure TEmpresasController.AsignarIDDetalles(AEmpresa: IBizEmpresa; - const IDCabecera: Integer; ADataTable: TDADataTable); -var - AContador : Integer; -begin - if not ADataTable.Active then - ADataTable.Active := True; - - if AEmpresa.EsNuevo then - begin - { ¡¡¡¡ OJO !!!! - Para asignar el ID en los detalles hay - que tener en cuenta una cosa: - Si se cambia el ID, ese detalle ya no - pertenece AEmpresa esa cabecera porque ya no se - cumple la condición de la relacion: - Master.ID = Detail.ID_CONTACTO. - - Por esa razón no sirve hacer un recorrido - desde el principio hasta el final porque - las detalles van desapareciendo según asignamos - el valor al campo ID y nos mueve aleatoriamente - la posición del registro actual. - - Es mejor hacer un bucle sencillo hasta que - "se gasten" todos los detalles. Cuando el - RecordCount llegue AEmpresa 0 quiere decir que hemos - tratado todos los detalles. - } - while ADataTable.RecordCount > 0 do - begin - ADataTable.First; - ADataTable.Edit; - ADataTable.FieldByName('ID').AsInteger := FDataModule.GetNextID(ADataTable.LogicalName); - ADataTable.FieldByName('ID_EMPRESA').AsInteger := IDCabecera; - ADataTable.Post; - end; - end - else begin - { En este caso es un recorrido normal y corriente. } - ADataTable.First; - AContador := ADataTable.RecordCount; - - while (AContador > 0) do - begin - // ¿Es nuevo? - if (ADataTable.FieldByName('ID').AsInteger < 0) then - begin - ADataTable.Edit; - ADataTable.FieldByName('ID').AsInteger := FDataModule.GetNextID(ADataTable.LogicalName); - ADataTable.Post; - end; - AContador := AContador - 1; - ADataTable.Next; - end; - ADataTable.First; - end; -end; - function TEmpresasController.Buscar(const ID: Integer): IBizEmpresa; begin Result := FDataModule.GetItem(ID) @@ -229,8 +144,6 @@ begin end; function TEmpresasController.Guardar(AEmpresa: IBizEmpresa): Boolean; -var - NuevoID : Integer; begin Result := False; @@ -238,14 +151,7 @@ begin begin ShowHourglassCursor; try - if AEmpresa.EsNuevo then - NuevoID := FDataModule.GetNextID(AEmpresa.DataTable.LogicalName) - else - NuevoID := AEmpresa.ID; - - AsignarID(AEmpresa, NuevoID); AEmpresa.DataTable.ApplyUpdates; - Result := True; finally HideHourglassCursor; diff --git a/Source/ApplicationBase/Empresas/Data/uDataModuleEmpresas.dfm b/Source/ApplicationBase/Empresas/Data/uDataModuleEmpresas.dfm new file mode 100644 index 00000000..c0305bb9 --- /dev/null +++ b/Source/ApplicationBase/Empresas/Data/uDataModuleEmpresas.dfm @@ -0,0 +1,292 @@ +object DataModuleEmpresas: TDataModuleEmpresas + OldCreateOrder = True + OnCreate = DAClientDataModuleCreate + Height = 267 + Width = 402 + object RORemoteService: TRORemoteService + Message = dmConexion.ROMessage + Channel = dmConexion.ROChannel + ServiceName = 'srvEmpresas' + Left = 48 + Top = 24 + end + object rda_Empresas: TDARemoteDataAdapter + GetSchemaCall.RemoteService = RORemoteService + GetDataCall.RemoteService = RORemoteService + UpdateDataCall.RemoteService = RORemoteService + GetScriptsCall.RemoteService = RORemoteService + RemoteService = RORemoteService + DataStreamer = Bin2DataStreamer + Left = 176 + Top = 24 + end + object Bin2DataStreamer: TDABin2DataStreamer + Left = 48 + Top = 96 + end + object tbl_Empresas: TDAMemDataTable + RemoteUpdatesOptions = [] + Fields = < + item + Name = 'ID' + DataType = datAutoInc + GeneratorName = 'GEN_EMPRESAS_ID' + LogChanges = False + Required = True + ReadOnly = True + ServerAutoRefresh = True + DictionaryEntry = 'Empresas_ID' + InPrimaryKey = True + end + item + Name = 'NIF_CIF' + DataType = datString + Size = 15 + DisplayLabel = 'CIF' + DictionaryEntry = 'Empresas_NIF_CIF' + end + item + Name = 'NOMBRE' + DataType = datString + Size = 255 + DisplayLabel = 'Nombre' + DictionaryEntry = 'Empresas_NOMBRE' + end + item + Name = 'RAZON_SOCIAL' + DataType = datString + Size = 255 + DisplayLabel = 'Raz'#243'n Social' + DictionaryEntry = 'Empresas_RAZON_SOCIAL' + end + item + Name = 'CALLE' + DataType = datString + Size = 255 + DisplayLabel = 'Calle' + DictionaryEntry = 'Empresas_CALLE' + end + item + Name = 'POBLACION' + DataType = datString + Size = 255 + DisplayLabel = 'Poblaci'#243'n' + DictionaryEntry = 'Empresas_POBLACION' + end + item + Name = 'PROVINCIA' + DataType = datString + Size = 255 + DisplayLabel = 'Provincia' + DictionaryEntry = 'Empresas_PROVINCIA' + end + item + Name = 'CODIGO_POSTAL' + DataType = datString + Size = 10 + DisplayLabel = 'C'#243'd. postal' + DictionaryEntry = 'Empresas_CODIGO_POSTAL' + end + item + Name = 'TELEFONO_1' + DataType = datString + Size = 25 + DisplayLabel = 'Tel'#233'fono 1' + DictionaryEntry = 'Empresas_TELEFONO_1' + end + item + Name = 'TELEFONO_2' + DataType = datString + Size = 25 + DisplayLabel = 'Tel'#233'fono 2' + DictionaryEntry = 'Empresas_TELEFONO_2' + end + item + Name = 'MOVIL_1' + DataType = datString + Size = 25 + DisplayLabel = 'M'#243'vil 1' + DictionaryEntry = 'Empresas_MOVIL_1' + end + item + Name = 'MOVIL_2' + DataType = datString + Size = 25 + DisplayLabel = 'M'#243'vil 2' + DictionaryEntry = 'Empresas_MOVIL_2' + end + item + Name = 'FAX' + DataType = datString + Size = 25 + DisplayLabel = 'Fax' + DictionaryEntry = 'Empresas_FAX' + end + item + Name = 'EMAIL_1' + DataType = datString + Size = 255 + DisplayLabel = 'E-mail 1' + DictionaryEntry = 'Empresas_EMAIL_1' + end + item + Name = 'EMAIL_2' + DataType = datString + Size = 255 + DisplayLabel = 'E-mail 2' + DictionaryEntry = 'Empresas_EMAIL_2' + end + item + Name = 'PAGINA_WEB' + DataType = datString + Size = 255 + DisplayLabel = 'P'#225'gina web' + DictionaryEntry = 'Empresas_PAGINA_WEB' + end + item + Name = 'NOTAS' + DataType = datMemo + DisplayLabel = 'Notas' + DictionaryEntry = 'Empresas_NOTAS' + end + item + Name = 'FECHA_ALTA' + DataType = datDateTime + DisplayLabel = 'Empresas_FECHA_ALTA' + DictionaryEntry = 'Empresas_FECHA_ALTA' + end + item + Name = 'FECHA_MODIFICACION' + DataType = datDateTime + DisplayLabel = 'Empresas_FECHA_MODIFICACION' + DictionaryEntry = 'Empresas_FECHA_MODIFICACION' + end + item + Name = 'USUARIO' + DataType = datString + Size = 20 + DisplayLabel = 'Empresas_USUARIO' + DictionaryEntry = 'Empresas_USUARIO' + end + item + Name = 'LOGOTIPO' + DataType = datBlob + BlobType = dabtBlob + DisplayLabel = 'Logotipo' + DictionaryEntry = 'Empresas_LOGOTIPO' + end + item + Name = 'REGISTRO_MERCANTIL' + DataType = datString + Size = 255 + DisplayLabel = 'Registro mercantil' + DictionaryEntry = 'Empresas_REGISTRO_MERCANTIL' + end + item + Name = 'IVA' + DataType = datFloat + DictionaryEntry = 'Empresas_IVA' + end> + Params = <> + StreamingOptions = [soDisableEventsWhileStreaming] + RemoteDataAdapter = rda_Empresas + DetailOptions = [dtCascadeOpenClose, dtCascadeApplyUpdates, dtAutoFetch, dtCascadeDelete, dtCascadeUpdate, dtDisableLogOfCascadeDeletes, dtDisableLogOfCascadeUpdates, dtIncludeInAllInOneFetch] + MasterOptions = [moCascadeOpenClose, moCascadeApplyUpdates, moCascadeDelete, moCascadeUpdate, moDisableLogOfCascadeDeletes, moDisableLogOfCascadeUpdates] + LogicalName = 'Empresas' + Left = 176 + Top = 96 + end + object ds_Empresas: TDADataSource + DataSet = tbl_Empresas.Dataset + DataTable = tbl_Empresas + Left = 176 + Top = 168 + end + object tbl_EmpresasDatosBanco: TDAMemDataTable + RemoteUpdatesOptions = [] + Fields = < + item + Name = 'ID' + DataType = datAutoInc + GeneratorName = 'GEN_EMPRESAS_DATOS_BANCO_ID' + LogChanges = False + Required = True + ReadOnly = True + ServerAutoRefresh = True + DictionaryEntry = 'EmpresasDatosBanco_ID' + InPrimaryKey = True + end + item + Name = 'ID_EMPRESA' + DataType = datInteger + DisplayLabel = 'EmpresasDatosBanco_ID_EMPRESA' + DictionaryEntry = 'EmpresasDatosBanco_ID_EMPRESA' + end + item + Name = 'NOMBRE' + DataType = datString + Size = 255 + DisplayLabel = 'Nombre del banco' + DictionaryEntry = 'EmpresasDatosBanco_NOMBRE' + end + item + Name = 'ENTIDAD' + DataType = datString + Size = 15 + DisplayLabel = 'Entidad' + DictionaryEntry = 'EmpresasDatosBanco_ENTIDAD' + end + item + Name = 'SUCURSAL' + DataType = datString + Size = 15 + DisplayLabel = 'Sucursal' + DictionaryEntry = 'EmpresasDatosBanco_SUCURSAL' + end + item + Name = 'DC' + DataType = datString + Size = 15 + DictionaryEntry = 'EmpresasDatosBanco_DC' + end + item + Name = 'CUENTA' + DataType = datString + Size = 15 + DisplayLabel = 'Cuenta' + DictionaryEntry = 'EmpresasDatosBanco_CUENTA' + end + item + Name = 'SUFIJO_N19' + DataType = datString + Size = 3 + DisplayLabel = 'Sufijo 19' + DictionaryEntry = 'EmpresasDatosBanco_SUFIJO_N19' + end + item + Name = 'SUFIJO_N58' + DataType = datString + Size = 3 + DisplayLabel = 'Sufijo 58' + DictionaryEntry = 'EmpresasDatosBanco_SUFIJO_N58' + end> + Params = <> + MasterMappingMode = mmWhere + StreamingOptions = [soDisableEventsWhileStreaming] + RemoteDataAdapter = rda_Empresas + MasterSource = ds_Empresas + MasterFields = 'ID' + DetailFields = 'ID_EMPRESA' + DetailOptions = [dtCascadeOpenClose, dtCascadeApplyUpdates, dtAutoFetch, dtCascadeDelete, dtCascadeUpdate, dtDisableLogOfCascadeDeletes, dtDisableLogOfCascadeUpdates, dtIncludeInAllInOneFetch] + MasterOptions = [moCascadeOpenClose, moCascadeApplyUpdates, moCascadeDelete, moCascadeUpdate, moDisableLogOfCascadeDeletes, moDisableLogOfCascadeUpdates] + LogicalName = 'EmpresasDatosBanco' + Left = 288 + Top = 96 + end + object ds_EmpresasDatosBanco: TDADataSource + DataSet = tbl_EmpresasDatosBanco.Dataset + DataTable = tbl_EmpresasDatosBanco + Left = 288 + Top = 168 + end +end diff --git a/Source/Modulos/Empresas/Data/uDataModuleEmpresas.pas b/Source/ApplicationBase/Empresas/Data/uDataModuleEmpresas.pas similarity index 51% rename from Source/Modulos/Empresas/Data/uDataModuleEmpresas.pas rename to Source/ApplicationBase/Empresas/Data/uDataModuleEmpresas.pas index 26dfab8c..87ab37d2 100644 --- a/Source/Modulos/Empresas/Data/uDataModuleEmpresas.pas +++ b/Source/ApplicationBase/Empresas/Data/uDataModuleEmpresas.pas @@ -3,32 +3,29 @@ unit uDataModuleEmpresas; interface uses {vcl:} SysUtils, Classes, DB, DBClient, - {RemObjects:} uDAClientDataModule, uDADataTable, uDAScriptingProvider, - uDACDSDataTable, uDABINAdapter, uROServiceComponent, uRORemoteService, + {RemObjects:} uDADataTable, uDAScriptingProvider, + uDACDSDataTable, uDABINAdapter, uRORemoteService, uROClient, uROBinMessage, uROWinInetHttpChannel, uDADesigntimeCall, - uIDataModuleEmpresas, uBizEmpresas, uBizEmpresasDatosBancarios; + uIDataModuleEmpresas, uBizEmpresas, uBizEmpresasDatosBancarios, + uDARemoteDataAdapter, uDADataStreamer, uRODynamicRequest, uDAInterfaces, + uDAMemDataTable, uDABin2DataStreamer, uIntegerListUtils; type - TDataModuleEmpresas = class(TDAClientDataModule, IDataModuleEmpresas) + TDataModuleEmpresas = class(TDataModule, IDataModuleEmpresas) RORemoteService: TRORemoteService; - DABinAdapter: TDABINAdapter; - tbl_Empresas: TDACDSDataTable; + rda_Empresas: TDARemoteDataAdapter; + Bin2DataStreamer: TDABin2DataStreamer; + tbl_Empresas: TDAMemDataTable; ds_Empresas: TDADataSource; - DADesigntimeCall1: TDADesigntimeCall; - LoginRemoteService: TRORemoteService; - ROChannel: TROWinInetHTTPChannel; - ROMessage: TROBinMessage; - tbl_EmpresasDatosBanco: TDACDSDataTable; + tbl_EmpresasDatosBanco: TDAMemDataTable; ds_EmpresasDatosBanco: TDADataSource; procedure DAClientDataModuleCreate(Sender: TObject); private - function _CloneDataTable (const ADataTable : TDACDSDataTable): TDACDSDataTable; function _GetDatosBancarios : IBizEmpresasDatosBancarios; public function GetItem(const ID : Integer) : IBizEmpresa; function NewItem : IBizEmpresa; function GetItems : IBizEmpresa; - function GetNextID(const DataSetName : String) : Integer; end; @@ -37,7 +34,7 @@ implementation {$R *.DFM} uses - uDataModuleConexion, uDataTableUtils, uDAInterfaces, + uDataModuleConexion, uDataTableUtils, FactuGES_Intf, schEmpresasClient_Intf, cxControls; procedure TDataModuleEmpresas.DAClientDataModuleCreate(Sender: TObject); @@ -51,13 +48,13 @@ begin ShowHourglassCursor; try Result := Self.GetItems; - with Result.DataTable.Where do + + with Result.DataTable.DynamicWhere do begin - if NotEmpty then - AddOperator(opAND); - OpenBraket; - AddText('EMPRESAS.' + fld_EmpresasID + ' = ' + IntToStr(ID)); - CloseBraket; + Clear; + // (ID = :ID) + Expression := NewBinaryExpression(NewField('', fld_EmpresasID), + NewConstant(ID, datInteger), dboEqual); end; finally HideHourglassCursor; @@ -66,11 +63,11 @@ end; function TDataModuleEmpresas.GetItems: IBizEmpresa; var - AEmpresa : TDACDSDataTable; + AEmpresa : TDAMemDataTable; begin ShowHourglassCursor; try - AEmpresa := _CloneDataTable(tbl_Empresas); + AEmpresa := CloneDataTable(tbl_Empresas); AEmpresa.BusinessRulesID := BIZ_CLIENT_EMPRESA; with TBizEmpresa(AEmpresa.BusinessEventsObj) do @@ -84,43 +81,18 @@ begin end; end; -function TDataModuleEmpresas.GetNextID(const DataSetName: String): Integer; -var - aGeneratorName : String; -begin - if DataSetName = nme_Empresas then - aGeneratorName := 'GEN_EMPRESAS_ID'; - - if DataSetName = nme_EmpresasDatosBanco then - aGeneratorName := 'GEN_EMPRESAS_DATOS_BANCO_ID'; - - Result := (RORemoteService as IsrvEmpresas).GetNextAutoInc(aGeneratorName) -end; - function TDataModuleEmpresas.NewItem: IBizEmpresa; begin Result := GetItem(ID_NULO) end; -function TDataModuleEmpresas._CloneDataTable( - const ADataTable: TDACDSDataTable): TDACDSDataTable; -begin - Result := NIL; - - if not Assigned(ADataTable) then - raise Exception.Create ('No se ha asignado la tabla de origen (CloneDataTable)'); - - Result := TDACDSDataTable.Create(NIL); - CloneDataTable(ADataTable, Result); -end; - function TDataModuleEmpresas._GetDatosBancarios: IBizEmpresasDatosBancarios; var - ADatosBancarios : TDACDSDataTable; + ADatosBancarios : TDAMemDataTable; begin ShowHourglassCursor; try - ADatosBancarios := _CloneDataTable(tbl_EmpresasDatosBanco); + ADatosBancarios := CloneDataTable(tbl_EmpresasDatosBanco); with ADatosBancarios do begin BusinessRulesID := BIZ_CLIENT_EMPRESAS_DATOS_BANCARIOS; @@ -131,6 +103,7 @@ begin finally HideHourglassCursor; end; + end; initialization diff --git a/Source/Modulos/Empresas/Model/Data/uIDataModuleEmpresas.pas b/Source/ApplicationBase/Empresas/Model/Data/uIDataModuleEmpresas.pas similarity index 79% rename from Source/Modulos/Empresas/Model/Data/uIDataModuleEmpresas.pas rename to Source/ApplicationBase/Empresas/Model/Data/uIDataModuleEmpresas.pas index 628a7bef..e87571fa 100644 --- a/Source/Modulos/Empresas/Model/Data/uIDataModuleEmpresas.pas +++ b/Source/ApplicationBase/Empresas/Model/Data/uIDataModuleEmpresas.pas @@ -12,7 +12,6 @@ type function GetItem(const ID : Integer) : IBizEmpresa; function NewItem : IBizEmpresa; function GetItems : IBizEmpresa; - function GetNextID(const DataSetName : String) : Integer; end; implementation diff --git a/Source/ApplicationBase/Empresas/Model/schEmpresasClient_Intf.pas b/Source/ApplicationBase/Empresas/Model/schEmpresasClient_Intf.pas new file mode 100644 index 00000000..e75719a7 --- /dev/null +++ b/Source/ApplicationBase/Empresas/Model/schEmpresasClient_Intf.pas @@ -0,0 +1,1243 @@ +unit schEmpresasClient_Intf; + +interface + +uses + Classes, DB, SysUtils, uROClasses, uDADataTable, FmtBCD, uROXMLIntf; + +const + { Data table rules ids + Feel free to change them to something more human readable + but make sure they are unique in the context of your application } + RID_Empresas = '{339ECEE2-0E9D-4AFD-9CCF-7991FCAFFC44}'; + RID_EmpresasDatosBanco = '{97535864-08DF-42D3-9334-2009E15B6DE5}'; + + { Data table names } + nme_Empresas = 'Empresas'; + nme_EmpresasDatosBanco = 'EmpresasDatosBanco'; + + { Empresas fields } + fld_EmpresasID = 'ID'; + fld_EmpresasNIF_CIF = 'NIF_CIF'; + fld_EmpresasNOMBRE = 'NOMBRE'; + fld_EmpresasRAZON_SOCIAL = 'RAZON_SOCIAL'; + fld_EmpresasCALLE = 'CALLE'; + fld_EmpresasPOBLACION = 'POBLACION'; + fld_EmpresasPROVINCIA = 'PROVINCIA'; + fld_EmpresasCODIGO_POSTAL = 'CODIGO_POSTAL'; + fld_EmpresasTELEFONO_1 = 'TELEFONO_1'; + fld_EmpresasTELEFONO_2 = 'TELEFONO_2'; + fld_EmpresasMOVIL_1 = 'MOVIL_1'; + fld_EmpresasMOVIL_2 = 'MOVIL_2'; + fld_EmpresasFAX = 'FAX'; + fld_EmpresasEMAIL_1 = 'EMAIL_1'; + fld_EmpresasEMAIL_2 = 'EMAIL_2'; + fld_EmpresasPAGINA_WEB = 'PAGINA_WEB'; + fld_EmpresasNOTAS = 'NOTAS'; + fld_EmpresasFECHA_ALTA = 'FECHA_ALTA'; + fld_EmpresasFECHA_MODIFICACION = 'FECHA_MODIFICACION'; + fld_EmpresasUSUARIO = 'USUARIO'; + fld_EmpresasLOGOTIPO = 'LOGOTIPO'; + fld_EmpresasREGISTRO_MERCANTIL = 'REGISTRO_MERCANTIL'; + fld_EmpresasIVA = 'IVA'; + + { Empresas field indexes } + idx_EmpresasID = 0; + idx_EmpresasNIF_CIF = 1; + idx_EmpresasNOMBRE = 2; + idx_EmpresasRAZON_SOCIAL = 3; + idx_EmpresasCALLE = 4; + idx_EmpresasPOBLACION = 5; + idx_EmpresasPROVINCIA = 6; + idx_EmpresasCODIGO_POSTAL = 7; + idx_EmpresasTELEFONO_1 = 8; + idx_EmpresasTELEFONO_2 = 9; + idx_EmpresasMOVIL_1 = 10; + idx_EmpresasMOVIL_2 = 11; + idx_EmpresasFAX = 12; + idx_EmpresasEMAIL_1 = 13; + idx_EmpresasEMAIL_2 = 14; + idx_EmpresasPAGINA_WEB = 15; + idx_EmpresasNOTAS = 16; + idx_EmpresasFECHA_ALTA = 17; + idx_EmpresasFECHA_MODIFICACION = 18; + idx_EmpresasUSUARIO = 19; + idx_EmpresasLOGOTIPO = 20; + idx_EmpresasREGISTRO_MERCANTIL = 21; + idx_EmpresasIVA = 22; + + { EmpresasDatosBanco fields } + fld_EmpresasDatosBancoID = 'ID'; + fld_EmpresasDatosBancoID_EMPRESA = 'ID_EMPRESA'; + fld_EmpresasDatosBancoNOMBRE = 'NOMBRE'; + fld_EmpresasDatosBancoENTIDAD = 'ENTIDAD'; + fld_EmpresasDatosBancoSUCURSAL = 'SUCURSAL'; + fld_EmpresasDatosBancoDC = 'DC'; + fld_EmpresasDatosBancoCUENTA = 'CUENTA'; + fld_EmpresasDatosBancoSUFIJO_N19 = 'SUFIJO_N19'; + fld_EmpresasDatosBancoSUFIJO_N58 = 'SUFIJO_N58'; + + { EmpresasDatosBanco field indexes } + idx_EmpresasDatosBancoID = 0; + idx_EmpresasDatosBancoID_EMPRESA = 1; + idx_EmpresasDatosBancoNOMBRE = 2; + idx_EmpresasDatosBancoENTIDAD = 3; + idx_EmpresasDatosBancoSUCURSAL = 4; + idx_EmpresasDatosBancoDC = 5; + idx_EmpresasDatosBancoCUENTA = 6; + idx_EmpresasDatosBancoSUFIJO_N19 = 7; + idx_EmpresasDatosBancoSUFIJO_N58 = 8; + +type + { IEmpresas } + IEmpresas = interface(IDAStronglyTypedDataTable) + ['{96DF5DB9-5264-4B33-BC6D-F6A8119C40F2}'] + { Property getters and setters } + function GetIDValue: Integer; + procedure SetIDValue(const aValue: Integer); + function GetIDIsNull: Boolean; + procedure SetIDIsNull(const aValue: Boolean); + function GetNIF_CIFValue: String; + procedure SetNIF_CIFValue(const aValue: String); + function GetNIF_CIFIsNull: Boolean; + procedure SetNIF_CIFIsNull(const aValue: Boolean); + function GetNOMBREValue: String; + procedure SetNOMBREValue(const aValue: String); + function GetNOMBREIsNull: Boolean; + procedure SetNOMBREIsNull(const aValue: Boolean); + function GetRAZON_SOCIALValue: String; + procedure SetRAZON_SOCIALValue(const aValue: String); + function GetRAZON_SOCIALIsNull: Boolean; + procedure SetRAZON_SOCIALIsNull(const aValue: Boolean); + function GetCALLEValue: String; + procedure SetCALLEValue(const aValue: String); + function GetCALLEIsNull: Boolean; + procedure SetCALLEIsNull(const aValue: Boolean); + function GetPOBLACIONValue: String; + procedure SetPOBLACIONValue(const aValue: String); + function GetPOBLACIONIsNull: Boolean; + procedure SetPOBLACIONIsNull(const aValue: Boolean); + function GetPROVINCIAValue: String; + procedure SetPROVINCIAValue(const aValue: String); + function GetPROVINCIAIsNull: Boolean; + procedure SetPROVINCIAIsNull(const aValue: Boolean); + function GetCODIGO_POSTALValue: String; + procedure SetCODIGO_POSTALValue(const aValue: String); + function GetCODIGO_POSTALIsNull: Boolean; + procedure SetCODIGO_POSTALIsNull(const aValue: Boolean); + function GetTELEFONO_1Value: String; + procedure SetTELEFONO_1Value(const aValue: String); + function GetTELEFONO_1IsNull: Boolean; + procedure SetTELEFONO_1IsNull(const aValue: Boolean); + function GetTELEFONO_2Value: String; + procedure SetTELEFONO_2Value(const aValue: String); + function GetTELEFONO_2IsNull: Boolean; + procedure SetTELEFONO_2IsNull(const aValue: Boolean); + function GetMOVIL_1Value: String; + procedure SetMOVIL_1Value(const aValue: String); + function GetMOVIL_1IsNull: Boolean; + procedure SetMOVIL_1IsNull(const aValue: Boolean); + function GetMOVIL_2Value: String; + procedure SetMOVIL_2Value(const aValue: String); + function GetMOVIL_2IsNull: Boolean; + procedure SetMOVIL_2IsNull(const aValue: Boolean); + function GetFAXValue: String; + procedure SetFAXValue(const aValue: String); + function GetFAXIsNull: Boolean; + procedure SetFAXIsNull(const aValue: Boolean); + function GetEMAIL_1Value: String; + procedure SetEMAIL_1Value(const aValue: String); + function GetEMAIL_1IsNull: Boolean; + procedure SetEMAIL_1IsNull(const aValue: Boolean); + function GetEMAIL_2Value: String; + procedure SetEMAIL_2Value(const aValue: String); + function GetEMAIL_2IsNull: Boolean; + procedure SetEMAIL_2IsNull(const aValue: Boolean); + function GetPAGINA_WEBValue: String; + procedure SetPAGINA_WEBValue(const aValue: String); + function GetPAGINA_WEBIsNull: Boolean; + procedure SetPAGINA_WEBIsNull(const aValue: Boolean); + function GetNOTASValue: IROStrings; + function GetNOTASIsNull: Boolean; + procedure SetNOTASIsNull(const aValue: Boolean); + function GetFECHA_ALTAValue: DateTime; + procedure SetFECHA_ALTAValue(const aValue: DateTime); + function GetFECHA_ALTAIsNull: Boolean; + procedure SetFECHA_ALTAIsNull(const aValue: Boolean); + function GetFECHA_MODIFICACIONValue: DateTime; + procedure SetFECHA_MODIFICACIONValue(const aValue: DateTime); + function GetFECHA_MODIFICACIONIsNull: Boolean; + procedure SetFECHA_MODIFICACIONIsNull(const aValue: Boolean); + function GetUSUARIOValue: String; + procedure SetUSUARIOValue(const aValue: String); + function GetUSUARIOIsNull: Boolean; + procedure SetUSUARIOIsNull(const aValue: Boolean); + function GetLOGOTIPOValue: IROStream; + function GetLOGOTIPOIsNull: Boolean; + procedure SetLOGOTIPOIsNull(const aValue: Boolean); + function GetREGISTRO_MERCANTILValue: String; + procedure SetREGISTRO_MERCANTILValue(const aValue: String); + function GetREGISTRO_MERCANTILIsNull: Boolean; + procedure SetREGISTRO_MERCANTILIsNull(const aValue: Boolean); + function GetIVAValue: Float; + procedure SetIVAValue(const aValue: Float); + function GetIVAIsNull: Boolean; + procedure SetIVAIsNull(const aValue: Boolean); + + + { Properties } + property ID: Integer read GetIDValue write SetIDValue; + property IDIsNull: Boolean read GetIDIsNull write SetIDIsNull; + property NIF_CIF: String read GetNIF_CIFValue write SetNIF_CIFValue; + property NIF_CIFIsNull: Boolean read GetNIF_CIFIsNull write SetNIF_CIFIsNull; + property NOMBRE: String read GetNOMBREValue write SetNOMBREValue; + property NOMBREIsNull: Boolean read GetNOMBREIsNull write SetNOMBREIsNull; + property RAZON_SOCIAL: String read GetRAZON_SOCIALValue write SetRAZON_SOCIALValue; + property RAZON_SOCIALIsNull: Boolean read GetRAZON_SOCIALIsNull write SetRAZON_SOCIALIsNull; + property CALLE: String read GetCALLEValue write SetCALLEValue; + property CALLEIsNull: Boolean read GetCALLEIsNull write SetCALLEIsNull; + property POBLACION: String read GetPOBLACIONValue write SetPOBLACIONValue; + property POBLACIONIsNull: Boolean read GetPOBLACIONIsNull write SetPOBLACIONIsNull; + property PROVINCIA: String read GetPROVINCIAValue write SetPROVINCIAValue; + property PROVINCIAIsNull: Boolean read GetPROVINCIAIsNull write SetPROVINCIAIsNull; + property CODIGO_POSTAL: String read GetCODIGO_POSTALValue write SetCODIGO_POSTALValue; + property CODIGO_POSTALIsNull: Boolean read GetCODIGO_POSTALIsNull write SetCODIGO_POSTALIsNull; + property TELEFONO_1: String read GetTELEFONO_1Value write SetTELEFONO_1Value; + property TELEFONO_1IsNull: Boolean read GetTELEFONO_1IsNull write SetTELEFONO_1IsNull; + property TELEFONO_2: String read GetTELEFONO_2Value write SetTELEFONO_2Value; + property TELEFONO_2IsNull: Boolean read GetTELEFONO_2IsNull write SetTELEFONO_2IsNull; + property MOVIL_1: String read GetMOVIL_1Value write SetMOVIL_1Value; + property MOVIL_1IsNull: Boolean read GetMOVIL_1IsNull write SetMOVIL_1IsNull; + property MOVIL_2: String read GetMOVIL_2Value write SetMOVIL_2Value; + property MOVIL_2IsNull: Boolean read GetMOVIL_2IsNull write SetMOVIL_2IsNull; + property FAX: String read GetFAXValue write SetFAXValue; + property FAXIsNull: Boolean read GetFAXIsNull write SetFAXIsNull; + property EMAIL_1: String read GetEMAIL_1Value write SetEMAIL_1Value; + property EMAIL_1IsNull: Boolean read GetEMAIL_1IsNull write SetEMAIL_1IsNull; + property EMAIL_2: String read GetEMAIL_2Value write SetEMAIL_2Value; + property EMAIL_2IsNull: Boolean read GetEMAIL_2IsNull write SetEMAIL_2IsNull; + property PAGINA_WEB: String read GetPAGINA_WEBValue write SetPAGINA_WEBValue; + property PAGINA_WEBIsNull: Boolean read GetPAGINA_WEBIsNull write SetPAGINA_WEBIsNull; + property NOTAS: IROStrings read GetNOTASValue; + property NOTASIsNull: Boolean read GetNOTASIsNull write SetNOTASIsNull; + property FECHA_ALTA: DateTime read GetFECHA_ALTAValue write SetFECHA_ALTAValue; + property FECHA_ALTAIsNull: Boolean read GetFECHA_ALTAIsNull write SetFECHA_ALTAIsNull; + property FECHA_MODIFICACION: DateTime read GetFECHA_MODIFICACIONValue write SetFECHA_MODIFICACIONValue; + property FECHA_MODIFICACIONIsNull: Boolean read GetFECHA_MODIFICACIONIsNull write SetFECHA_MODIFICACIONIsNull; + property USUARIO: String read GetUSUARIOValue write SetUSUARIOValue; + property USUARIOIsNull: Boolean read GetUSUARIOIsNull write SetUSUARIOIsNull; + property LOGOTIPO: IROStream read GetLOGOTIPOValue; + property LOGOTIPOIsNull: Boolean read GetLOGOTIPOIsNull write SetLOGOTIPOIsNull; + property REGISTRO_MERCANTIL: String read GetREGISTRO_MERCANTILValue write SetREGISTRO_MERCANTILValue; + property REGISTRO_MERCANTILIsNull: Boolean read GetREGISTRO_MERCANTILIsNull write SetREGISTRO_MERCANTILIsNull; + property IVA: Float read GetIVAValue write SetIVAValue; + property IVAIsNull: Boolean read GetIVAIsNull write SetIVAIsNull; + end; + + { TEmpresasDataTableRules } + TEmpresasDataTableRules = class(TDADataTableRules, IEmpresas) + private + f_NOTAS: IROStrings; + f_LOGOTIPO: IROStream; + procedure NOTAS_OnChange(Sender: TObject); + procedure LOGOTIPO_OnChange(Sender: TObject); + protected + { Property getters and setters } + function GetIDValue: Integer; virtual; + procedure SetIDValue(const aValue: Integer); virtual; + function GetIDIsNull: Boolean; virtual; + procedure SetIDIsNull(const aValue: Boolean); virtual; + function GetNIF_CIFValue: String; virtual; + procedure SetNIF_CIFValue(const aValue: String); virtual; + function GetNIF_CIFIsNull: Boolean; virtual; + procedure SetNIF_CIFIsNull(const aValue: Boolean); virtual; + function GetNOMBREValue: String; virtual; + procedure SetNOMBREValue(const aValue: String); virtual; + function GetNOMBREIsNull: Boolean; virtual; + procedure SetNOMBREIsNull(const aValue: Boolean); virtual; + function GetRAZON_SOCIALValue: String; virtual; + procedure SetRAZON_SOCIALValue(const aValue: String); virtual; + function GetRAZON_SOCIALIsNull: Boolean; virtual; + procedure SetRAZON_SOCIALIsNull(const aValue: Boolean); virtual; + function GetCALLEValue: String; virtual; + procedure SetCALLEValue(const aValue: String); virtual; + function GetCALLEIsNull: Boolean; virtual; + procedure SetCALLEIsNull(const aValue: Boolean); virtual; + function GetPOBLACIONValue: String; virtual; + procedure SetPOBLACIONValue(const aValue: String); virtual; + function GetPOBLACIONIsNull: Boolean; virtual; + procedure SetPOBLACIONIsNull(const aValue: Boolean); virtual; + function GetPROVINCIAValue: String; virtual; + procedure SetPROVINCIAValue(const aValue: String); virtual; + function GetPROVINCIAIsNull: Boolean; virtual; + procedure SetPROVINCIAIsNull(const aValue: Boolean); virtual; + function GetCODIGO_POSTALValue: String; virtual; + procedure SetCODIGO_POSTALValue(const aValue: String); virtual; + function GetCODIGO_POSTALIsNull: Boolean; virtual; + procedure SetCODIGO_POSTALIsNull(const aValue: Boolean); virtual; + function GetTELEFONO_1Value: String; virtual; + procedure SetTELEFONO_1Value(const aValue: String); virtual; + function GetTELEFONO_1IsNull: Boolean; virtual; + procedure SetTELEFONO_1IsNull(const aValue: Boolean); virtual; + function GetTELEFONO_2Value: String; virtual; + procedure SetTELEFONO_2Value(const aValue: String); virtual; + function GetTELEFONO_2IsNull: Boolean; virtual; + procedure SetTELEFONO_2IsNull(const aValue: Boolean); virtual; + function GetMOVIL_1Value: String; virtual; + procedure SetMOVIL_1Value(const aValue: String); virtual; + function GetMOVIL_1IsNull: Boolean; virtual; + procedure SetMOVIL_1IsNull(const aValue: Boolean); virtual; + function GetMOVIL_2Value: String; virtual; + procedure SetMOVIL_2Value(const aValue: String); virtual; + function GetMOVIL_2IsNull: Boolean; virtual; + procedure SetMOVIL_2IsNull(const aValue: Boolean); virtual; + function GetFAXValue: String; virtual; + procedure SetFAXValue(const aValue: String); virtual; + function GetFAXIsNull: Boolean; virtual; + procedure SetFAXIsNull(const aValue: Boolean); virtual; + function GetEMAIL_1Value: String; virtual; + procedure SetEMAIL_1Value(const aValue: String); virtual; + function GetEMAIL_1IsNull: Boolean; virtual; + procedure SetEMAIL_1IsNull(const aValue: Boolean); virtual; + function GetEMAIL_2Value: String; virtual; + procedure SetEMAIL_2Value(const aValue: String); virtual; + function GetEMAIL_2IsNull: Boolean; virtual; + procedure SetEMAIL_2IsNull(const aValue: Boolean); virtual; + function GetPAGINA_WEBValue: String; virtual; + procedure SetPAGINA_WEBValue(const aValue: String); virtual; + function GetPAGINA_WEBIsNull: Boolean; virtual; + procedure SetPAGINA_WEBIsNull(const aValue: Boolean); virtual; + function GetNOTASValue: IROStrings; virtual; + function GetNOTASIsNull: Boolean; virtual; + procedure SetNOTASIsNull(const aValue: Boolean); virtual; + function GetFECHA_ALTAValue: DateTime; virtual; + procedure SetFECHA_ALTAValue(const aValue: DateTime); virtual; + function GetFECHA_ALTAIsNull: Boolean; virtual; + procedure SetFECHA_ALTAIsNull(const aValue: Boolean); virtual; + function GetFECHA_MODIFICACIONValue: DateTime; virtual; + procedure SetFECHA_MODIFICACIONValue(const aValue: DateTime); virtual; + function GetFECHA_MODIFICACIONIsNull: Boolean; virtual; + procedure SetFECHA_MODIFICACIONIsNull(const aValue: Boolean); virtual; + function GetUSUARIOValue: String; virtual; + procedure SetUSUARIOValue(const aValue: String); virtual; + function GetUSUARIOIsNull: Boolean; virtual; + procedure SetUSUARIOIsNull(const aValue: Boolean); virtual; + function GetLOGOTIPOValue: IROStream; virtual; + function GetLOGOTIPOIsNull: Boolean; virtual; + procedure SetLOGOTIPOIsNull(const aValue: Boolean); virtual; + function GetREGISTRO_MERCANTILValue: String; virtual; + procedure SetREGISTRO_MERCANTILValue(const aValue: String); virtual; + function GetREGISTRO_MERCANTILIsNull: Boolean; virtual; + procedure SetREGISTRO_MERCANTILIsNull(const aValue: Boolean); virtual; + function GetIVAValue: Float; virtual; + procedure SetIVAValue(const aValue: Float); virtual; + function GetIVAIsNull: Boolean; virtual; + procedure SetIVAIsNull(const aValue: Boolean); virtual; + + { Properties } + property ID: Integer read GetIDValue write SetIDValue; + property IDIsNull: Boolean read GetIDIsNull write SetIDIsNull; + property NIF_CIF: String read GetNIF_CIFValue write SetNIF_CIFValue; + property NIF_CIFIsNull: Boolean read GetNIF_CIFIsNull write SetNIF_CIFIsNull; + property NOMBRE: String read GetNOMBREValue write SetNOMBREValue; + property NOMBREIsNull: Boolean read GetNOMBREIsNull write SetNOMBREIsNull; + property RAZON_SOCIAL: String read GetRAZON_SOCIALValue write SetRAZON_SOCIALValue; + property RAZON_SOCIALIsNull: Boolean read GetRAZON_SOCIALIsNull write SetRAZON_SOCIALIsNull; + property CALLE: String read GetCALLEValue write SetCALLEValue; + property CALLEIsNull: Boolean read GetCALLEIsNull write SetCALLEIsNull; + property POBLACION: String read GetPOBLACIONValue write SetPOBLACIONValue; + property POBLACIONIsNull: Boolean read GetPOBLACIONIsNull write SetPOBLACIONIsNull; + property PROVINCIA: String read GetPROVINCIAValue write SetPROVINCIAValue; + property PROVINCIAIsNull: Boolean read GetPROVINCIAIsNull write SetPROVINCIAIsNull; + property CODIGO_POSTAL: String read GetCODIGO_POSTALValue write SetCODIGO_POSTALValue; + property CODIGO_POSTALIsNull: Boolean read GetCODIGO_POSTALIsNull write SetCODIGO_POSTALIsNull; + property TELEFONO_1: String read GetTELEFONO_1Value write SetTELEFONO_1Value; + property TELEFONO_1IsNull: Boolean read GetTELEFONO_1IsNull write SetTELEFONO_1IsNull; + property TELEFONO_2: String read GetTELEFONO_2Value write SetTELEFONO_2Value; + property TELEFONO_2IsNull: Boolean read GetTELEFONO_2IsNull write SetTELEFONO_2IsNull; + property MOVIL_1: String read GetMOVIL_1Value write SetMOVIL_1Value; + property MOVIL_1IsNull: Boolean read GetMOVIL_1IsNull write SetMOVIL_1IsNull; + property MOVIL_2: String read GetMOVIL_2Value write SetMOVIL_2Value; + property MOVIL_2IsNull: Boolean read GetMOVIL_2IsNull write SetMOVIL_2IsNull; + property FAX: String read GetFAXValue write SetFAXValue; + property FAXIsNull: Boolean read GetFAXIsNull write SetFAXIsNull; + property EMAIL_1: String read GetEMAIL_1Value write SetEMAIL_1Value; + property EMAIL_1IsNull: Boolean read GetEMAIL_1IsNull write SetEMAIL_1IsNull; + property EMAIL_2: String read GetEMAIL_2Value write SetEMAIL_2Value; + property EMAIL_2IsNull: Boolean read GetEMAIL_2IsNull write SetEMAIL_2IsNull; + property PAGINA_WEB: String read GetPAGINA_WEBValue write SetPAGINA_WEBValue; + property PAGINA_WEBIsNull: Boolean read GetPAGINA_WEBIsNull write SetPAGINA_WEBIsNull; + property NOTAS: IROStrings read GetNOTASValue; + property NOTASIsNull: Boolean read GetNOTASIsNull write SetNOTASIsNull; + property FECHA_ALTA: DateTime read GetFECHA_ALTAValue write SetFECHA_ALTAValue; + property FECHA_ALTAIsNull: Boolean read GetFECHA_ALTAIsNull write SetFECHA_ALTAIsNull; + property FECHA_MODIFICACION: DateTime read GetFECHA_MODIFICACIONValue write SetFECHA_MODIFICACIONValue; + property FECHA_MODIFICACIONIsNull: Boolean read GetFECHA_MODIFICACIONIsNull write SetFECHA_MODIFICACIONIsNull; + property USUARIO: String read GetUSUARIOValue write SetUSUARIOValue; + property USUARIOIsNull: Boolean read GetUSUARIOIsNull write SetUSUARIOIsNull; + property LOGOTIPO: IROStream read GetLOGOTIPOValue; + property LOGOTIPOIsNull: Boolean read GetLOGOTIPOIsNull write SetLOGOTIPOIsNull; + property REGISTRO_MERCANTIL: String read GetREGISTRO_MERCANTILValue write SetREGISTRO_MERCANTILValue; + property REGISTRO_MERCANTILIsNull: Boolean read GetREGISTRO_MERCANTILIsNull write SetREGISTRO_MERCANTILIsNull; + property IVA: Float read GetIVAValue write SetIVAValue; + property IVAIsNull: Boolean read GetIVAIsNull write SetIVAIsNull; + + public + constructor Create(aDataTable: TDADataTable); override; + destructor Destroy; override; + + end; + + { IEmpresasDatosBanco } + IEmpresasDatosBanco = interface(IDAStronglyTypedDataTable) + ['{5653808F-F011-430B-935F-451A93D817DA}'] + { Property getters and setters } + function GetIDValue: Integer; + procedure SetIDValue(const aValue: Integer); + function GetIDIsNull: Boolean; + procedure SetIDIsNull(const aValue: Boolean); + function GetID_EMPRESAValue: Integer; + procedure SetID_EMPRESAValue(const aValue: Integer); + function GetID_EMPRESAIsNull: Boolean; + procedure SetID_EMPRESAIsNull(const aValue: Boolean); + function GetNOMBREValue: String; + procedure SetNOMBREValue(const aValue: String); + function GetNOMBREIsNull: Boolean; + procedure SetNOMBREIsNull(const aValue: Boolean); + function GetENTIDADValue: String; + procedure SetENTIDADValue(const aValue: String); + function GetENTIDADIsNull: Boolean; + procedure SetENTIDADIsNull(const aValue: Boolean); + function GetSUCURSALValue: String; + procedure SetSUCURSALValue(const aValue: String); + function GetSUCURSALIsNull: Boolean; + procedure SetSUCURSALIsNull(const aValue: Boolean); + function GetDCValue: String; + procedure SetDCValue(const aValue: String); + function GetDCIsNull: Boolean; + procedure SetDCIsNull(const aValue: Boolean); + function GetCUENTAValue: String; + procedure SetCUENTAValue(const aValue: String); + function GetCUENTAIsNull: Boolean; + procedure SetCUENTAIsNull(const aValue: Boolean); + function GetSUFIJO_N19Value: String; + procedure SetSUFIJO_N19Value(const aValue: String); + function GetSUFIJO_N19IsNull: Boolean; + procedure SetSUFIJO_N19IsNull(const aValue: Boolean); + function GetSUFIJO_N58Value: String; + procedure SetSUFIJO_N58Value(const aValue: String); + function GetSUFIJO_N58IsNull: Boolean; + procedure SetSUFIJO_N58IsNull(const aValue: Boolean); + + + { Properties } + property ID: Integer read GetIDValue write SetIDValue; + property IDIsNull: Boolean read GetIDIsNull write SetIDIsNull; + property ID_EMPRESA: Integer read GetID_EMPRESAValue write SetID_EMPRESAValue; + property ID_EMPRESAIsNull: Boolean read GetID_EMPRESAIsNull write SetID_EMPRESAIsNull; + property NOMBRE: String read GetNOMBREValue write SetNOMBREValue; + property NOMBREIsNull: Boolean read GetNOMBREIsNull write SetNOMBREIsNull; + property ENTIDAD: String read GetENTIDADValue write SetENTIDADValue; + property ENTIDADIsNull: Boolean read GetENTIDADIsNull write SetENTIDADIsNull; + property SUCURSAL: String read GetSUCURSALValue write SetSUCURSALValue; + property SUCURSALIsNull: Boolean read GetSUCURSALIsNull write SetSUCURSALIsNull; + property DC: String read GetDCValue write SetDCValue; + property DCIsNull: Boolean read GetDCIsNull write SetDCIsNull; + property CUENTA: String read GetCUENTAValue write SetCUENTAValue; + property CUENTAIsNull: Boolean read GetCUENTAIsNull write SetCUENTAIsNull; + property SUFIJO_N19: String read GetSUFIJO_N19Value write SetSUFIJO_N19Value; + property SUFIJO_N19IsNull: Boolean read GetSUFIJO_N19IsNull write SetSUFIJO_N19IsNull; + property SUFIJO_N58: String read GetSUFIJO_N58Value write SetSUFIJO_N58Value; + property SUFIJO_N58IsNull: Boolean read GetSUFIJO_N58IsNull write SetSUFIJO_N58IsNull; + end; + + { TEmpresasDatosBancoDataTableRules } + TEmpresasDatosBancoDataTableRules = class(TDADataTableRules, IEmpresasDatosBanco) + private + protected + { Property getters and setters } + function GetIDValue: Integer; virtual; + procedure SetIDValue(const aValue: Integer); virtual; + function GetIDIsNull: Boolean; virtual; + procedure SetIDIsNull(const aValue: Boolean); virtual; + function GetID_EMPRESAValue: Integer; virtual; + procedure SetID_EMPRESAValue(const aValue: Integer); virtual; + function GetID_EMPRESAIsNull: Boolean; virtual; + procedure SetID_EMPRESAIsNull(const aValue: Boolean); virtual; + function GetNOMBREValue: String; virtual; + procedure SetNOMBREValue(const aValue: String); virtual; + function GetNOMBREIsNull: Boolean; virtual; + procedure SetNOMBREIsNull(const aValue: Boolean); virtual; + function GetENTIDADValue: String; virtual; + procedure SetENTIDADValue(const aValue: String); virtual; + function GetENTIDADIsNull: Boolean; virtual; + procedure SetENTIDADIsNull(const aValue: Boolean); virtual; + function GetSUCURSALValue: String; virtual; + procedure SetSUCURSALValue(const aValue: String); virtual; + function GetSUCURSALIsNull: Boolean; virtual; + procedure SetSUCURSALIsNull(const aValue: Boolean); virtual; + function GetDCValue: String; virtual; + procedure SetDCValue(const aValue: String); virtual; + function GetDCIsNull: Boolean; virtual; + procedure SetDCIsNull(const aValue: Boolean); virtual; + function GetCUENTAValue: String; virtual; + procedure SetCUENTAValue(const aValue: String); virtual; + function GetCUENTAIsNull: Boolean; virtual; + procedure SetCUENTAIsNull(const aValue: Boolean); virtual; + function GetSUFIJO_N19Value: String; virtual; + procedure SetSUFIJO_N19Value(const aValue: String); virtual; + function GetSUFIJO_N19IsNull: Boolean; virtual; + procedure SetSUFIJO_N19IsNull(const aValue: Boolean); virtual; + function GetSUFIJO_N58Value: String; virtual; + procedure SetSUFIJO_N58Value(const aValue: String); virtual; + function GetSUFIJO_N58IsNull: Boolean; virtual; + procedure SetSUFIJO_N58IsNull(const aValue: Boolean); virtual; + + { Properties } + property ID: Integer read GetIDValue write SetIDValue; + property IDIsNull: Boolean read GetIDIsNull write SetIDIsNull; + property ID_EMPRESA: Integer read GetID_EMPRESAValue write SetID_EMPRESAValue; + property ID_EMPRESAIsNull: Boolean read GetID_EMPRESAIsNull write SetID_EMPRESAIsNull; + property NOMBRE: String read GetNOMBREValue write SetNOMBREValue; + property NOMBREIsNull: Boolean read GetNOMBREIsNull write SetNOMBREIsNull; + property ENTIDAD: String read GetENTIDADValue write SetENTIDADValue; + property ENTIDADIsNull: Boolean read GetENTIDADIsNull write SetENTIDADIsNull; + property SUCURSAL: String read GetSUCURSALValue write SetSUCURSALValue; + property SUCURSALIsNull: Boolean read GetSUCURSALIsNull write SetSUCURSALIsNull; + property DC: String read GetDCValue write SetDCValue; + property DCIsNull: Boolean read GetDCIsNull write SetDCIsNull; + property CUENTA: String read GetCUENTAValue write SetCUENTAValue; + property CUENTAIsNull: Boolean read GetCUENTAIsNull write SetCUENTAIsNull; + property SUFIJO_N19: String read GetSUFIJO_N19Value write SetSUFIJO_N19Value; + property SUFIJO_N19IsNull: Boolean read GetSUFIJO_N19IsNull write SetSUFIJO_N19IsNull; + property SUFIJO_N58: String read GetSUFIJO_N58Value write SetSUFIJO_N58Value; + property SUFIJO_N58IsNull: Boolean read GetSUFIJO_N58IsNull write SetSUFIJO_N58IsNull; + + public + constructor Create(aDataTable: TDADataTable); override; + destructor Destroy; override; + + end; + +implementation + +uses Variants, uROBinaryHelpers; + +{ TEmpresasDataTableRules } +constructor TEmpresasDataTableRules.Create(aDataTable: TDADataTable); +var + StrList: TStringList; + ROStream: TROStream; +begin + inherited; + + StrList := TStringList.Create; + StrList.OnChange := NOTAS_OnChange; + f_NOTAS := NewROStrings(StrList,True); + + ROStream := TROStream.Create; + ROStream.OnChange := LOGOTIPO_OnChange; + f_LOGOTIPO := ROStream; +end; + +destructor TEmpresasDataTableRules.Destroy; +begin + inherited; +end; + +procedure TEmpresasDataTableRules.NOTAS_OnChange(Sender: TObject); +begin + if DataTable.Editing then DataTable.Fields[idx_EmpresasNOTAS].AsVariant := TStringList(Sender).Text; +end; + +procedure TEmpresasDataTableRules.LOGOTIPO_OnChange(Sender: TObject); +begin + if DataTable.Editing then DataTable.Fields[idx_EmpresasLOGOTIPO].LoadFromStream(TROStream(Sender)); +end; + +function TEmpresasDataTableRules.GetIDValue: Integer; +begin + result := DataTable.Fields[idx_EmpresasID].AsInteger; +end; + +procedure TEmpresasDataTableRules.SetIDValue(const aValue: Integer); +begin + DataTable.Fields[idx_EmpresasID].AsInteger := aValue; +end; + +function TEmpresasDataTableRules.GetIDIsNull: boolean; +begin + result := DataTable.Fields[idx_EmpresasID].IsNull; +end; + +procedure TEmpresasDataTableRules.SetIDIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_EmpresasID].AsVariant := Null; +end; + +function TEmpresasDataTableRules.GetNIF_CIFValue: String; +begin + result := DataTable.Fields[idx_EmpresasNIF_CIF].AsString; +end; + +procedure TEmpresasDataTableRules.SetNIF_CIFValue(const aValue: String); +begin + DataTable.Fields[idx_EmpresasNIF_CIF].AsString := aValue; +end; + +function TEmpresasDataTableRules.GetNIF_CIFIsNull: boolean; +begin + result := DataTable.Fields[idx_EmpresasNIF_CIF].IsNull; +end; + +procedure TEmpresasDataTableRules.SetNIF_CIFIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_EmpresasNIF_CIF].AsVariant := Null; +end; + +function TEmpresasDataTableRules.GetNOMBREValue: String; +begin + result := DataTable.Fields[idx_EmpresasNOMBRE].AsString; +end; + +procedure TEmpresasDataTableRules.SetNOMBREValue(const aValue: String); +begin + DataTable.Fields[idx_EmpresasNOMBRE].AsString := aValue; +end; + +function TEmpresasDataTableRules.GetNOMBREIsNull: boolean; +begin + result := DataTable.Fields[idx_EmpresasNOMBRE].IsNull; +end; + +procedure TEmpresasDataTableRules.SetNOMBREIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_EmpresasNOMBRE].AsVariant := Null; +end; + +function TEmpresasDataTableRules.GetRAZON_SOCIALValue: String; +begin + result := DataTable.Fields[idx_EmpresasRAZON_SOCIAL].AsString; +end; + +procedure TEmpresasDataTableRules.SetRAZON_SOCIALValue(const aValue: String); +begin + DataTable.Fields[idx_EmpresasRAZON_SOCIAL].AsString := aValue; +end; + +function TEmpresasDataTableRules.GetRAZON_SOCIALIsNull: boolean; +begin + result := DataTable.Fields[idx_EmpresasRAZON_SOCIAL].IsNull; +end; + +procedure TEmpresasDataTableRules.SetRAZON_SOCIALIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_EmpresasRAZON_SOCIAL].AsVariant := Null; +end; + +function TEmpresasDataTableRules.GetCALLEValue: String; +begin + result := DataTable.Fields[idx_EmpresasCALLE].AsString; +end; + +procedure TEmpresasDataTableRules.SetCALLEValue(const aValue: String); +begin + DataTable.Fields[idx_EmpresasCALLE].AsString := aValue; +end; + +function TEmpresasDataTableRules.GetCALLEIsNull: boolean; +begin + result := DataTable.Fields[idx_EmpresasCALLE].IsNull; +end; + +procedure TEmpresasDataTableRules.SetCALLEIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_EmpresasCALLE].AsVariant := Null; +end; + +function TEmpresasDataTableRules.GetPOBLACIONValue: String; +begin + result := DataTable.Fields[idx_EmpresasPOBLACION].AsString; +end; + +procedure TEmpresasDataTableRules.SetPOBLACIONValue(const aValue: String); +begin + DataTable.Fields[idx_EmpresasPOBLACION].AsString := aValue; +end; + +function TEmpresasDataTableRules.GetPOBLACIONIsNull: boolean; +begin + result := DataTable.Fields[idx_EmpresasPOBLACION].IsNull; +end; + +procedure TEmpresasDataTableRules.SetPOBLACIONIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_EmpresasPOBLACION].AsVariant := Null; +end; + +function TEmpresasDataTableRules.GetPROVINCIAValue: String; +begin + result := DataTable.Fields[idx_EmpresasPROVINCIA].AsString; +end; + +procedure TEmpresasDataTableRules.SetPROVINCIAValue(const aValue: String); +begin + DataTable.Fields[idx_EmpresasPROVINCIA].AsString := aValue; +end; + +function TEmpresasDataTableRules.GetPROVINCIAIsNull: boolean; +begin + result := DataTable.Fields[idx_EmpresasPROVINCIA].IsNull; +end; + +procedure TEmpresasDataTableRules.SetPROVINCIAIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_EmpresasPROVINCIA].AsVariant := Null; +end; + +function TEmpresasDataTableRules.GetCODIGO_POSTALValue: String; +begin + result := DataTable.Fields[idx_EmpresasCODIGO_POSTAL].AsString; +end; + +procedure TEmpresasDataTableRules.SetCODIGO_POSTALValue(const aValue: String); +begin + DataTable.Fields[idx_EmpresasCODIGO_POSTAL].AsString := aValue; +end; + +function TEmpresasDataTableRules.GetCODIGO_POSTALIsNull: boolean; +begin + result := DataTable.Fields[idx_EmpresasCODIGO_POSTAL].IsNull; +end; + +procedure TEmpresasDataTableRules.SetCODIGO_POSTALIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_EmpresasCODIGO_POSTAL].AsVariant := Null; +end; + +function TEmpresasDataTableRules.GetTELEFONO_1Value: String; +begin + result := DataTable.Fields[idx_EmpresasTELEFONO_1].AsString; +end; + +procedure TEmpresasDataTableRules.SetTELEFONO_1Value(const aValue: String); +begin + DataTable.Fields[idx_EmpresasTELEFONO_1].AsString := aValue; +end; + +function TEmpresasDataTableRules.GetTELEFONO_1IsNull: boolean; +begin + result := DataTable.Fields[idx_EmpresasTELEFONO_1].IsNull; +end; + +procedure TEmpresasDataTableRules.SetTELEFONO_1IsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_EmpresasTELEFONO_1].AsVariant := Null; +end; + +function TEmpresasDataTableRules.GetTELEFONO_2Value: String; +begin + result := DataTable.Fields[idx_EmpresasTELEFONO_2].AsString; +end; + +procedure TEmpresasDataTableRules.SetTELEFONO_2Value(const aValue: String); +begin + DataTable.Fields[idx_EmpresasTELEFONO_2].AsString := aValue; +end; + +function TEmpresasDataTableRules.GetTELEFONO_2IsNull: boolean; +begin + result := DataTable.Fields[idx_EmpresasTELEFONO_2].IsNull; +end; + +procedure TEmpresasDataTableRules.SetTELEFONO_2IsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_EmpresasTELEFONO_2].AsVariant := Null; +end; + +function TEmpresasDataTableRules.GetMOVIL_1Value: String; +begin + result := DataTable.Fields[idx_EmpresasMOVIL_1].AsString; +end; + +procedure TEmpresasDataTableRules.SetMOVIL_1Value(const aValue: String); +begin + DataTable.Fields[idx_EmpresasMOVIL_1].AsString := aValue; +end; + +function TEmpresasDataTableRules.GetMOVIL_1IsNull: boolean; +begin + result := DataTable.Fields[idx_EmpresasMOVIL_1].IsNull; +end; + +procedure TEmpresasDataTableRules.SetMOVIL_1IsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_EmpresasMOVIL_1].AsVariant := Null; +end; + +function TEmpresasDataTableRules.GetMOVIL_2Value: String; +begin + result := DataTable.Fields[idx_EmpresasMOVIL_2].AsString; +end; + +procedure TEmpresasDataTableRules.SetMOVIL_2Value(const aValue: String); +begin + DataTable.Fields[idx_EmpresasMOVIL_2].AsString := aValue; +end; + +function TEmpresasDataTableRules.GetMOVIL_2IsNull: boolean; +begin + result := DataTable.Fields[idx_EmpresasMOVIL_2].IsNull; +end; + +procedure TEmpresasDataTableRules.SetMOVIL_2IsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_EmpresasMOVIL_2].AsVariant := Null; +end; + +function TEmpresasDataTableRules.GetFAXValue: String; +begin + result := DataTable.Fields[idx_EmpresasFAX].AsString; +end; + +procedure TEmpresasDataTableRules.SetFAXValue(const aValue: String); +begin + DataTable.Fields[idx_EmpresasFAX].AsString := aValue; +end; + +function TEmpresasDataTableRules.GetFAXIsNull: boolean; +begin + result := DataTable.Fields[idx_EmpresasFAX].IsNull; +end; + +procedure TEmpresasDataTableRules.SetFAXIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_EmpresasFAX].AsVariant := Null; +end; + +function TEmpresasDataTableRules.GetEMAIL_1Value: String; +begin + result := DataTable.Fields[idx_EmpresasEMAIL_1].AsString; +end; + +procedure TEmpresasDataTableRules.SetEMAIL_1Value(const aValue: String); +begin + DataTable.Fields[idx_EmpresasEMAIL_1].AsString := aValue; +end; + +function TEmpresasDataTableRules.GetEMAIL_1IsNull: boolean; +begin + result := DataTable.Fields[idx_EmpresasEMAIL_1].IsNull; +end; + +procedure TEmpresasDataTableRules.SetEMAIL_1IsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_EmpresasEMAIL_1].AsVariant := Null; +end; + +function TEmpresasDataTableRules.GetEMAIL_2Value: String; +begin + result := DataTable.Fields[idx_EmpresasEMAIL_2].AsString; +end; + +procedure TEmpresasDataTableRules.SetEMAIL_2Value(const aValue: String); +begin + DataTable.Fields[idx_EmpresasEMAIL_2].AsString := aValue; +end; + +function TEmpresasDataTableRules.GetEMAIL_2IsNull: boolean; +begin + result := DataTable.Fields[idx_EmpresasEMAIL_2].IsNull; +end; + +procedure TEmpresasDataTableRules.SetEMAIL_2IsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_EmpresasEMAIL_2].AsVariant := Null; +end; + +function TEmpresasDataTableRules.GetPAGINA_WEBValue: String; +begin + result := DataTable.Fields[idx_EmpresasPAGINA_WEB].AsString; +end; + +procedure TEmpresasDataTableRules.SetPAGINA_WEBValue(const aValue: String); +begin + DataTable.Fields[idx_EmpresasPAGINA_WEB].AsString := aValue; +end; + +function TEmpresasDataTableRules.GetPAGINA_WEBIsNull: boolean; +begin + result := DataTable.Fields[idx_EmpresasPAGINA_WEB].IsNull; +end; + +procedure TEmpresasDataTableRules.SetPAGINA_WEBIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_EmpresasPAGINA_WEB].AsVariant := Null; +end; + +function TEmpresasDataTableRules.GetNOTASValue: IROStrings; +begin + result := f_NOTAS; + result.Text := DataTable.Fields[idx_EmpresasNOTAS].AsString; +end; + +function TEmpresasDataTableRules.GetNOTASIsNull: boolean; +begin + result := DataTable.Fields[idx_EmpresasNOTAS].IsNull; +end; + +procedure TEmpresasDataTableRules.SetNOTASIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_EmpresasNOTAS].AsVariant := Null; +end; + +function TEmpresasDataTableRules.GetFECHA_ALTAValue: DateTime; +begin + result := DataTable.Fields[idx_EmpresasFECHA_ALTA].AsDateTime; +end; + +procedure TEmpresasDataTableRules.SetFECHA_ALTAValue(const aValue: DateTime); +begin + DataTable.Fields[idx_EmpresasFECHA_ALTA].AsDateTime := aValue; +end; + +function TEmpresasDataTableRules.GetFECHA_ALTAIsNull: boolean; +begin + result := DataTable.Fields[idx_EmpresasFECHA_ALTA].IsNull; +end; + +procedure TEmpresasDataTableRules.SetFECHA_ALTAIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_EmpresasFECHA_ALTA].AsVariant := Null; +end; + +function TEmpresasDataTableRules.GetFECHA_MODIFICACIONValue: DateTime; +begin + result := DataTable.Fields[idx_EmpresasFECHA_MODIFICACION].AsDateTime; +end; + +procedure TEmpresasDataTableRules.SetFECHA_MODIFICACIONValue(const aValue: DateTime); +begin + DataTable.Fields[idx_EmpresasFECHA_MODIFICACION].AsDateTime := aValue; +end; + +function TEmpresasDataTableRules.GetFECHA_MODIFICACIONIsNull: boolean; +begin + result := DataTable.Fields[idx_EmpresasFECHA_MODIFICACION].IsNull; +end; + +procedure TEmpresasDataTableRules.SetFECHA_MODIFICACIONIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_EmpresasFECHA_MODIFICACION].AsVariant := Null; +end; + +function TEmpresasDataTableRules.GetUSUARIOValue: String; +begin + result := DataTable.Fields[idx_EmpresasUSUARIO].AsString; +end; + +procedure TEmpresasDataTableRules.SetUSUARIOValue(const aValue: String); +begin + DataTable.Fields[idx_EmpresasUSUARIO].AsString := aValue; +end; + +function TEmpresasDataTableRules.GetUSUARIOIsNull: boolean; +begin + result := DataTable.Fields[idx_EmpresasUSUARIO].IsNull; +end; + +procedure TEmpresasDataTableRules.SetUSUARIOIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_EmpresasUSUARIO].AsVariant := Null; +end; + +function TEmpresasDataTableRules.GetLOGOTIPOValue: IROStream; +begin + result := f_LOGOTIPO; + result.Position := 0; + if not Result.InUpdateMode then begin + DataTable.Fields[idx_EmpresasLOGOTIPO].SaveToStream(result); + result.Position := 0; + end; +end; + +function TEmpresasDataTableRules.GetLOGOTIPOIsNull: boolean; +begin + result := DataTable.Fields[idx_EmpresasLOGOTIPO].IsNull; +end; + +procedure TEmpresasDataTableRules.SetLOGOTIPOIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_EmpresasLOGOTIPO].AsVariant := Null; +end; + +function TEmpresasDataTableRules.GetREGISTRO_MERCANTILValue: String; +begin + result := DataTable.Fields[idx_EmpresasREGISTRO_MERCANTIL].AsString; +end; + +procedure TEmpresasDataTableRules.SetREGISTRO_MERCANTILValue(const aValue: String); +begin + DataTable.Fields[idx_EmpresasREGISTRO_MERCANTIL].AsString := aValue; +end; + +function TEmpresasDataTableRules.GetREGISTRO_MERCANTILIsNull: boolean; +begin + result := DataTable.Fields[idx_EmpresasREGISTRO_MERCANTIL].IsNull; +end; + +procedure TEmpresasDataTableRules.SetREGISTRO_MERCANTILIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_EmpresasREGISTRO_MERCANTIL].AsVariant := Null; +end; + +function TEmpresasDataTableRules.GetIVAValue: Float; +begin + result := DataTable.Fields[idx_EmpresasIVA].AsFloat; +end; + +procedure TEmpresasDataTableRules.SetIVAValue(const aValue: Float); +begin + DataTable.Fields[idx_EmpresasIVA].AsFloat := aValue; +end; + +function TEmpresasDataTableRules.GetIVAIsNull: boolean; +begin + result := DataTable.Fields[idx_EmpresasIVA].IsNull; +end; + +procedure TEmpresasDataTableRules.SetIVAIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_EmpresasIVA].AsVariant := Null; +end; + + +{ TEmpresasDatosBancoDataTableRules } +constructor TEmpresasDatosBancoDataTableRules.Create(aDataTable: TDADataTable); +begin + inherited; +end; + +destructor TEmpresasDatosBancoDataTableRules.Destroy; +begin + inherited; +end; + +function TEmpresasDatosBancoDataTableRules.GetIDValue: Integer; +begin + result := DataTable.Fields[idx_EmpresasDatosBancoID].AsInteger; +end; + +procedure TEmpresasDatosBancoDataTableRules.SetIDValue(const aValue: Integer); +begin + DataTable.Fields[idx_EmpresasDatosBancoID].AsInteger := aValue; +end; + +function TEmpresasDatosBancoDataTableRules.GetIDIsNull: boolean; +begin + result := DataTable.Fields[idx_EmpresasDatosBancoID].IsNull; +end; + +procedure TEmpresasDatosBancoDataTableRules.SetIDIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_EmpresasDatosBancoID].AsVariant := Null; +end; + +function TEmpresasDatosBancoDataTableRules.GetID_EMPRESAValue: Integer; +begin + result := DataTable.Fields[idx_EmpresasDatosBancoID_EMPRESA].AsInteger; +end; + +procedure TEmpresasDatosBancoDataTableRules.SetID_EMPRESAValue(const aValue: Integer); +begin + DataTable.Fields[idx_EmpresasDatosBancoID_EMPRESA].AsInteger := aValue; +end; + +function TEmpresasDatosBancoDataTableRules.GetID_EMPRESAIsNull: boolean; +begin + result := DataTable.Fields[idx_EmpresasDatosBancoID_EMPRESA].IsNull; +end; + +procedure TEmpresasDatosBancoDataTableRules.SetID_EMPRESAIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_EmpresasDatosBancoID_EMPRESA].AsVariant := Null; +end; + +function TEmpresasDatosBancoDataTableRules.GetNOMBREValue: String; +begin + result := DataTable.Fields[idx_EmpresasDatosBancoNOMBRE].AsString; +end; + +procedure TEmpresasDatosBancoDataTableRules.SetNOMBREValue(const aValue: String); +begin + DataTable.Fields[idx_EmpresasDatosBancoNOMBRE].AsString := aValue; +end; + +function TEmpresasDatosBancoDataTableRules.GetNOMBREIsNull: boolean; +begin + result := DataTable.Fields[idx_EmpresasDatosBancoNOMBRE].IsNull; +end; + +procedure TEmpresasDatosBancoDataTableRules.SetNOMBREIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_EmpresasDatosBancoNOMBRE].AsVariant := Null; +end; + +function TEmpresasDatosBancoDataTableRules.GetENTIDADValue: String; +begin + result := DataTable.Fields[idx_EmpresasDatosBancoENTIDAD].AsString; +end; + +procedure TEmpresasDatosBancoDataTableRules.SetENTIDADValue(const aValue: String); +begin + DataTable.Fields[idx_EmpresasDatosBancoENTIDAD].AsString := aValue; +end; + +function TEmpresasDatosBancoDataTableRules.GetENTIDADIsNull: boolean; +begin + result := DataTable.Fields[idx_EmpresasDatosBancoENTIDAD].IsNull; +end; + +procedure TEmpresasDatosBancoDataTableRules.SetENTIDADIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_EmpresasDatosBancoENTIDAD].AsVariant := Null; +end; + +function TEmpresasDatosBancoDataTableRules.GetSUCURSALValue: String; +begin + result := DataTable.Fields[idx_EmpresasDatosBancoSUCURSAL].AsString; +end; + +procedure TEmpresasDatosBancoDataTableRules.SetSUCURSALValue(const aValue: String); +begin + DataTable.Fields[idx_EmpresasDatosBancoSUCURSAL].AsString := aValue; +end; + +function TEmpresasDatosBancoDataTableRules.GetSUCURSALIsNull: boolean; +begin + result := DataTable.Fields[idx_EmpresasDatosBancoSUCURSAL].IsNull; +end; + +procedure TEmpresasDatosBancoDataTableRules.SetSUCURSALIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_EmpresasDatosBancoSUCURSAL].AsVariant := Null; +end; + +function TEmpresasDatosBancoDataTableRules.GetDCValue: String; +begin + result := DataTable.Fields[idx_EmpresasDatosBancoDC].AsString; +end; + +procedure TEmpresasDatosBancoDataTableRules.SetDCValue(const aValue: String); +begin + DataTable.Fields[idx_EmpresasDatosBancoDC].AsString := aValue; +end; + +function TEmpresasDatosBancoDataTableRules.GetDCIsNull: boolean; +begin + result := DataTable.Fields[idx_EmpresasDatosBancoDC].IsNull; +end; + +procedure TEmpresasDatosBancoDataTableRules.SetDCIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_EmpresasDatosBancoDC].AsVariant := Null; +end; + +function TEmpresasDatosBancoDataTableRules.GetCUENTAValue: String; +begin + result := DataTable.Fields[idx_EmpresasDatosBancoCUENTA].AsString; +end; + +procedure TEmpresasDatosBancoDataTableRules.SetCUENTAValue(const aValue: String); +begin + DataTable.Fields[idx_EmpresasDatosBancoCUENTA].AsString := aValue; +end; + +function TEmpresasDatosBancoDataTableRules.GetCUENTAIsNull: boolean; +begin + result := DataTable.Fields[idx_EmpresasDatosBancoCUENTA].IsNull; +end; + +procedure TEmpresasDatosBancoDataTableRules.SetCUENTAIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_EmpresasDatosBancoCUENTA].AsVariant := Null; +end; + +function TEmpresasDatosBancoDataTableRules.GetSUFIJO_N19Value: String; +begin + result := DataTable.Fields[idx_EmpresasDatosBancoSUFIJO_N19].AsString; +end; + +procedure TEmpresasDatosBancoDataTableRules.SetSUFIJO_N19Value(const aValue: String); +begin + DataTable.Fields[idx_EmpresasDatosBancoSUFIJO_N19].AsString := aValue; +end; + +function TEmpresasDatosBancoDataTableRules.GetSUFIJO_N19IsNull: boolean; +begin + result := DataTable.Fields[idx_EmpresasDatosBancoSUFIJO_N19].IsNull; +end; + +procedure TEmpresasDatosBancoDataTableRules.SetSUFIJO_N19IsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_EmpresasDatosBancoSUFIJO_N19].AsVariant := Null; +end; + +function TEmpresasDatosBancoDataTableRules.GetSUFIJO_N58Value: String; +begin + result := DataTable.Fields[idx_EmpresasDatosBancoSUFIJO_N58].AsString; +end; + +procedure TEmpresasDatosBancoDataTableRules.SetSUFIJO_N58Value(const aValue: String); +begin + DataTable.Fields[idx_EmpresasDatosBancoSUFIJO_N58].AsString := aValue; +end; + +function TEmpresasDatosBancoDataTableRules.GetSUFIJO_N58IsNull: boolean; +begin + result := DataTable.Fields[idx_EmpresasDatosBancoSUFIJO_N58].IsNull; +end; + +procedure TEmpresasDatosBancoDataTableRules.SetSUFIJO_N58IsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_EmpresasDatosBancoSUFIJO_N58].AsVariant := Null; +end; + + +initialization + RegisterDataTableRules(RID_Empresas, TEmpresasDataTableRules); + RegisterDataTableRules(RID_EmpresasDatosBanco, TEmpresasDatosBancoDataTableRules); + +end. diff --git a/Source/ApplicationBase/Empresas/Model/schEmpresasServer_Intf.pas b/Source/ApplicationBase/Empresas/Model/schEmpresasServer_Intf.pas new file mode 100644 index 00000000..6f076fb5 --- /dev/null +++ b/Source/ApplicationBase/Empresas/Model/schEmpresasServer_Intf.pas @@ -0,0 +1,1490 @@ +unit schEmpresasServer_Intf; + +interface + +uses + Classes, DB, SysUtils, uROClasses, uDADataTable, uDABusinessProcessor, FmtBCD, uROXMLIntf, schEmpresasClient_Intf; + +const + { Delta rules ids + Feel free to change them to something more human readable + but make sure they are unique in the context of your application } + RID_EmpresasDelta = '{AA5637FC-EFD6-42DE-BDA1-C31464CB14D3}'; + RID_EmpresasDatosBancoDelta = '{9C692459-7C4C-4403-8747-2D651CC6D3A2}'; + +type + { IEmpresasDelta } + IEmpresasDelta = interface(IEmpresas) + ['{AA5637FC-EFD6-42DE-BDA1-C31464CB14D3}'] + { Property getters and setters } + function GetOldIDValue : Integer; + function GetOldNIF_CIFValue : String; + function GetOldNOMBREValue : String; + function GetOldRAZON_SOCIALValue : String; + function GetOldCALLEValue : String; + function GetOldPOBLACIONValue : String; + function GetOldPROVINCIAValue : String; + function GetOldCODIGO_POSTALValue : String; + function GetOldTELEFONO_1Value : String; + function GetOldTELEFONO_2Value : String; + function GetOldMOVIL_1Value : String; + function GetOldMOVIL_2Value : String; + function GetOldFAXValue : String; + function GetOldEMAIL_1Value : String; + function GetOldEMAIL_2Value : String; + function GetOldPAGINA_WEBValue : String; + function GetOldNOTASValue : IROStrings; + function GetOldFECHA_ALTAValue : DateTime; + function GetOldFECHA_MODIFICACIONValue : DateTime; + function GetOldUSUARIOValue : String; + function GetOldLOGOTIPOValue : IROStream; + function GetOldREGISTRO_MERCANTILValue : String; + function GetOldIVAValue : Float; + + { Properties } + property OldID : Integer read GetOldIDValue; + property OldNIF_CIF : String read GetOldNIF_CIFValue; + property OldNOMBRE : String read GetOldNOMBREValue; + property OldRAZON_SOCIAL : String read GetOldRAZON_SOCIALValue; + property OldCALLE : String read GetOldCALLEValue; + property OldPOBLACION : String read GetOldPOBLACIONValue; + property OldPROVINCIA : String read GetOldPROVINCIAValue; + property OldCODIGO_POSTAL : String read GetOldCODIGO_POSTALValue; + property OldTELEFONO_1 : String read GetOldTELEFONO_1Value; + property OldTELEFONO_2 : String read GetOldTELEFONO_2Value; + property OldMOVIL_1 : String read GetOldMOVIL_1Value; + property OldMOVIL_2 : String read GetOldMOVIL_2Value; + property OldFAX : String read GetOldFAXValue; + property OldEMAIL_1 : String read GetOldEMAIL_1Value; + property OldEMAIL_2 : String read GetOldEMAIL_2Value; + property OldPAGINA_WEB : String read GetOldPAGINA_WEBValue; + property OldNOTAS : IROStrings read GetOldNOTASValue; + property OldFECHA_ALTA : DateTime read GetOldFECHA_ALTAValue; + property OldFECHA_MODIFICACION : DateTime read GetOldFECHA_MODIFICACIONValue; + property OldUSUARIO : String read GetOldUSUARIOValue; + property OldLOGOTIPO : IROStream read GetOldLOGOTIPOValue; + property OldREGISTRO_MERCANTIL : String read GetOldREGISTRO_MERCANTILValue; + property OldIVA : Float read GetOldIVAValue; + end; + + { TEmpresasBusinessProcessorRules } + TEmpresasBusinessProcessorRules = class(TDABusinessProcessorRules, IEmpresas, IEmpresasDelta) + private + f_NOTAS: IROStrings; + f_LOGOTIPO: IROStream; + procedure NOTAS_OnChange(Sender: TObject); + procedure LOGOTIPO_OnChange(Sender: Tobject); + protected + { Property getters and setters } + function GetIDValue: Integer; virtual; + function GetIDIsNull: Boolean; virtual; + function GetOldIDValue: Integer; virtual; + function GetOldIDIsNull: Boolean; virtual; + procedure SetIDValue(const aValue: Integer); virtual; + procedure SetIDIsNull(const aValue: Boolean); virtual; + function GetNIF_CIFValue: String; virtual; + function GetNIF_CIFIsNull: Boolean; virtual; + function GetOldNIF_CIFValue: String; virtual; + function GetOldNIF_CIFIsNull: Boolean; virtual; + procedure SetNIF_CIFValue(const aValue: String); virtual; + procedure SetNIF_CIFIsNull(const aValue: Boolean); virtual; + function GetNOMBREValue: String; virtual; + function GetNOMBREIsNull: Boolean; virtual; + function GetOldNOMBREValue: String; virtual; + function GetOldNOMBREIsNull: Boolean; virtual; + procedure SetNOMBREValue(const aValue: String); virtual; + procedure SetNOMBREIsNull(const aValue: Boolean); virtual; + function GetRAZON_SOCIALValue: String; virtual; + function GetRAZON_SOCIALIsNull: Boolean; virtual; + function GetOldRAZON_SOCIALValue: String; virtual; + function GetOldRAZON_SOCIALIsNull: Boolean; virtual; + procedure SetRAZON_SOCIALValue(const aValue: String); virtual; + procedure SetRAZON_SOCIALIsNull(const aValue: Boolean); virtual; + function GetCALLEValue: String; virtual; + function GetCALLEIsNull: Boolean; virtual; + function GetOldCALLEValue: String; virtual; + function GetOldCALLEIsNull: Boolean; virtual; + procedure SetCALLEValue(const aValue: String); virtual; + procedure SetCALLEIsNull(const aValue: Boolean); virtual; + function GetPOBLACIONValue: String; virtual; + function GetPOBLACIONIsNull: Boolean; virtual; + function GetOldPOBLACIONValue: String; virtual; + function GetOldPOBLACIONIsNull: Boolean; virtual; + procedure SetPOBLACIONValue(const aValue: String); virtual; + procedure SetPOBLACIONIsNull(const aValue: Boolean); virtual; + function GetPROVINCIAValue: String; virtual; + function GetPROVINCIAIsNull: Boolean; virtual; + function GetOldPROVINCIAValue: String; virtual; + function GetOldPROVINCIAIsNull: Boolean; virtual; + procedure SetPROVINCIAValue(const aValue: String); virtual; + procedure SetPROVINCIAIsNull(const aValue: Boolean); virtual; + function GetCODIGO_POSTALValue: String; virtual; + function GetCODIGO_POSTALIsNull: Boolean; virtual; + function GetOldCODIGO_POSTALValue: String; virtual; + function GetOldCODIGO_POSTALIsNull: Boolean; virtual; + procedure SetCODIGO_POSTALValue(const aValue: String); virtual; + procedure SetCODIGO_POSTALIsNull(const aValue: Boolean); virtual; + function GetTELEFONO_1Value: String; virtual; + function GetTELEFONO_1IsNull: Boolean; virtual; + function GetOldTELEFONO_1Value: String; virtual; + function GetOldTELEFONO_1IsNull: Boolean; virtual; + procedure SetTELEFONO_1Value(const aValue: String); virtual; + procedure SetTELEFONO_1IsNull(const aValue: Boolean); virtual; + function GetTELEFONO_2Value: String; virtual; + function GetTELEFONO_2IsNull: Boolean; virtual; + function GetOldTELEFONO_2Value: String; virtual; + function GetOldTELEFONO_2IsNull: Boolean; virtual; + procedure SetTELEFONO_2Value(const aValue: String); virtual; + procedure SetTELEFONO_2IsNull(const aValue: Boolean); virtual; + function GetMOVIL_1Value: String; virtual; + function GetMOVIL_1IsNull: Boolean; virtual; + function GetOldMOVIL_1Value: String; virtual; + function GetOldMOVIL_1IsNull: Boolean; virtual; + procedure SetMOVIL_1Value(const aValue: String); virtual; + procedure SetMOVIL_1IsNull(const aValue: Boolean); virtual; + function GetMOVIL_2Value: String; virtual; + function GetMOVIL_2IsNull: Boolean; virtual; + function GetOldMOVIL_2Value: String; virtual; + function GetOldMOVIL_2IsNull: Boolean; virtual; + procedure SetMOVIL_2Value(const aValue: String); virtual; + procedure SetMOVIL_2IsNull(const aValue: Boolean); virtual; + function GetFAXValue: String; virtual; + function GetFAXIsNull: Boolean; virtual; + function GetOldFAXValue: String; virtual; + function GetOldFAXIsNull: Boolean; virtual; + procedure SetFAXValue(const aValue: String); virtual; + procedure SetFAXIsNull(const aValue: Boolean); virtual; + function GetEMAIL_1Value: String; virtual; + function GetEMAIL_1IsNull: Boolean; virtual; + function GetOldEMAIL_1Value: String; virtual; + function GetOldEMAIL_1IsNull: Boolean; virtual; + procedure SetEMAIL_1Value(const aValue: String); virtual; + procedure SetEMAIL_1IsNull(const aValue: Boolean); virtual; + function GetEMAIL_2Value: String; virtual; + function GetEMAIL_2IsNull: Boolean; virtual; + function GetOldEMAIL_2Value: String; virtual; + function GetOldEMAIL_2IsNull: Boolean; virtual; + procedure SetEMAIL_2Value(const aValue: String); virtual; + procedure SetEMAIL_2IsNull(const aValue: Boolean); virtual; + function GetPAGINA_WEBValue: String; virtual; + function GetPAGINA_WEBIsNull: Boolean; virtual; + function GetOldPAGINA_WEBValue: String; virtual; + function GetOldPAGINA_WEBIsNull: Boolean; virtual; + procedure SetPAGINA_WEBValue(const aValue: String); virtual; + procedure SetPAGINA_WEBIsNull(const aValue: Boolean); virtual; + function GetNOTASValue: IROStrings; virtual; + function GetNOTASIsNull: Boolean; virtual; + function GetOldNOTASValue: IROStrings; virtual; + function GetOldNOTASIsNull: Boolean; virtual; + procedure SetNOTASIsNull(const aValue: Boolean); virtual; + function GetFECHA_ALTAValue: DateTime; virtual; + function GetFECHA_ALTAIsNull: Boolean; virtual; + function GetOldFECHA_ALTAValue: DateTime; virtual; + function GetOldFECHA_ALTAIsNull: Boolean; virtual; + procedure SetFECHA_ALTAValue(const aValue: DateTime); virtual; + procedure SetFECHA_ALTAIsNull(const aValue: Boolean); virtual; + function GetFECHA_MODIFICACIONValue: DateTime; virtual; + function GetFECHA_MODIFICACIONIsNull: Boolean; virtual; + function GetOldFECHA_MODIFICACIONValue: DateTime; virtual; + function GetOldFECHA_MODIFICACIONIsNull: Boolean; virtual; + procedure SetFECHA_MODIFICACIONValue(const aValue: DateTime); virtual; + procedure SetFECHA_MODIFICACIONIsNull(const aValue: Boolean); virtual; + function GetUSUARIOValue: String; virtual; + function GetUSUARIOIsNull: Boolean; virtual; + function GetOldUSUARIOValue: String; virtual; + function GetOldUSUARIOIsNull: Boolean; virtual; + procedure SetUSUARIOValue(const aValue: String); virtual; + procedure SetUSUARIOIsNull(const aValue: Boolean); virtual; + function GetLOGOTIPOValue: IROStream; virtual; + function GetLOGOTIPOIsNull: Boolean; virtual; + function GetOldLOGOTIPOValue: IROStream; virtual; + function GetOldLOGOTIPOIsNull: Boolean; virtual; + procedure SetLOGOTIPOIsNull(const aValue: Boolean); virtual; + function GetREGISTRO_MERCANTILValue: String; virtual; + function GetREGISTRO_MERCANTILIsNull: Boolean; virtual; + function GetOldREGISTRO_MERCANTILValue: String; virtual; + function GetOldREGISTRO_MERCANTILIsNull: Boolean; virtual; + procedure SetREGISTRO_MERCANTILValue(const aValue: String); virtual; + procedure SetREGISTRO_MERCANTILIsNull(const aValue: Boolean); virtual; + function GetIVAValue: Float; virtual; + function GetIVAIsNull: Boolean; virtual; + function GetOldIVAValue: Float; virtual; + function GetOldIVAIsNull: Boolean; virtual; + procedure SetIVAValue(const aValue: Float); virtual; + procedure SetIVAIsNull(const aValue: Boolean); virtual; + + { Properties } + property ID : Integer read GetIDValue write SetIDValue; + property IDIsNull : Boolean read GetIDIsNull write SetIDIsNull; + property OldID : Integer read GetOldIDValue; + property OldIDIsNull : Boolean read GetOldIDIsNull; + property NIF_CIF : String read GetNIF_CIFValue write SetNIF_CIFValue; + property NIF_CIFIsNull : Boolean read GetNIF_CIFIsNull write SetNIF_CIFIsNull; + property OldNIF_CIF : String read GetOldNIF_CIFValue; + property OldNIF_CIFIsNull : Boolean read GetOldNIF_CIFIsNull; + property NOMBRE : String read GetNOMBREValue write SetNOMBREValue; + property NOMBREIsNull : Boolean read GetNOMBREIsNull write SetNOMBREIsNull; + property OldNOMBRE : String read GetOldNOMBREValue; + property OldNOMBREIsNull : Boolean read GetOldNOMBREIsNull; + property RAZON_SOCIAL : String read GetRAZON_SOCIALValue write SetRAZON_SOCIALValue; + property RAZON_SOCIALIsNull : Boolean read GetRAZON_SOCIALIsNull write SetRAZON_SOCIALIsNull; + property OldRAZON_SOCIAL : String read GetOldRAZON_SOCIALValue; + property OldRAZON_SOCIALIsNull : Boolean read GetOldRAZON_SOCIALIsNull; + property CALLE : String read GetCALLEValue write SetCALLEValue; + property CALLEIsNull : Boolean read GetCALLEIsNull write SetCALLEIsNull; + property OldCALLE : String read GetOldCALLEValue; + property OldCALLEIsNull : Boolean read GetOldCALLEIsNull; + property POBLACION : String read GetPOBLACIONValue write SetPOBLACIONValue; + property POBLACIONIsNull : Boolean read GetPOBLACIONIsNull write SetPOBLACIONIsNull; + property OldPOBLACION : String read GetOldPOBLACIONValue; + property OldPOBLACIONIsNull : Boolean read GetOldPOBLACIONIsNull; + property PROVINCIA : String read GetPROVINCIAValue write SetPROVINCIAValue; + property PROVINCIAIsNull : Boolean read GetPROVINCIAIsNull write SetPROVINCIAIsNull; + property OldPROVINCIA : String read GetOldPROVINCIAValue; + property OldPROVINCIAIsNull : Boolean read GetOldPROVINCIAIsNull; + property CODIGO_POSTAL : String read GetCODIGO_POSTALValue write SetCODIGO_POSTALValue; + property CODIGO_POSTALIsNull : Boolean read GetCODIGO_POSTALIsNull write SetCODIGO_POSTALIsNull; + property OldCODIGO_POSTAL : String read GetOldCODIGO_POSTALValue; + property OldCODIGO_POSTALIsNull : Boolean read GetOldCODIGO_POSTALIsNull; + property TELEFONO_1 : String read GetTELEFONO_1Value write SetTELEFONO_1Value; + property TELEFONO_1IsNull : Boolean read GetTELEFONO_1IsNull write SetTELEFONO_1IsNull; + property OldTELEFONO_1 : String read GetOldTELEFONO_1Value; + property OldTELEFONO_1IsNull : Boolean read GetOldTELEFONO_1IsNull; + property TELEFONO_2 : String read GetTELEFONO_2Value write SetTELEFONO_2Value; + property TELEFONO_2IsNull : Boolean read GetTELEFONO_2IsNull write SetTELEFONO_2IsNull; + property OldTELEFONO_2 : String read GetOldTELEFONO_2Value; + property OldTELEFONO_2IsNull : Boolean read GetOldTELEFONO_2IsNull; + property MOVIL_1 : String read GetMOVIL_1Value write SetMOVIL_1Value; + property MOVIL_1IsNull : Boolean read GetMOVIL_1IsNull write SetMOVIL_1IsNull; + property OldMOVIL_1 : String read GetOldMOVIL_1Value; + property OldMOVIL_1IsNull : Boolean read GetOldMOVIL_1IsNull; + property MOVIL_2 : String read GetMOVIL_2Value write SetMOVIL_2Value; + property MOVIL_2IsNull : Boolean read GetMOVIL_2IsNull write SetMOVIL_2IsNull; + property OldMOVIL_2 : String read GetOldMOVIL_2Value; + property OldMOVIL_2IsNull : Boolean read GetOldMOVIL_2IsNull; + property FAX : String read GetFAXValue write SetFAXValue; + property FAXIsNull : Boolean read GetFAXIsNull write SetFAXIsNull; + property OldFAX : String read GetOldFAXValue; + property OldFAXIsNull : Boolean read GetOldFAXIsNull; + property EMAIL_1 : String read GetEMAIL_1Value write SetEMAIL_1Value; + property EMAIL_1IsNull : Boolean read GetEMAIL_1IsNull write SetEMAIL_1IsNull; + property OldEMAIL_1 : String read GetOldEMAIL_1Value; + property OldEMAIL_1IsNull : Boolean read GetOldEMAIL_1IsNull; + property EMAIL_2 : String read GetEMAIL_2Value write SetEMAIL_2Value; + property EMAIL_2IsNull : Boolean read GetEMAIL_2IsNull write SetEMAIL_2IsNull; + property OldEMAIL_2 : String read GetOldEMAIL_2Value; + property OldEMAIL_2IsNull : Boolean read GetOldEMAIL_2IsNull; + property PAGINA_WEB : String read GetPAGINA_WEBValue write SetPAGINA_WEBValue; + property PAGINA_WEBIsNull : Boolean read GetPAGINA_WEBIsNull write SetPAGINA_WEBIsNull; + property OldPAGINA_WEB : String read GetOldPAGINA_WEBValue; + property OldPAGINA_WEBIsNull : Boolean read GetOldPAGINA_WEBIsNull; + property NOTAS : IROStrings read GetNOTASValue; + property NOTASIsNull : Boolean read GetNOTASIsNull write SetNOTASIsNull; + property OldNOTAS : IROStrings read GetOldNOTASValue; + property OldNOTASIsNull : Boolean read GetOldNOTASIsNull; + property FECHA_ALTA : DateTime read GetFECHA_ALTAValue write SetFECHA_ALTAValue; + property FECHA_ALTAIsNull : Boolean read GetFECHA_ALTAIsNull write SetFECHA_ALTAIsNull; + property OldFECHA_ALTA : DateTime read GetOldFECHA_ALTAValue; + property OldFECHA_ALTAIsNull : Boolean read GetOldFECHA_ALTAIsNull; + property FECHA_MODIFICACION : DateTime read GetFECHA_MODIFICACIONValue write SetFECHA_MODIFICACIONValue; + property FECHA_MODIFICACIONIsNull : Boolean read GetFECHA_MODIFICACIONIsNull write SetFECHA_MODIFICACIONIsNull; + property OldFECHA_MODIFICACION : DateTime read GetOldFECHA_MODIFICACIONValue; + property OldFECHA_MODIFICACIONIsNull : Boolean read GetOldFECHA_MODIFICACIONIsNull; + property USUARIO : String read GetUSUARIOValue write SetUSUARIOValue; + property USUARIOIsNull : Boolean read GetUSUARIOIsNull write SetUSUARIOIsNull; + property OldUSUARIO : String read GetOldUSUARIOValue; + property OldUSUARIOIsNull : Boolean read GetOldUSUARIOIsNull; + property LOGOTIPO : IROStream read GetLOGOTIPOValue; + property LOGOTIPOIsNull : Boolean read GetLOGOTIPOIsNull write SetLOGOTIPOIsNull; + property OldLOGOTIPO : IROStream read GetOldLOGOTIPOValue; + property OldLOGOTIPOIsNull : Boolean read GetOldLOGOTIPOIsNull; + property REGISTRO_MERCANTIL : String read GetREGISTRO_MERCANTILValue write SetREGISTRO_MERCANTILValue; + property REGISTRO_MERCANTILIsNull : Boolean read GetREGISTRO_MERCANTILIsNull write SetREGISTRO_MERCANTILIsNull; + property OldREGISTRO_MERCANTIL : String read GetOldREGISTRO_MERCANTILValue; + property OldREGISTRO_MERCANTILIsNull : Boolean read GetOldREGISTRO_MERCANTILIsNull; + property IVA : Float read GetIVAValue write SetIVAValue; + property IVAIsNull : Boolean read GetIVAIsNull write SetIVAIsNull; + property OldIVA : Float read GetOldIVAValue; + property OldIVAIsNull : Boolean read GetOldIVAIsNull; + + public + constructor Create(aBusinessProcessor: TDABusinessProcessor); override; + destructor Destroy; override; + + end; + + { IEmpresasDatosBancoDelta } + IEmpresasDatosBancoDelta = interface(IEmpresasDatosBanco) + ['{9C692459-7C4C-4403-8747-2D651CC6D3A2}'] + { Property getters and setters } + function GetOldIDValue : Integer; + function GetOldID_EMPRESAValue : Integer; + function GetOldNOMBREValue : String; + function GetOldENTIDADValue : String; + function GetOldSUCURSALValue : String; + function GetOldDCValue : String; + function GetOldCUENTAValue : String; + function GetOldSUFIJO_N19Value : String; + function GetOldSUFIJO_N58Value : String; + + { Properties } + property OldID : Integer read GetOldIDValue; + property OldID_EMPRESA : Integer read GetOldID_EMPRESAValue; + property OldNOMBRE : String read GetOldNOMBREValue; + property OldENTIDAD : String read GetOldENTIDADValue; + property OldSUCURSAL : String read GetOldSUCURSALValue; + property OldDC : String read GetOldDCValue; + property OldCUENTA : String read GetOldCUENTAValue; + property OldSUFIJO_N19 : String read GetOldSUFIJO_N19Value; + property OldSUFIJO_N58 : String read GetOldSUFIJO_N58Value; + end; + + { TEmpresasDatosBancoBusinessProcessorRules } + TEmpresasDatosBancoBusinessProcessorRules = class(TDABusinessProcessorRules, IEmpresasDatosBanco, IEmpresasDatosBancoDelta) + private + protected + { Property getters and setters } + function GetIDValue: Integer; virtual; + function GetIDIsNull: Boolean; virtual; + function GetOldIDValue: Integer; virtual; + function GetOldIDIsNull: Boolean; virtual; + procedure SetIDValue(const aValue: Integer); virtual; + procedure SetIDIsNull(const aValue: Boolean); virtual; + function GetID_EMPRESAValue: Integer; virtual; + function GetID_EMPRESAIsNull: Boolean; virtual; + function GetOldID_EMPRESAValue: Integer; virtual; + function GetOldID_EMPRESAIsNull: Boolean; virtual; + procedure SetID_EMPRESAValue(const aValue: Integer); virtual; + procedure SetID_EMPRESAIsNull(const aValue: Boolean); virtual; + function GetNOMBREValue: String; virtual; + function GetNOMBREIsNull: Boolean; virtual; + function GetOldNOMBREValue: String; virtual; + function GetOldNOMBREIsNull: Boolean; virtual; + procedure SetNOMBREValue(const aValue: String); virtual; + procedure SetNOMBREIsNull(const aValue: Boolean); virtual; + function GetENTIDADValue: String; virtual; + function GetENTIDADIsNull: Boolean; virtual; + function GetOldENTIDADValue: String; virtual; + function GetOldENTIDADIsNull: Boolean; virtual; + procedure SetENTIDADValue(const aValue: String); virtual; + procedure SetENTIDADIsNull(const aValue: Boolean); virtual; + function GetSUCURSALValue: String; virtual; + function GetSUCURSALIsNull: Boolean; virtual; + function GetOldSUCURSALValue: String; virtual; + function GetOldSUCURSALIsNull: Boolean; virtual; + procedure SetSUCURSALValue(const aValue: String); virtual; + procedure SetSUCURSALIsNull(const aValue: Boolean); virtual; + function GetDCValue: String; virtual; + function GetDCIsNull: Boolean; virtual; + function GetOldDCValue: String; virtual; + function GetOldDCIsNull: Boolean; virtual; + procedure SetDCValue(const aValue: String); virtual; + procedure SetDCIsNull(const aValue: Boolean); virtual; + function GetCUENTAValue: String; virtual; + function GetCUENTAIsNull: Boolean; virtual; + function GetOldCUENTAValue: String; virtual; + function GetOldCUENTAIsNull: Boolean; virtual; + procedure SetCUENTAValue(const aValue: String); virtual; + procedure SetCUENTAIsNull(const aValue: Boolean); virtual; + function GetSUFIJO_N19Value: String; virtual; + function GetSUFIJO_N19IsNull: Boolean; virtual; + function GetOldSUFIJO_N19Value: String; virtual; + function GetOldSUFIJO_N19IsNull: Boolean; virtual; + procedure SetSUFIJO_N19Value(const aValue: String); virtual; + procedure SetSUFIJO_N19IsNull(const aValue: Boolean); virtual; + function GetSUFIJO_N58Value: String; virtual; + function GetSUFIJO_N58IsNull: Boolean; virtual; + function GetOldSUFIJO_N58Value: String; virtual; + function GetOldSUFIJO_N58IsNull: Boolean; virtual; + procedure SetSUFIJO_N58Value(const aValue: String); virtual; + procedure SetSUFIJO_N58IsNull(const aValue: Boolean); virtual; + + { Properties } + property ID : Integer read GetIDValue write SetIDValue; + property IDIsNull : Boolean read GetIDIsNull write SetIDIsNull; + property OldID : Integer read GetOldIDValue; + property OldIDIsNull : Boolean read GetOldIDIsNull; + property ID_EMPRESA : Integer read GetID_EMPRESAValue write SetID_EMPRESAValue; + property ID_EMPRESAIsNull : Boolean read GetID_EMPRESAIsNull write SetID_EMPRESAIsNull; + property OldID_EMPRESA : Integer read GetOldID_EMPRESAValue; + property OldID_EMPRESAIsNull : Boolean read GetOldID_EMPRESAIsNull; + property NOMBRE : String read GetNOMBREValue write SetNOMBREValue; + property NOMBREIsNull : Boolean read GetNOMBREIsNull write SetNOMBREIsNull; + property OldNOMBRE : String read GetOldNOMBREValue; + property OldNOMBREIsNull : Boolean read GetOldNOMBREIsNull; + property ENTIDAD : String read GetENTIDADValue write SetENTIDADValue; + property ENTIDADIsNull : Boolean read GetENTIDADIsNull write SetENTIDADIsNull; + property OldENTIDAD : String read GetOldENTIDADValue; + property OldENTIDADIsNull : Boolean read GetOldENTIDADIsNull; + property SUCURSAL : String read GetSUCURSALValue write SetSUCURSALValue; + property SUCURSALIsNull : Boolean read GetSUCURSALIsNull write SetSUCURSALIsNull; + property OldSUCURSAL : String read GetOldSUCURSALValue; + property OldSUCURSALIsNull : Boolean read GetOldSUCURSALIsNull; + property DC : String read GetDCValue write SetDCValue; + property DCIsNull : Boolean read GetDCIsNull write SetDCIsNull; + property OldDC : String read GetOldDCValue; + property OldDCIsNull : Boolean read GetOldDCIsNull; + property CUENTA : String read GetCUENTAValue write SetCUENTAValue; + property CUENTAIsNull : Boolean read GetCUENTAIsNull write SetCUENTAIsNull; + property OldCUENTA : String read GetOldCUENTAValue; + property OldCUENTAIsNull : Boolean read GetOldCUENTAIsNull; + property SUFIJO_N19 : String read GetSUFIJO_N19Value write SetSUFIJO_N19Value; + property SUFIJO_N19IsNull : Boolean read GetSUFIJO_N19IsNull write SetSUFIJO_N19IsNull; + property OldSUFIJO_N19 : String read GetOldSUFIJO_N19Value; + property OldSUFIJO_N19IsNull : Boolean read GetOldSUFIJO_N19IsNull; + property SUFIJO_N58 : String read GetSUFIJO_N58Value write SetSUFIJO_N58Value; + property SUFIJO_N58IsNull : Boolean read GetSUFIJO_N58IsNull write SetSUFIJO_N58IsNull; + property OldSUFIJO_N58 : String read GetOldSUFIJO_N58Value; + property OldSUFIJO_N58IsNull : Boolean read GetOldSUFIJO_N58IsNull; + + public + constructor Create(aBusinessProcessor: TDABusinessProcessor); override; + destructor Destroy; override; + + end; + +implementation + +uses + Variants, uROBinaryHelpers, uDAInterfaces; + +{ TEmpresasBusinessProcessorRules } +constructor TEmpresasBusinessProcessorRules.Create(aBusinessProcessor: TDABusinessProcessor); +var + StrList: TStringList; + ROStream: TROStream; +begin + inherited; + + StrList := TStringList.Create; + StrList.OnChange := NOTAS_OnChange; + f_NOTAS := NewROStrings(StrList,True); + + ROStream := TROStream.Create; + ROStream.OnChange := LOGOTIPO_OnChange; + f_LOGOTIPO := ROStream; +end; + +destructor TEmpresasBusinessProcessorRules.Destroy; +begin + inherited; +end; + +procedure TEmpresasBusinessProcessorRules.NOTAS_OnChange(Sender: TObject); +begin + BusinessProcessor.CurrentChange.NewValueByName[fld_EmpresasNOTAS] := TStringList(Sender).Text; +end; + +procedure TEmpresasBusinessProcessorRules.LOGOTIPO_OnChange(Sender: TObject); +begin + BusinessProcessor.CurrentChange.NewValueByName[fld_EmpresasLOGOTIPO] := VariantBinaryFromBinary((TROStream(Sender) as IROStream).Stream); +end; + +function TEmpresasBusinessProcessorRules.GetIDValue: Integer; +begin + result := BusinessProcessor.CurrentChange.NewValueByName[fld_EmpresasID]; +end; + +function TEmpresasBusinessProcessorRules.GetIDIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_EmpresasID]); +end; + +function TEmpresasBusinessProcessorRules.GetOldIDValue: Integer; +begin + result := BusinessProcessor.CurrentChange.OldValueByName[fld_EmpresasID]; +end; + +function TEmpresasBusinessProcessorRules.GetOldIDIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_EmpresasID]); +end; + +procedure TEmpresasBusinessProcessorRules.SetIDValue(const aValue: Integer); +begin + BusinessProcessor.CurrentChange.NewValueByName[fld_EmpresasID] := aValue; +end; + +procedure TEmpresasBusinessProcessorRules.SetIDIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_EmpresasID] := Null; +end; + +function TEmpresasBusinessProcessorRules.GetNIF_CIFValue: String; +begin + result := BusinessProcessor.CurrentChange.NewValueByName[fld_EmpresasNIF_CIF]; +end; + +function TEmpresasBusinessProcessorRules.GetNIF_CIFIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_EmpresasNIF_CIF]); +end; + +function TEmpresasBusinessProcessorRules.GetOldNIF_CIFValue: String; +begin + result := BusinessProcessor.CurrentChange.OldValueByName[fld_EmpresasNIF_CIF]; +end; + +function TEmpresasBusinessProcessorRules.GetOldNIF_CIFIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_EmpresasNIF_CIF]); +end; + +procedure TEmpresasBusinessProcessorRules.SetNIF_CIFValue(const aValue: String); +begin + BusinessProcessor.CurrentChange.NewValueByName[fld_EmpresasNIF_CIF] := aValue; +end; + +procedure TEmpresasBusinessProcessorRules.SetNIF_CIFIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_EmpresasNIF_CIF] := Null; +end; + +function TEmpresasBusinessProcessorRules.GetNOMBREValue: String; +begin + result := BusinessProcessor.CurrentChange.NewValueByName[fld_EmpresasNOMBRE]; +end; + +function TEmpresasBusinessProcessorRules.GetNOMBREIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_EmpresasNOMBRE]); +end; + +function TEmpresasBusinessProcessorRules.GetOldNOMBREValue: String; +begin + result := BusinessProcessor.CurrentChange.OldValueByName[fld_EmpresasNOMBRE]; +end; + +function TEmpresasBusinessProcessorRules.GetOldNOMBREIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_EmpresasNOMBRE]); +end; + +procedure TEmpresasBusinessProcessorRules.SetNOMBREValue(const aValue: String); +begin + BusinessProcessor.CurrentChange.NewValueByName[fld_EmpresasNOMBRE] := aValue; +end; + +procedure TEmpresasBusinessProcessorRules.SetNOMBREIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_EmpresasNOMBRE] := Null; +end; + +function TEmpresasBusinessProcessorRules.GetRAZON_SOCIALValue: String; +begin + result := BusinessProcessor.CurrentChange.NewValueByName[fld_EmpresasRAZON_SOCIAL]; +end; + +function TEmpresasBusinessProcessorRules.GetRAZON_SOCIALIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_EmpresasRAZON_SOCIAL]); +end; + +function TEmpresasBusinessProcessorRules.GetOldRAZON_SOCIALValue: String; +begin + result := BusinessProcessor.CurrentChange.OldValueByName[fld_EmpresasRAZON_SOCIAL]; +end; + +function TEmpresasBusinessProcessorRules.GetOldRAZON_SOCIALIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_EmpresasRAZON_SOCIAL]); +end; + +procedure TEmpresasBusinessProcessorRules.SetRAZON_SOCIALValue(const aValue: String); +begin + BusinessProcessor.CurrentChange.NewValueByName[fld_EmpresasRAZON_SOCIAL] := aValue; +end; + +procedure TEmpresasBusinessProcessorRules.SetRAZON_SOCIALIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_EmpresasRAZON_SOCIAL] := Null; +end; + +function TEmpresasBusinessProcessorRules.GetCALLEValue: String; +begin + result := BusinessProcessor.CurrentChange.NewValueByName[fld_EmpresasCALLE]; +end; + +function TEmpresasBusinessProcessorRules.GetCALLEIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_EmpresasCALLE]); +end; + +function TEmpresasBusinessProcessorRules.GetOldCALLEValue: String; +begin + result := BusinessProcessor.CurrentChange.OldValueByName[fld_EmpresasCALLE]; +end; + +function TEmpresasBusinessProcessorRules.GetOldCALLEIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_EmpresasCALLE]); +end; + +procedure TEmpresasBusinessProcessorRules.SetCALLEValue(const aValue: String); +begin + BusinessProcessor.CurrentChange.NewValueByName[fld_EmpresasCALLE] := aValue; +end; + +procedure TEmpresasBusinessProcessorRules.SetCALLEIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_EmpresasCALLE] := Null; +end; + +function TEmpresasBusinessProcessorRules.GetPOBLACIONValue: String; +begin + result := BusinessProcessor.CurrentChange.NewValueByName[fld_EmpresasPOBLACION]; +end; + +function TEmpresasBusinessProcessorRules.GetPOBLACIONIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_EmpresasPOBLACION]); +end; + +function TEmpresasBusinessProcessorRules.GetOldPOBLACIONValue: String; +begin + result := BusinessProcessor.CurrentChange.OldValueByName[fld_EmpresasPOBLACION]; +end; + +function TEmpresasBusinessProcessorRules.GetOldPOBLACIONIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_EmpresasPOBLACION]); +end; + +procedure TEmpresasBusinessProcessorRules.SetPOBLACIONValue(const aValue: String); +begin + BusinessProcessor.CurrentChange.NewValueByName[fld_EmpresasPOBLACION] := aValue; +end; + +procedure TEmpresasBusinessProcessorRules.SetPOBLACIONIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_EmpresasPOBLACION] := Null; +end; + +function TEmpresasBusinessProcessorRules.GetPROVINCIAValue: String; +begin + result := BusinessProcessor.CurrentChange.NewValueByName[fld_EmpresasPROVINCIA]; +end; + +function TEmpresasBusinessProcessorRules.GetPROVINCIAIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_EmpresasPROVINCIA]); +end; + +function TEmpresasBusinessProcessorRules.GetOldPROVINCIAValue: String; +begin + result := BusinessProcessor.CurrentChange.OldValueByName[fld_EmpresasPROVINCIA]; +end; + +function TEmpresasBusinessProcessorRules.GetOldPROVINCIAIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_EmpresasPROVINCIA]); +end; + +procedure TEmpresasBusinessProcessorRules.SetPROVINCIAValue(const aValue: String); +begin + BusinessProcessor.CurrentChange.NewValueByName[fld_EmpresasPROVINCIA] := aValue; +end; + +procedure TEmpresasBusinessProcessorRules.SetPROVINCIAIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_EmpresasPROVINCIA] := Null; +end; + +function TEmpresasBusinessProcessorRules.GetCODIGO_POSTALValue: String; +begin + result := BusinessProcessor.CurrentChange.NewValueByName[fld_EmpresasCODIGO_POSTAL]; +end; + +function TEmpresasBusinessProcessorRules.GetCODIGO_POSTALIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_EmpresasCODIGO_POSTAL]); +end; + +function TEmpresasBusinessProcessorRules.GetOldCODIGO_POSTALValue: String; +begin + result := BusinessProcessor.CurrentChange.OldValueByName[fld_EmpresasCODIGO_POSTAL]; +end; + +function TEmpresasBusinessProcessorRules.GetOldCODIGO_POSTALIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_EmpresasCODIGO_POSTAL]); +end; + +procedure TEmpresasBusinessProcessorRules.SetCODIGO_POSTALValue(const aValue: String); +begin + BusinessProcessor.CurrentChange.NewValueByName[fld_EmpresasCODIGO_POSTAL] := aValue; +end; + +procedure TEmpresasBusinessProcessorRules.SetCODIGO_POSTALIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_EmpresasCODIGO_POSTAL] := Null; +end; + +function TEmpresasBusinessProcessorRules.GetTELEFONO_1Value: String; +begin + result := BusinessProcessor.CurrentChange.NewValueByName[fld_EmpresasTELEFONO_1]; +end; + +function TEmpresasBusinessProcessorRules.GetTELEFONO_1IsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_EmpresasTELEFONO_1]); +end; + +function TEmpresasBusinessProcessorRules.GetOldTELEFONO_1Value: String; +begin + result := BusinessProcessor.CurrentChange.OldValueByName[fld_EmpresasTELEFONO_1]; +end; + +function TEmpresasBusinessProcessorRules.GetOldTELEFONO_1IsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_EmpresasTELEFONO_1]); +end; + +procedure TEmpresasBusinessProcessorRules.SetTELEFONO_1Value(const aValue: String); +begin + BusinessProcessor.CurrentChange.NewValueByName[fld_EmpresasTELEFONO_1] := aValue; +end; + +procedure TEmpresasBusinessProcessorRules.SetTELEFONO_1IsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_EmpresasTELEFONO_1] := Null; +end; + +function TEmpresasBusinessProcessorRules.GetTELEFONO_2Value: String; +begin + result := BusinessProcessor.CurrentChange.NewValueByName[fld_EmpresasTELEFONO_2]; +end; + +function TEmpresasBusinessProcessorRules.GetTELEFONO_2IsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_EmpresasTELEFONO_2]); +end; + +function TEmpresasBusinessProcessorRules.GetOldTELEFONO_2Value: String; +begin + result := BusinessProcessor.CurrentChange.OldValueByName[fld_EmpresasTELEFONO_2]; +end; + +function TEmpresasBusinessProcessorRules.GetOldTELEFONO_2IsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_EmpresasTELEFONO_2]); +end; + +procedure TEmpresasBusinessProcessorRules.SetTELEFONO_2Value(const aValue: String); +begin + BusinessProcessor.CurrentChange.NewValueByName[fld_EmpresasTELEFONO_2] := aValue; +end; + +procedure TEmpresasBusinessProcessorRules.SetTELEFONO_2IsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_EmpresasTELEFONO_2] := Null; +end; + +function TEmpresasBusinessProcessorRules.GetMOVIL_1Value: String; +begin + result := BusinessProcessor.CurrentChange.NewValueByName[fld_EmpresasMOVIL_1]; +end; + +function TEmpresasBusinessProcessorRules.GetMOVIL_1IsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_EmpresasMOVIL_1]); +end; + +function TEmpresasBusinessProcessorRules.GetOldMOVIL_1Value: String; +begin + result := BusinessProcessor.CurrentChange.OldValueByName[fld_EmpresasMOVIL_1]; +end; + +function TEmpresasBusinessProcessorRules.GetOldMOVIL_1IsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_EmpresasMOVIL_1]); +end; + +procedure TEmpresasBusinessProcessorRules.SetMOVIL_1Value(const aValue: String); +begin + BusinessProcessor.CurrentChange.NewValueByName[fld_EmpresasMOVIL_1] := aValue; +end; + +procedure TEmpresasBusinessProcessorRules.SetMOVIL_1IsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_EmpresasMOVIL_1] := Null; +end; + +function TEmpresasBusinessProcessorRules.GetMOVIL_2Value: String; +begin + result := BusinessProcessor.CurrentChange.NewValueByName[fld_EmpresasMOVIL_2]; +end; + +function TEmpresasBusinessProcessorRules.GetMOVIL_2IsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_EmpresasMOVIL_2]); +end; + +function TEmpresasBusinessProcessorRules.GetOldMOVIL_2Value: String; +begin + result := BusinessProcessor.CurrentChange.OldValueByName[fld_EmpresasMOVIL_2]; +end; + +function TEmpresasBusinessProcessorRules.GetOldMOVIL_2IsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_EmpresasMOVIL_2]); +end; + +procedure TEmpresasBusinessProcessorRules.SetMOVIL_2Value(const aValue: String); +begin + BusinessProcessor.CurrentChange.NewValueByName[fld_EmpresasMOVIL_2] := aValue; +end; + +procedure TEmpresasBusinessProcessorRules.SetMOVIL_2IsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_EmpresasMOVIL_2] := Null; +end; + +function TEmpresasBusinessProcessorRules.GetFAXValue: String; +begin + result := BusinessProcessor.CurrentChange.NewValueByName[fld_EmpresasFAX]; +end; + +function TEmpresasBusinessProcessorRules.GetFAXIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_EmpresasFAX]); +end; + +function TEmpresasBusinessProcessorRules.GetOldFAXValue: String; +begin + result := BusinessProcessor.CurrentChange.OldValueByName[fld_EmpresasFAX]; +end; + +function TEmpresasBusinessProcessorRules.GetOldFAXIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_EmpresasFAX]); +end; + +procedure TEmpresasBusinessProcessorRules.SetFAXValue(const aValue: String); +begin + BusinessProcessor.CurrentChange.NewValueByName[fld_EmpresasFAX] := aValue; +end; + +procedure TEmpresasBusinessProcessorRules.SetFAXIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_EmpresasFAX] := Null; +end; + +function TEmpresasBusinessProcessorRules.GetEMAIL_1Value: String; +begin + result := BusinessProcessor.CurrentChange.NewValueByName[fld_EmpresasEMAIL_1]; +end; + +function TEmpresasBusinessProcessorRules.GetEMAIL_1IsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_EmpresasEMAIL_1]); +end; + +function TEmpresasBusinessProcessorRules.GetOldEMAIL_1Value: String; +begin + result := BusinessProcessor.CurrentChange.OldValueByName[fld_EmpresasEMAIL_1]; +end; + +function TEmpresasBusinessProcessorRules.GetOldEMAIL_1IsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_EmpresasEMAIL_1]); +end; + +procedure TEmpresasBusinessProcessorRules.SetEMAIL_1Value(const aValue: String); +begin + BusinessProcessor.CurrentChange.NewValueByName[fld_EmpresasEMAIL_1] := aValue; +end; + +procedure TEmpresasBusinessProcessorRules.SetEMAIL_1IsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_EmpresasEMAIL_1] := Null; +end; + +function TEmpresasBusinessProcessorRules.GetEMAIL_2Value: String; +begin + result := BusinessProcessor.CurrentChange.NewValueByName[fld_EmpresasEMAIL_2]; +end; + +function TEmpresasBusinessProcessorRules.GetEMAIL_2IsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_EmpresasEMAIL_2]); +end; + +function TEmpresasBusinessProcessorRules.GetOldEMAIL_2Value: String; +begin + result := BusinessProcessor.CurrentChange.OldValueByName[fld_EmpresasEMAIL_2]; +end; + +function TEmpresasBusinessProcessorRules.GetOldEMAIL_2IsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_EmpresasEMAIL_2]); +end; + +procedure TEmpresasBusinessProcessorRules.SetEMAIL_2Value(const aValue: String); +begin + BusinessProcessor.CurrentChange.NewValueByName[fld_EmpresasEMAIL_2] := aValue; +end; + +procedure TEmpresasBusinessProcessorRules.SetEMAIL_2IsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_EmpresasEMAIL_2] := Null; +end; + +function TEmpresasBusinessProcessorRules.GetPAGINA_WEBValue: String; +begin + result := BusinessProcessor.CurrentChange.NewValueByName[fld_EmpresasPAGINA_WEB]; +end; + +function TEmpresasBusinessProcessorRules.GetPAGINA_WEBIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_EmpresasPAGINA_WEB]); +end; + +function TEmpresasBusinessProcessorRules.GetOldPAGINA_WEBValue: String; +begin + result := BusinessProcessor.CurrentChange.OldValueByName[fld_EmpresasPAGINA_WEB]; +end; + +function TEmpresasBusinessProcessorRules.GetOldPAGINA_WEBIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_EmpresasPAGINA_WEB]); +end; + +procedure TEmpresasBusinessProcessorRules.SetPAGINA_WEBValue(const aValue: String); +begin + BusinessProcessor.CurrentChange.NewValueByName[fld_EmpresasPAGINA_WEB] := aValue; +end; + +procedure TEmpresasBusinessProcessorRules.SetPAGINA_WEBIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_EmpresasPAGINA_WEB] := Null; +end; + +function TEmpresasBusinessProcessorRules.GetNOTASValue: IROStrings; +begin + result := f_NOTAS; + result.Text := BusinessProcessor.CurrentChange.NewValueByName[fld_EmpresasNOTAS]; +end; + +function TEmpresasBusinessProcessorRules.GetNOTASIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_EmpresasNOTAS]); +end; + +function TEmpresasBusinessProcessorRules.GetOldNOTASValue: IROStrings; +begin + result := NewROStrings(); + result.Text := BusinessProcessor.CurrentChange.OldValueByName[fld_EmpresasNOTAS]; +end; + +function TEmpresasBusinessProcessorRules.GetOldNOTASIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_EmpresasNOTAS]); +end; + +procedure TEmpresasBusinessProcessorRules.SetNOTASIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_EmpresasNOTAS] := Null; +end; + +function TEmpresasBusinessProcessorRules.GetFECHA_ALTAValue: DateTime; +begin + result := BusinessProcessor.CurrentChange.NewValueByName[fld_EmpresasFECHA_ALTA]; +end; + +function TEmpresasBusinessProcessorRules.GetFECHA_ALTAIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_EmpresasFECHA_ALTA]); +end; + +function TEmpresasBusinessProcessorRules.GetOldFECHA_ALTAValue: DateTime; +begin + result := BusinessProcessor.CurrentChange.OldValueByName[fld_EmpresasFECHA_ALTA]; +end; + +function TEmpresasBusinessProcessorRules.GetOldFECHA_ALTAIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_EmpresasFECHA_ALTA]); +end; + +procedure TEmpresasBusinessProcessorRules.SetFECHA_ALTAValue(const aValue: DateTime); +begin + BusinessProcessor.CurrentChange.NewValueByName[fld_EmpresasFECHA_ALTA] := aValue; +end; + +procedure TEmpresasBusinessProcessorRules.SetFECHA_ALTAIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_EmpresasFECHA_ALTA] := Null; +end; + +function TEmpresasBusinessProcessorRules.GetFECHA_MODIFICACIONValue: DateTime; +begin + result := BusinessProcessor.CurrentChange.NewValueByName[fld_EmpresasFECHA_MODIFICACION]; +end; + +function TEmpresasBusinessProcessorRules.GetFECHA_MODIFICACIONIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_EmpresasFECHA_MODIFICACION]); +end; + +function TEmpresasBusinessProcessorRules.GetOldFECHA_MODIFICACIONValue: DateTime; +begin + result := BusinessProcessor.CurrentChange.OldValueByName[fld_EmpresasFECHA_MODIFICACION]; +end; + +function TEmpresasBusinessProcessorRules.GetOldFECHA_MODIFICACIONIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_EmpresasFECHA_MODIFICACION]); +end; + +procedure TEmpresasBusinessProcessorRules.SetFECHA_MODIFICACIONValue(const aValue: DateTime); +begin + BusinessProcessor.CurrentChange.NewValueByName[fld_EmpresasFECHA_MODIFICACION] := aValue; +end; + +procedure TEmpresasBusinessProcessorRules.SetFECHA_MODIFICACIONIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_EmpresasFECHA_MODIFICACION] := Null; +end; + +function TEmpresasBusinessProcessorRules.GetUSUARIOValue: String; +begin + result := BusinessProcessor.CurrentChange.NewValueByName[fld_EmpresasUSUARIO]; +end; + +function TEmpresasBusinessProcessorRules.GetUSUARIOIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_EmpresasUSUARIO]); +end; + +function TEmpresasBusinessProcessorRules.GetOldUSUARIOValue: String; +begin + result := BusinessProcessor.CurrentChange.OldValueByName[fld_EmpresasUSUARIO]; +end; + +function TEmpresasBusinessProcessorRules.GetOldUSUARIOIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_EmpresasUSUARIO]); +end; + +procedure TEmpresasBusinessProcessorRules.SetUSUARIOValue(const aValue: String); +begin + BusinessProcessor.CurrentChange.NewValueByName[fld_EmpresasUSUARIO] := aValue; +end; + +procedure TEmpresasBusinessProcessorRules.SetUSUARIOIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_EmpresasUSUARIO] := Null; +end; + +function TEmpresasBusinessProcessorRules.GetLOGOTIPOValue: IROStream; +begin + result := f_LOGOTIPO; + result.Position := 0; + if not Result.InUpdateMode then begin + WriteVariantBinaryToBinary(BusinessProcessor.CurrentChange.NewValueByName[fld_EmpresasLOGOTIPO], result.Stream); + result.Position := 0; + end; +end; + +function TEmpresasBusinessProcessorRules.GetLOGOTIPOIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_EmpresasLOGOTIPO]); +end; + +function TEmpresasBusinessProcessorRules.GetOldLOGOTIPOValue: IROStream; +begin + result := NewROStream(); + WriteVariantBinaryToBinary(BusinessProcessor.CurrentChange.OldValueByName[fld_EmpresasLOGOTIPO], result.Stream); +end; + +function TEmpresasBusinessProcessorRules.GetOldLOGOTIPOIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_EmpresasLOGOTIPO]); +end; + +procedure TEmpresasBusinessProcessorRules.SetLOGOTIPOIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_EmpresasLOGOTIPO] := Null; +end; + +function TEmpresasBusinessProcessorRules.GetREGISTRO_MERCANTILValue: String; +begin + result := BusinessProcessor.CurrentChange.NewValueByName[fld_EmpresasREGISTRO_MERCANTIL]; +end; + +function TEmpresasBusinessProcessorRules.GetREGISTRO_MERCANTILIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_EmpresasREGISTRO_MERCANTIL]); +end; + +function TEmpresasBusinessProcessorRules.GetOldREGISTRO_MERCANTILValue: String; +begin + result := BusinessProcessor.CurrentChange.OldValueByName[fld_EmpresasREGISTRO_MERCANTIL]; +end; + +function TEmpresasBusinessProcessorRules.GetOldREGISTRO_MERCANTILIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_EmpresasREGISTRO_MERCANTIL]); +end; + +procedure TEmpresasBusinessProcessorRules.SetREGISTRO_MERCANTILValue(const aValue: String); +begin + BusinessProcessor.CurrentChange.NewValueByName[fld_EmpresasREGISTRO_MERCANTIL] := aValue; +end; + +procedure TEmpresasBusinessProcessorRules.SetREGISTRO_MERCANTILIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_EmpresasREGISTRO_MERCANTIL] := Null; +end; + +function TEmpresasBusinessProcessorRules.GetIVAValue: Float; +begin + result := BusinessProcessor.CurrentChange.NewValueByName[fld_EmpresasIVA]; +end; + +function TEmpresasBusinessProcessorRules.GetIVAIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_EmpresasIVA]); +end; + +function TEmpresasBusinessProcessorRules.GetOldIVAValue: Float; +begin + result := BusinessProcessor.CurrentChange.OldValueByName[fld_EmpresasIVA]; +end; + +function TEmpresasBusinessProcessorRules.GetOldIVAIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_EmpresasIVA]); +end; + +procedure TEmpresasBusinessProcessorRules.SetIVAValue(const aValue: Float); +begin + BusinessProcessor.CurrentChange.NewValueByName[fld_EmpresasIVA] := aValue; +end; + +procedure TEmpresasBusinessProcessorRules.SetIVAIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_EmpresasIVA] := Null; +end; + + +{ TEmpresasDatosBancoBusinessProcessorRules } +constructor TEmpresasDatosBancoBusinessProcessorRules.Create(aBusinessProcessor: TDABusinessProcessor); +begin + inherited; +end; + +destructor TEmpresasDatosBancoBusinessProcessorRules.Destroy; +begin + inherited; +end; + +function TEmpresasDatosBancoBusinessProcessorRules.GetIDValue: Integer; +begin + result := BusinessProcessor.CurrentChange.NewValueByName[fld_EmpresasDatosBancoID]; +end; + +function TEmpresasDatosBancoBusinessProcessorRules.GetIDIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_EmpresasDatosBancoID]); +end; + +function TEmpresasDatosBancoBusinessProcessorRules.GetOldIDValue: Integer; +begin + result := BusinessProcessor.CurrentChange.OldValueByName[fld_EmpresasDatosBancoID]; +end; + +function TEmpresasDatosBancoBusinessProcessorRules.GetOldIDIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_EmpresasDatosBancoID]); +end; + +procedure TEmpresasDatosBancoBusinessProcessorRules.SetIDValue(const aValue: Integer); +begin + BusinessProcessor.CurrentChange.NewValueByName[fld_EmpresasDatosBancoID] := aValue; +end; + +procedure TEmpresasDatosBancoBusinessProcessorRules.SetIDIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_EmpresasDatosBancoID] := Null; +end; + +function TEmpresasDatosBancoBusinessProcessorRules.GetID_EMPRESAValue: Integer; +begin + result := BusinessProcessor.CurrentChange.NewValueByName[fld_EmpresasDatosBancoID_EMPRESA]; +end; + +function TEmpresasDatosBancoBusinessProcessorRules.GetID_EMPRESAIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_EmpresasDatosBancoID_EMPRESA]); +end; + +function TEmpresasDatosBancoBusinessProcessorRules.GetOldID_EMPRESAValue: Integer; +begin + result := BusinessProcessor.CurrentChange.OldValueByName[fld_EmpresasDatosBancoID_EMPRESA]; +end; + +function TEmpresasDatosBancoBusinessProcessorRules.GetOldID_EMPRESAIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_EmpresasDatosBancoID_EMPRESA]); +end; + +procedure TEmpresasDatosBancoBusinessProcessorRules.SetID_EMPRESAValue(const aValue: Integer); +begin + BusinessProcessor.CurrentChange.NewValueByName[fld_EmpresasDatosBancoID_EMPRESA] := aValue; +end; + +procedure TEmpresasDatosBancoBusinessProcessorRules.SetID_EMPRESAIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_EmpresasDatosBancoID_EMPRESA] := Null; +end; + +function TEmpresasDatosBancoBusinessProcessorRules.GetNOMBREValue: String; +begin + result := BusinessProcessor.CurrentChange.NewValueByName[fld_EmpresasDatosBancoNOMBRE]; +end; + +function TEmpresasDatosBancoBusinessProcessorRules.GetNOMBREIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_EmpresasDatosBancoNOMBRE]); +end; + +function TEmpresasDatosBancoBusinessProcessorRules.GetOldNOMBREValue: String; +begin + result := BusinessProcessor.CurrentChange.OldValueByName[fld_EmpresasDatosBancoNOMBRE]; +end; + +function TEmpresasDatosBancoBusinessProcessorRules.GetOldNOMBREIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_EmpresasDatosBancoNOMBRE]); +end; + +procedure TEmpresasDatosBancoBusinessProcessorRules.SetNOMBREValue(const aValue: String); +begin + BusinessProcessor.CurrentChange.NewValueByName[fld_EmpresasDatosBancoNOMBRE] := aValue; +end; + +procedure TEmpresasDatosBancoBusinessProcessorRules.SetNOMBREIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_EmpresasDatosBancoNOMBRE] := Null; +end; + +function TEmpresasDatosBancoBusinessProcessorRules.GetENTIDADValue: String; +begin + result := BusinessProcessor.CurrentChange.NewValueByName[fld_EmpresasDatosBancoENTIDAD]; +end; + +function TEmpresasDatosBancoBusinessProcessorRules.GetENTIDADIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_EmpresasDatosBancoENTIDAD]); +end; + +function TEmpresasDatosBancoBusinessProcessorRules.GetOldENTIDADValue: String; +begin + result := BusinessProcessor.CurrentChange.OldValueByName[fld_EmpresasDatosBancoENTIDAD]; +end; + +function TEmpresasDatosBancoBusinessProcessorRules.GetOldENTIDADIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_EmpresasDatosBancoENTIDAD]); +end; + +procedure TEmpresasDatosBancoBusinessProcessorRules.SetENTIDADValue(const aValue: String); +begin + BusinessProcessor.CurrentChange.NewValueByName[fld_EmpresasDatosBancoENTIDAD] := aValue; +end; + +procedure TEmpresasDatosBancoBusinessProcessorRules.SetENTIDADIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_EmpresasDatosBancoENTIDAD] := Null; +end; + +function TEmpresasDatosBancoBusinessProcessorRules.GetSUCURSALValue: String; +begin + result := BusinessProcessor.CurrentChange.NewValueByName[fld_EmpresasDatosBancoSUCURSAL]; +end; + +function TEmpresasDatosBancoBusinessProcessorRules.GetSUCURSALIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_EmpresasDatosBancoSUCURSAL]); +end; + +function TEmpresasDatosBancoBusinessProcessorRules.GetOldSUCURSALValue: String; +begin + result := BusinessProcessor.CurrentChange.OldValueByName[fld_EmpresasDatosBancoSUCURSAL]; +end; + +function TEmpresasDatosBancoBusinessProcessorRules.GetOldSUCURSALIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_EmpresasDatosBancoSUCURSAL]); +end; + +procedure TEmpresasDatosBancoBusinessProcessorRules.SetSUCURSALValue(const aValue: String); +begin + BusinessProcessor.CurrentChange.NewValueByName[fld_EmpresasDatosBancoSUCURSAL] := aValue; +end; + +procedure TEmpresasDatosBancoBusinessProcessorRules.SetSUCURSALIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_EmpresasDatosBancoSUCURSAL] := Null; +end; + +function TEmpresasDatosBancoBusinessProcessorRules.GetDCValue: String; +begin + result := BusinessProcessor.CurrentChange.NewValueByName[fld_EmpresasDatosBancoDC]; +end; + +function TEmpresasDatosBancoBusinessProcessorRules.GetDCIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_EmpresasDatosBancoDC]); +end; + +function TEmpresasDatosBancoBusinessProcessorRules.GetOldDCValue: String; +begin + result := BusinessProcessor.CurrentChange.OldValueByName[fld_EmpresasDatosBancoDC]; +end; + +function TEmpresasDatosBancoBusinessProcessorRules.GetOldDCIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_EmpresasDatosBancoDC]); +end; + +procedure TEmpresasDatosBancoBusinessProcessorRules.SetDCValue(const aValue: String); +begin + BusinessProcessor.CurrentChange.NewValueByName[fld_EmpresasDatosBancoDC] := aValue; +end; + +procedure TEmpresasDatosBancoBusinessProcessorRules.SetDCIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_EmpresasDatosBancoDC] := Null; +end; + +function TEmpresasDatosBancoBusinessProcessorRules.GetCUENTAValue: String; +begin + result := BusinessProcessor.CurrentChange.NewValueByName[fld_EmpresasDatosBancoCUENTA]; +end; + +function TEmpresasDatosBancoBusinessProcessorRules.GetCUENTAIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_EmpresasDatosBancoCUENTA]); +end; + +function TEmpresasDatosBancoBusinessProcessorRules.GetOldCUENTAValue: String; +begin + result := BusinessProcessor.CurrentChange.OldValueByName[fld_EmpresasDatosBancoCUENTA]; +end; + +function TEmpresasDatosBancoBusinessProcessorRules.GetOldCUENTAIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_EmpresasDatosBancoCUENTA]); +end; + +procedure TEmpresasDatosBancoBusinessProcessorRules.SetCUENTAValue(const aValue: String); +begin + BusinessProcessor.CurrentChange.NewValueByName[fld_EmpresasDatosBancoCUENTA] := aValue; +end; + +procedure TEmpresasDatosBancoBusinessProcessorRules.SetCUENTAIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_EmpresasDatosBancoCUENTA] := Null; +end; + +function TEmpresasDatosBancoBusinessProcessorRules.GetSUFIJO_N19Value: String; +begin + result := BusinessProcessor.CurrentChange.NewValueByName[fld_EmpresasDatosBancoSUFIJO_N19]; +end; + +function TEmpresasDatosBancoBusinessProcessorRules.GetSUFIJO_N19IsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_EmpresasDatosBancoSUFIJO_N19]); +end; + +function TEmpresasDatosBancoBusinessProcessorRules.GetOldSUFIJO_N19Value: String; +begin + result := BusinessProcessor.CurrentChange.OldValueByName[fld_EmpresasDatosBancoSUFIJO_N19]; +end; + +function TEmpresasDatosBancoBusinessProcessorRules.GetOldSUFIJO_N19IsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_EmpresasDatosBancoSUFIJO_N19]); +end; + +procedure TEmpresasDatosBancoBusinessProcessorRules.SetSUFIJO_N19Value(const aValue: String); +begin + BusinessProcessor.CurrentChange.NewValueByName[fld_EmpresasDatosBancoSUFIJO_N19] := aValue; +end; + +procedure TEmpresasDatosBancoBusinessProcessorRules.SetSUFIJO_N19IsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_EmpresasDatosBancoSUFIJO_N19] := Null; +end; + +function TEmpresasDatosBancoBusinessProcessorRules.GetSUFIJO_N58Value: String; +begin + result := BusinessProcessor.CurrentChange.NewValueByName[fld_EmpresasDatosBancoSUFIJO_N58]; +end; + +function TEmpresasDatosBancoBusinessProcessorRules.GetSUFIJO_N58IsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_EmpresasDatosBancoSUFIJO_N58]); +end; + +function TEmpresasDatosBancoBusinessProcessorRules.GetOldSUFIJO_N58Value: String; +begin + result := BusinessProcessor.CurrentChange.OldValueByName[fld_EmpresasDatosBancoSUFIJO_N58]; +end; + +function TEmpresasDatosBancoBusinessProcessorRules.GetOldSUFIJO_N58IsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_EmpresasDatosBancoSUFIJO_N58]); +end; + +procedure TEmpresasDatosBancoBusinessProcessorRules.SetSUFIJO_N58Value(const aValue: String); +begin + BusinessProcessor.CurrentChange.NewValueByName[fld_EmpresasDatosBancoSUFIJO_N58] := aValue; +end; + +procedure TEmpresasDatosBancoBusinessProcessorRules.SetSUFIJO_N58IsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_EmpresasDatosBancoSUFIJO_N58] := Null; +end; + + +initialization + RegisterBusinessProcessorRules(RID_EmpresasDelta, TEmpresasBusinessProcessorRules); + RegisterBusinessProcessorRules(RID_EmpresasDatosBancoDelta, TEmpresasDatosBancoBusinessProcessorRules); + +end. diff --git a/Source/Modulos/Empresas/Model/uBizEmpresas.pas b/Source/ApplicationBase/Empresas/Model/uBizEmpresas.pas similarity index 94% rename from Source/Modulos/Empresas/Model/uBizEmpresas.pas rename to Source/ApplicationBase/Empresas/Model/uBizEmpresas.pas index be05cd05..cc9eeb14 100644 --- a/Source/Modulos/Empresas/Model/uBizEmpresas.pas +++ b/Source/ApplicationBase/Empresas/Model/uBizEmpresas.pas @@ -81,7 +81,6 @@ end; procedure TBizEmpresa.OnNewRecord(Sender: TDADataTable); begin inherited; - ID := GetRecNo; // -1, -2, -3... IniciarValoresEmpresaNueva; end; diff --git a/Source/Modulos/Empresas/Model/uBizEmpresasDatosBancarios.pas b/Source/ApplicationBase/Empresas/Model/uBizEmpresasDatosBancarios.pas similarity index 81% rename from Source/Modulos/Empresas/Model/uBizEmpresasDatosBancarios.pas rename to Source/ApplicationBase/Empresas/Model/uBizEmpresasDatosBancarios.pas index d86524c7..54e810f8 100644 --- a/Source/Modulos/Empresas/Model/uBizEmpresasDatosBancarios.pas +++ b/Source/ApplicationBase/Empresas/Model/uBizEmpresasDatosBancarios.pas @@ -18,7 +18,6 @@ type TBizEmpresasDatosBancarios = class(TEmpresasDatosBancoDataTableRules, IBizEmpresasDatosBancarios) protected procedure BeforeInsert(Sender: TDADataTable); override; - procedure OnNewRecord(Sender: TDADataTable); override; public function EsNuevo : Boolean; end; @@ -45,12 +44,6 @@ begin Result := (ID < 0); end; -procedure TBizEmpresasDatosBancarios.OnNewRecord(Sender: TDADataTable); -begin - inherited; - ID := GetRecNo; // -1, -2, -3... -end; - initialization RegisterDataTableRules(BIZ_CLIENT_EMPRESAS_DATOS_BANCARIOS, TBizEmpresasDatosBancarios); diff --git a/Source/ApplicationBase/Empresas/Servidor/srvEmpresas_Impl.dfm b/Source/ApplicationBase/Empresas/Servidor/srvEmpresas_Impl.dfm new file mode 100644 index 00000000..265163ef --- /dev/null +++ b/Source/ApplicationBase/Empresas/Servidor/srvEmpresas_Impl.dfm @@ -0,0 +1,633 @@ +object srvEmpresas: TsrvEmpresas + OldCreateOrder = True + OnCreate = DARemoteServiceCreate + RequiresSession = True + ConnectionName = 'IBX' + ServiceSchema = schEmpresas + ServiceDataStreamer = DABin2DataStreamer + ExportedDataTables = <> + BeforeAcquireConnection = DataAbstractServiceBeforeAcquireConnection + BeforeGetDatasetData = DataAbstractServiceBeforeGetDatasetData + Height = 166 + Width = 351 + object schEmpresas: TDASchema + ConnectionManager = dmServer.ConnectionManager + DataDictionary = DataDictionary + Diagrams = Diagrams + Datasets = < + item + Params = <> + Statements = < + item + Connection = 'IBX' + Default = True + TargetTable = 'EMPRESAS' + Name = 'IBX' + StatementType = stAutoSQL + ColumnMappings = < + item + DatasetField = 'ID' + TableField = 'ID' + end + item + DatasetField = 'NIF_CIF' + TableField = 'NIF_CIF' + end + item + DatasetField = 'NOMBRE' + TableField = 'NOMBRE' + end + item + DatasetField = 'RAZON_SOCIAL' + TableField = 'RAZON_SOCIAL' + end + item + DatasetField = 'CALLE' + TableField = 'CALLE' + end + item + DatasetField = 'POBLACION' + TableField = 'POBLACION' + end + item + DatasetField = 'PROVINCIA' + TableField = 'PROVINCIA' + end + item + DatasetField = 'CODIGO_POSTAL' + TableField = 'CODIGO_POSTAL' + end + item + DatasetField = 'TELEFONO_1' + TableField = 'TELEFONO_1' + end + item + DatasetField = 'TELEFONO_2' + TableField = 'TELEFONO_2' + end + item + DatasetField = 'MOVIL_1' + TableField = 'MOVIL_1' + end + item + DatasetField = 'MOVIL_2' + TableField = 'MOVIL_2' + end + item + DatasetField = 'FAX' + TableField = 'FAX' + end + item + DatasetField = 'EMAIL_1' + TableField = 'EMAIL_1' + end + item + DatasetField = 'EMAIL_2' + TableField = 'EMAIL_2' + end + item + DatasetField = 'PAGINA_WEB' + TableField = 'PAGINA_WEB' + end + item + DatasetField = 'NOTAS' + TableField = 'NOTAS' + end + item + DatasetField = 'FECHA_ALTA' + TableField = 'FECHA_ALTA' + end + item + DatasetField = 'FECHA_MODIFICACION' + TableField = 'FECHA_MODIFICACION' + end + item + DatasetField = 'USUARIO' + TableField = 'USUARIO' + end + item + DatasetField = 'LOGOTIPO' + TableField = 'LOGOTIPO' + end + item + DatasetField = 'REGISTRO_MERCANTIL' + TableField = 'REGISTRO_MERCANTIL' + end + item + DatasetField = 'IVA' + TableField = 'IVA' + end> + end> + Name = 'Empresas' + Fields = < + item + Name = 'ID' + DataType = datAutoInc + GeneratorName = 'GEN_EMPRESAS_ID' + ServerAutoRefresh = True + DictionaryEntry = 'Empresas_ID' + InPrimaryKey = True + end + item + Name = 'NIF_CIF' + DataType = datString + Size = 15 + DictionaryEntry = 'Empresas_NIF_CIF' + end + item + Name = 'NOMBRE' + DataType = datString + Size = 255 + DictionaryEntry = 'Empresas_NOMBRE' + end + item + Name = 'RAZON_SOCIAL' + DataType = datString + Size = 255 + DictionaryEntry = 'Empresas_RAZON_SOCIAL' + end + item + Name = 'CALLE' + DataType = datString + Size = 255 + DictionaryEntry = 'Empresas_CALLE' + end + item + Name = 'POBLACION' + DataType = datString + Size = 255 + DictionaryEntry = 'Empresas_POBLACION' + end + item + Name = 'PROVINCIA' + DataType = datString + Size = 255 + DictionaryEntry = 'Empresas_PROVINCIA' + end + item + Name = 'CODIGO_POSTAL' + DataType = datString + Size = 10 + DictionaryEntry = 'Empresas_CODIGO_POSTAL' + end + item + Name = 'TELEFONO_1' + DataType = datString + Size = 25 + DictionaryEntry = 'Empresas_TELEFONO_1' + end + item + Name = 'TELEFONO_2' + DataType = datString + Size = 25 + DictionaryEntry = 'Empresas_TELEFONO_2' + end + item + Name = 'MOVIL_1' + DataType = datString + Size = 25 + DictionaryEntry = 'Empresas_MOVIL_1' + end + item + Name = 'MOVIL_2' + DataType = datString + Size = 25 + DictionaryEntry = 'Empresas_MOVIL_2' + end + item + Name = 'FAX' + DataType = datString + Size = 25 + DictionaryEntry = 'Empresas_FAX' + end + item + Name = 'EMAIL_1' + DataType = datString + Size = 255 + DictionaryEntry = 'Empresas_EMAIL_1' + end + item + Name = 'EMAIL_2' + DataType = datString + Size = 255 + DictionaryEntry = 'Empresas_EMAIL_2' + end + item + Name = 'PAGINA_WEB' + DataType = datString + Size = 255 + DictionaryEntry = 'Empresas_PAGINA_WEB' + end + item + Name = 'NOTAS' + DataType = datMemo + DictionaryEntry = 'Empresas_NOTAS' + end + item + Name = 'FECHA_ALTA' + DataType = datDateTime + DictionaryEntry = 'Empresas_FECHA_ALTA' + end + item + Name = 'FECHA_MODIFICACION' + DataType = datDateTime + DictionaryEntry = 'Empresas_FECHA_MODIFICACION' + end + item + Name = 'USUARIO' + DataType = datString + Size = 20 + DictionaryEntry = 'Empresas_USUARIO' + end + item + Name = 'LOGOTIPO' + DataType = datBlob + BlobType = dabtBlob + DictionaryEntry = 'Empresas_LOGOTIPO' + end + item + Name = 'REGISTRO_MERCANTIL' + DataType = datString + Size = 255 + DictionaryEntry = 'Empresas_REGISTRO_MERCANTIL' + end + item + Name = 'IVA' + DataType = datFloat + DictionaryEntry = 'Empresas_IVA' + end> + end + item + Params = <> + Statements = < + item + Connection = 'IBX' + Default = True + TargetTable = 'EMPRESAS_DATOS_BANCO' + Name = 'IBX' + StatementType = stAutoSQL + ColumnMappings = < + item + DatasetField = 'ID' + TableField = 'ID' + end + item + DatasetField = 'ID_EMPRESA' + TableField = 'ID_EMPRESA' + end + item + DatasetField = 'NOMBRE' + TableField = 'NOMBRE' + end + item + DatasetField = 'ENTIDAD' + TableField = 'ENTIDAD' + end + item + DatasetField = 'SUCURSAL' + TableField = 'SUCURSAL' + end + item + DatasetField = 'DC' + TableField = 'DC' + end + item + DatasetField = 'CUENTA' + TableField = 'CUENTA' + end + item + DatasetField = 'SUFIJO_N19' + TableField = 'SUFIJO_N19' + end + item + DatasetField = 'SUFIJO_N58' + TableField = 'SUFIJO_N58' + end> + end> + Name = 'EmpresasDatosBanco' + Fields = < + item + Name = 'ID' + DataType = datAutoInc + GeneratorName = 'GEN_EMPRESAS_DATOS_BANCO_ID' + ServerAutoRefresh = True + DictionaryEntry = 'EmpresasDatosBanco_ID' + InPrimaryKey = True + end + item + Name = 'ID_EMPRESA' + DataType = datInteger + DictionaryEntry = 'EmpresasDatosBanco_ID_EMPRESA' + end + item + Name = 'NOMBRE' + DataType = datString + Size = 255 + DictionaryEntry = 'EmpresasDatosBanco_NOMBRE' + end + item + Name = 'ENTIDAD' + DataType = datString + Size = 15 + DictionaryEntry = 'EmpresasDatosBanco_ENTIDAD' + end + item + Name = 'SUCURSAL' + DataType = datString + Size = 15 + DictionaryEntry = 'EmpresasDatosBanco_SUCURSAL' + end + item + Name = 'DC' + DataType = datString + Size = 15 + DictionaryEntry = 'EmpresasDatosBanco_DC' + end + item + Name = 'CUENTA' + DataType = datString + Size = 15 + DictionaryEntry = 'EmpresasDatosBanco_CUENTA' + end + item + Name = 'SUFIJO_N19' + DataType = datString + Size = 3 + DictionaryEntry = 'EmpresasDatosBanco_SUFIJO_N19' + end + item + Name = 'SUFIJO_N58' + DataType = datString + Size = 3 + DictionaryEntry = 'EmpresasDatosBanco_SUFIJO_N58' + end> + end> + JoinDataTables = <> + UnionDataTables = <> + Commands = <> + RelationShips = < + item + Name = 'FK_EmpresasDatosBanco_Empresas' + MasterDatasetName = 'Empresas' + MasterFields = 'ID' + DetailDatasetName = 'EmpresasDatosBanco' + DetailFields = 'ID_EMPRESA' + RelationshipType = rtForeignKey + end> + UpdateRules = < + item + Name = 'Insert Empresas' + DoUpdate = False + DoDelete = False + DatasetName = 'Empresas' + FailureBehavior = fbRaiseException + end + item + Name = 'Insert EmpresasDatosBanco' + DoUpdate = False + DoDelete = False + DatasetName = 'EmpresasDatosBanco' + FailureBehavior = fbRaiseException + end + item + Name = 'Update Empresas' + DoInsert = False + DoDelete = False + DatasetName = 'Empresas' + FailureBehavior = fbRaiseException + end + item + Name = 'Update EmpresasDatosBanco' + DoInsert = False + DoDelete = False + DatasetName = 'EmpresasDatosBanco' + FailureBehavior = fbRaiseException + end + item + Name = 'Delete EmpresasDatosBanco' + DoUpdate = False + DoInsert = False + DatasetName = 'EmpresasDatosBanco' + FailureBehavior = fbRaiseException + end + item + Name = 'Delete Empresas' + DoUpdate = False + DoInsert = False + DatasetName = 'Empresas' + FailureBehavior = fbRaiseException + end> + Version = 0 + Left = 46 + Top = 22 + end + object DataDictionary: TDADataDictionary + Fields = < + item + Name = 'Empresas_NIF_CIF' + DataType = datString + Size = 15 + DisplayLabel = 'CIF' + end + item + Name = 'Empresas_NOMBRE' + DataType = datString + Size = 255 + DisplayLabel = 'Nombre' + end + item + Name = 'Empresas_RAZON_SOCIAL' + DataType = datString + Size = 255 + DisplayLabel = 'Raz'#243'n Social' + end + item + Name = 'Empresas_CALLE' + DataType = datString + Size = 255 + DisplayLabel = 'Calle' + end + item + Name = 'Empresas_POBLACION' + DataType = datString + Size = 255 + DisplayLabel = 'Poblaci'#243'n' + end + item + Name = 'Empresas_PROVINCIA' + DataType = datString + Size = 255 + DisplayLabel = 'Provincia' + end + item + Name = 'Empresas_CODIGO_POSTAL' + DataType = datString + Size = 10 + DisplayLabel = 'C'#243'd. postal' + end + item + Name = 'Empresas_TELEFONO_1' + DataType = datString + Size = 25 + DisplayLabel = 'Tel'#233'fono 1' + end + item + Name = 'Empresas_TELEFONO_2' + DataType = datString + Size = 25 + DisplayLabel = 'Tel'#233'fono 2' + end + item + Name = 'Empresas_MOVIL_1' + DataType = datString + Size = 25 + DisplayLabel = 'M'#243'vil 1' + end + item + Name = 'Empresas_MOVIL_2' + DataType = datString + Size = 25 + DisplayLabel = 'M'#243'vil 2' + end + item + Name = 'Empresas_FAX' + DataType = datString + Size = 25 + DisplayLabel = 'Fax' + end + item + Name = 'Empresas_EMAIL_1' + DataType = datString + Size = 255 + DisplayLabel = 'E-mail 1' + end + item + Name = 'Empresas_EMAIL_2' + DataType = datString + Size = 255 + DisplayLabel = 'E-mail 2' + end + item + Name = 'Empresas_PAGINA_WEB' + DataType = datString + Size = 255 + DisplayLabel = 'P'#225'gina web' + end + item + Name = 'Empresas_NOTAS' + DataType = datMemo + DisplayLabel = 'Notas' + end + item + Name = 'Empresas_FECHA_ALTA' + DataType = datDateTime + end + item + Name = 'Empresas_FECHA_MODIFICACION' + DataType = datDateTime + end + item + Name = 'Empresas_USUARIO' + DataType = datString + Size = 20 + end + item + Name = 'Empresas_LOGOTIPO' + DataType = datBlob + BlobType = dabtBlob + DisplayLabel = 'Logotipo' + end + item + Name = 'Empresas_REGISTRO_MERCANTIL' + DataType = datString + Size = 255 + DisplayLabel = 'Registro mercantil' + end + item + Name = 'Empresas_IVA' + DataType = datFloat + DisplayLabel = 'IVA' + end + item + Name = 'EmpresasDatosBanco_ID_EMPRESA' + DataType = datInteger + end + item + Name = 'EmpresasDatosBanco_NOMBRE' + DataType = datString + Size = 255 + DisplayLabel = 'Nombre del banco' + end + item + Name = 'EmpresasDatosBanco_ENTIDAD' + DataType = datString + Size = 15 + DisplayLabel = 'Entidad' + end + item + Name = 'EmpresasDatosBanco_SUCURSAL' + DataType = datString + Size = 15 + DisplayLabel = 'Sucursal' + end + item + Name = 'EmpresasDatosBanco_DC' + DataType = datString + Size = 15 + DisplayLabel = 'DC' + end + item + Name = 'EmpresasDatosBanco_CUENTA' + DataType = datString + Size = 15 + DisplayLabel = 'Cuenta' + end + item + Name = 'EmpresasDatosBanco_SUFIJO_N19' + DataType = datString + Size = 3 + DisplayLabel = 'Sufijo 19' + end + item + Name = 'EmpresasDatosBanco_SUFIJO_N58' + DataType = datString + Size = 3 + DisplayLabel = 'Sufijo 58' + end + item + Name = 'Empresas_ID' + DataType = datAutoInc + GeneratorName = 'GEN_EMPRESAS_ID' + LogChanges = False + Required = True + DisplayLabel = 'ID' + ReadOnly = True + ServerAutoRefresh = True + end + item + Name = 'EmpresasDatosBanco_ID' + DataType = datAutoInc + GeneratorName = 'GEN_EMPRESAS_DATOS_BANCO_ID' + LogChanges = False + Required = True + DisplayLabel = 'ID' + ReadOnly = True + ServerAutoRefresh = True + end> + Left = 158 + Top = 22 + end + object Diagrams: TDADiagrams + Left = 158 + Top = 90 + DiagramData = + ''#13#10' '#13#10' '#13#10' '#13#10' '#13#10''#13#10 + end + object DABin2DataStreamer: TDABin2DataStreamer + Left = 48 + Top = 88 + end +end diff --git a/Source/Modulos/Empresas/Servidor/srvEmpresas_Impl.pas b/Source/ApplicationBase/Empresas/Servidor/srvEmpresas_Impl.pas similarity index 57% rename from Source/Modulos/Empresas/Servidor/srvEmpresas_Impl.pas rename to Source/ApplicationBase/Empresas/Servidor/srvEmpresas_Impl.pas index 78872856..68407ec0 100644 --- a/Source/Modulos/Empresas/Servidor/srvEmpresas_Impl.pas +++ b/Source/ApplicationBase/Empresas/Servidor/srvEmpresas_Impl.pas @@ -12,29 +12,26 @@ interface uses {vcl:} Classes, SysUtils, {RemObjects:} uROClientIntf, uROTypes, uROServer, uROServerIntf, uROSessions, - {Ancestor Implementation:} DARemoteService_Impl, - {Used RODLs:} DataAbstract_Intf, + {Ancestor Implementation:} DataAbstractService_Impl, + {Used RODLs:} DataAbstract4_Intf, {Generated:} FactuGES_Intf, uDAScriptingProvider, uDABusinessProcessor, - uDAClasses, uDADataTable, uDABINAdapter, uDAInterfaces; + uDABin2DataStreamer, uDADataStreamer, uDAClasses, uDAInterfaces; type { TsrvEmpresas } - TsrvEmpresas = class(TDARemoteService, IsrvEmpresas) - BINAdapter: TDABINAdapter; + TsrvEmpresas = class(TDataAbstractService, IsrvEmpresas) Diagrams: TDADiagrams; - bpEmpresas: TDABusinessProcessor; - bpEmpresasDatosBanco: TDABusinessProcessor; + DABin2DataStreamer: TDABin2DataStreamer; schEmpresas: TDASchema; DataDictionary: TDADataDictionary; - procedure DARemoteServiceBeforeGetDatasetData(const Dataset: IDADataset; - const IncludeSchema: Boolean; const MaxRecords: Integer); - procedure DARemoteServiceBeforeAcquireConnection(Sender: TDARemoteService; - var ConnectionName: string); procedure DARemoteServiceCreate(Sender: TObject); + procedure DataAbstractServiceBeforeAcquireConnection(aSender: TObject; + var aConnectionName: string); + procedure DataAbstractServiceBeforeGetDatasetData(aSender: TObject; + const aDataset: IDADataset; const aIncludeSchema: Boolean; + const aMaxRecords: Integer); private protected - { IsrvEmpresas methods } - function GetNextAutoInc(const GeneratorName: String): Integer; end; implementation @@ -52,33 +49,28 @@ begin end; { srvEmpresas } -procedure TsrvEmpresas.DARemoteServiceBeforeAcquireConnection( - Sender: TDARemoteService; var ConnectionName: string); -begin - ConnectionName := dmServer.ConnectionName; -end; - -procedure TsrvEmpresas.DARemoteServiceBeforeGetDatasetData( - const Dataset: IDADataset; const IncludeSchema: Boolean; - const MaxRecords: Integer); -begin - - if (DataSet.Name <> nme_EmpresasDatosBanco) then - begin - { Aquí se asegura que el usuario sólo accede a las empresas a - las que tiene permiso para acceder filtrando DataSet por ID_EMPRESA. } - FiltrarAccesoUsuario(Session, Connection, schEmpresas, DataSet, fld_EmpresasID); - end; -end; - procedure TsrvEmpresas.DARemoteServiceCreate(Sender: TObject); begin SessionManager := dmServer.SessionManager; end; -function TsrvEmpresas.GetNextAutoInc(const GeneratorName: String): Integer; +procedure TsrvEmpresas.DataAbstractServiceBeforeAcquireConnection( + aSender: TObject; var aConnectionName: string); begin - Result := uDatabaseUtils.GetNextAutoInc(GeneratorName) + ConnectionName := dmServer.ConnectionName; +end; + +procedure TsrvEmpresas.DataAbstractServiceBeforeGetDatasetData(aSender: TObject; + const aDataset: IDADataset; const aIncludeSchema: Boolean; + const aMaxRecords: Integer); +begin + Exit; + if (aDataset.Name <> nme_EmpresasDatosBanco) then + begin + { Aquí se asegura que el usuario sólo accede a las empresas a + las que tiene permiso para acceder filtrando DataSet por ID_EMPRESA. } + FiltrarAccesoUsuario(Session, Connection, ServiceSchema, aDataset, fld_EmpresasID); + end; end; initialization diff --git a/Source/Modulos/Empresas/Test/Empresas_Tests.bdsproj b/Source/ApplicationBase/Empresas/Test/Empresas_Tests.bdsproj similarity index 100% rename from Source/Modulos/Empresas/Test/Empresas_Tests.bdsproj rename to Source/ApplicationBase/Empresas/Test/Empresas_Tests.bdsproj diff --git a/Source/Modulos/Empresas/Test/Empresas_Tests.dpr b/Source/ApplicationBase/Empresas/Test/Empresas_Tests.dpr similarity index 100% rename from Source/Modulos/Empresas/Test/Empresas_Tests.dpr rename to Source/ApplicationBase/Empresas/Test/Empresas_Tests.dpr diff --git a/Source/Modulos/Empresas/Test/Empresas_Tests.drc b/Source/ApplicationBase/Empresas/Test/Empresas_Tests.drc similarity index 100% rename from Source/Modulos/Empresas/Test/Empresas_Tests.drc rename to Source/ApplicationBase/Empresas/Test/Empresas_Tests.drc diff --git a/Source/Modulos/Empresas/Test/Empresas_Tests.res b/Source/ApplicationBase/Empresas/Test/Empresas_Tests.res similarity index 100% rename from Source/Modulos/Empresas/Test/Empresas_Tests.res rename to Source/ApplicationBase/Empresas/Test/Empresas_Tests.res diff --git a/Source/Modulos/Empresas/Test/uEmpresasController_Test.pas b/Source/ApplicationBase/Empresas/Test/uEmpresasController_Test.pas similarity index 100% rename from Source/Modulos/Empresas/Test/uEmpresasController_Test.pas rename to Source/ApplicationBase/Empresas/Test/uEmpresasController_Test.pas diff --git a/Source/Modulos/Empresas/Test/uHostMainForm.dfm b/Source/ApplicationBase/Empresas/Test/uHostMainForm.dfm similarity index 100% rename from Source/Modulos/Empresas/Test/uHostMainForm.dfm rename to Source/ApplicationBase/Empresas/Test/uHostMainForm.dfm diff --git a/Source/Modulos/Empresas/Test/uHostMainForm.pas b/Source/ApplicationBase/Empresas/Test/uHostMainForm.pas similarity index 100% rename from Source/Modulos/Empresas/Test/uHostMainForm.pas rename to Source/ApplicationBase/Empresas/Test/uHostMainForm.pas diff --git a/Source/Modulos/Empresas/Views/uEditorDatosBancariosEmpresa.dfm b/Source/ApplicationBase/Empresas/Views/uEditorDatosBancariosEmpresa.dfm similarity index 100% rename from Source/Modulos/Empresas/Views/uEditorDatosBancariosEmpresa.dfm rename to Source/ApplicationBase/Empresas/Views/uEditorDatosBancariosEmpresa.dfm diff --git a/Source/Modulos/Empresas/Views/uEditorDatosBancariosEmpresa.pas b/Source/ApplicationBase/Empresas/Views/uEditorDatosBancariosEmpresa.pas similarity index 95% rename from Source/Modulos/Empresas/Views/uEditorDatosBancariosEmpresa.pas rename to Source/ApplicationBase/Empresas/Views/uEditorDatosBancariosEmpresa.pas index c31fb01f..de80ae66 100644 --- a/Source/Modulos/Empresas/Views/uEditorDatosBancariosEmpresa.pas +++ b/Source/ApplicationBase/Empresas/Views/uEditorDatosBancariosEmpresa.pas @@ -6,7 +6,7 @@ uses Windows, SysUtils, Classes, Graphics, Forms, Controls, StdCtrls, Buttons, ExtCtrls, Mask, DBCtrls, DB, uDADataTable, PngSpeedButton, cxControls, cxContainer, cxEdit, cxTextEdit, cxHyperLinkEdit, cxDBEdit, uIEditorDatosBancarioEmpresa, uDatosBancariosEmpresaController, uBizEmpresasDatosBancarios, - cxCurrencyEdit; + cxCurrencyEdit, uDAInterfaces; type TfEditorDatosBancariosEmpresa = class(TForm, IEditorDatosBancariosEmpresa) diff --git a/Source/Modulos/Empresas/Views/uEditorEmpresa.dfm b/Source/ApplicationBase/Empresas/Views/uEditorEmpresa.dfm similarity index 86% rename from Source/Modulos/Empresas/Views/uEditorEmpresa.dfm rename to Source/ApplicationBase/Empresas/Views/uEditorEmpresa.dfm index 4bd2a6a0..c04cfe4b 100644 --- a/Source/Modulos/Empresas/Views/uEditorEmpresa.dfm +++ b/Source/ApplicationBase/Empresas/Views/uEditorEmpresa.dfm @@ -8,13 +8,13 @@ inherited fEditorEmpresa: TfEditorEmpresa ClientWidth = 674 Scaled = False ExplicitWidth = 682 - ExplicitHeight = 588 + ExplicitHeight = 581 PixelsPerInch = 96 TextHeight = 13 inherited JvNavPanelHeader: TJvNavPanelHeader Width = 674 Caption = 'Empresa' - ExplicitWidth = 660 + ExplicitWidth = 674 inherited Image1: TImage Left = 647 ExplicitLeft = 607 @@ -22,9 +22,9 @@ inherited fEditorEmpresa: TfEditorEmpresa end inherited TBXDock: TTBXDock Width = 674 - ExplicitWidth = 660 + ExplicitWidth = 674 inherited tbxMain: TTBXToolbar - ExplicitWidth = 324 + ExplicitWidth = 330 inherited TBXItem2: TTBXItem Visible = False end @@ -77,13 +77,13 @@ inherited fEditorEmpresa: TfEditorEmpresa inherited pgPaginas: TPageControl Width = 674 Height = 459 - ExplicitWidth = 660 - ExplicitHeight = 451 + ExplicitWidth = 674 + ExplicitHeight = 459 inherited pagGeneral: TTabSheet ExplicitLeft = 4 ExplicitTop = 24 - ExplicitWidth = 652 - ExplicitHeight = 423 + ExplicitWidth = 666 + ExplicitHeight = 431 inline frViewEmpresa1: TfrViewEmpresa Left = 0 Top = 0 @@ -98,14 +98,14 @@ inherited fEditorEmpresa: TfEditorEmpresa ParentFont = False TabOrder = 0 ReadOnly = False - ExplicitWidth = 652 - ExplicitHeight = 423 + ExplicitWidth = 666 + ExplicitHeight = 431 inherited dxLayoutControl1: TdxLayoutControl Width = 666 Height = 431 LookAndFeel = dxLayoutOfficeLookAndFeel1 - ExplicitWidth = 652 - ExplicitHeight = 423 + ExplicitWidth = 666 + ExplicitHeight = 431 inherited PngSpeedButton1: TPngSpeedButton Left = 621 Top = 295 @@ -244,8 +244,6 @@ inherited fEditorEmpresa: TfEditorEmpresa object TabSheet1: TTabSheet Caption = 'Datos bancarios' ImageIndex = 1 - ExplicitWidth = 652 - ExplicitHeight = 423 inline frViewDatosBancarios1: TfrViewDatosBancarios Left = 0 Top = 0 @@ -260,29 +258,17 @@ inherited fEditorEmpresa: TfEditorEmpresa ParentFont = False TabOrder = 0 ReadOnly = False - ExplicitWidth = 652 - ExplicitHeight = 423 + ExplicitWidth = 666 + ExplicitHeight = 431 inherited cxGrid: TcxGrid Width = 666 Height = 406 - ExplicitWidth = 652 - ExplicitHeight = 398 + ExplicitWidth = 666 + ExplicitHeight = 406 end inherited ToolBar1: TToolBar Width = 666 ExplicitWidth = 666 - inherited ToolButton1: TToolButton - ExplicitWidth = 62 - end - inherited ToolButton4: TToolButton - ExplicitWidth = 74 - end - inherited ToolButton2: TToolButton - ExplicitWidth = 67 - end - inherited ToolButton7: TToolButton - ExplicitWidth = 117 - end end end end @@ -294,8 +280,8 @@ inherited fEditorEmpresa: TfEditorEmpresa item Width = 200 end> - ExplicitTop = 527 - ExplicitWidth = 660 + ExplicitTop = 535 + ExplicitWidth = 674 end inherited EditorActionList: TActionList Top = 128 diff --git a/Source/Modulos/Empresas/Views/uEditorEmpresa.pas b/Source/ApplicationBase/Empresas/Views/uEditorEmpresa.pas similarity index 96% rename from Source/Modulos/Empresas/Views/uEditorEmpresa.pas rename to Source/ApplicationBase/Empresas/Views/uEditorEmpresa.pas index 332cafac..a5bb5125 100644 --- a/Source/Modulos/Empresas/Views/uEditorEmpresa.pas +++ b/Source/ApplicationBase/Empresas/Views/uEditorEmpresa.pas @@ -12,7 +12,8 @@ uses TBXDkPanels, JvButton, AppEvnts, uCustomView, uViewBase, JvAppStorage, JvAppRegistryStorage, JvFormPlacement, JvComponentBase, uViewEmpresa, uIEditorEmpresa, uEmpresasController, dxLayoutLookAndFeels, - JvExComCtrls, JvStatusBar, uViewDetallesGenerico, uViewDatosBancarios; + JvExComCtrls, JvStatusBar, uViewDetallesGenerico, uViewDatosBancarios, + uDAInterfaces; type TfEditorEmpresa = class(TfEditorDBItem, IEditorEmpresa) diff --git a/Source/Modulos/Empresas/Views/uEmpresasViewRegister.pas b/Source/ApplicationBase/Empresas/Views/uEmpresasViewRegister.pas similarity index 100% rename from Source/Modulos/Empresas/Views/uEmpresasViewRegister.pas rename to Source/ApplicationBase/Empresas/Views/uEmpresasViewRegister.pas diff --git a/Source/Modulos/Empresas/Views/uViewDatosBancarios.dfm b/Source/ApplicationBase/Empresas/Views/uViewDatosBancarios.dfm similarity index 76% rename from Source/Modulos/Empresas/Views/uViewDatosBancarios.dfm rename to Source/ApplicationBase/Empresas/Views/uViewDatosBancarios.dfm index 9ffd2041..0a405dcc 100644 --- a/Source/Modulos/Empresas/Views/uViewDatosBancarios.dfm +++ b/Source/ApplicationBase/Empresas/Views/uViewDatosBancarios.dfm @@ -48,5 +48,23 @@ inherited frViewDatosBancarios: TfrViewDatosBancarios inherited ToolBar1: TToolBar Width = 583 ExplicitWidth = 583 + inherited ToolButton1: TToolButton + Top = 0 + end + inherited ToolButton4: TToolButton + Top = 0 + end + inherited ToolButton5: TToolButton + Top = 0 + end + inherited ToolButton2: TToolButton + Top = 0 + end + inherited ToolButton6: TToolButton + Top = 0 + end + inherited ToolButton7: TToolButton + Top = 0 + end end end diff --git a/Source/Modulos/Empresas/Views/uViewDatosBancarios.pas b/Source/ApplicationBase/Empresas/Views/uViewDatosBancarios.pas similarity index 95% rename from Source/Modulos/Empresas/Views/uViewDatosBancarios.pas rename to Source/ApplicationBase/Empresas/Views/uViewDatosBancarios.pas index bcc0aca5..2a70ebe6 100644 --- a/Source/Modulos/Empresas/Views/uViewDatosBancarios.pas +++ b/Source/ApplicationBase/Empresas/Views/uViewDatosBancarios.pas @@ -9,7 +9,8 @@ uses cxGridCustomTableView, cxGridTableView, cxGridBandedTableView, cxGridDBBandedTableView, cxClasses, cxControls, cxGridCustomView, cxGrid, uDADataTable, Grids, DBGrids, ActnList, ImgList, PngImageList, ComCtrls, - ToolWin, cxGridDBTableView, uViewDetallesGenerico, cxCurrencyEdit; + ToolWin, cxGridDBTableView, uViewDetallesGenerico, cxCurrencyEdit, + uDAInterfaces; type TfrViewDatosBancarios = class(TfrViewDetallesGenerico) diff --git a/Source/Modulos/Empresas/Views/uViewEmpresa.dfm b/Source/ApplicationBase/Empresas/Views/uViewEmpresa.dfm similarity index 100% rename from Source/Modulos/Empresas/Views/uViewEmpresa.dfm rename to Source/ApplicationBase/Empresas/Views/uViewEmpresa.dfm diff --git a/Source/Modulos/Empresas/Views/uViewEmpresa.pas b/Source/ApplicationBase/Empresas/Views/uViewEmpresa.pas similarity index 96% rename from Source/Modulos/Empresas/Views/uViewEmpresa.pas rename to Source/ApplicationBase/Empresas/Views/uViewEmpresa.pas index 154d4eba..d2e5e583 100644 --- a/Source/Modulos/Empresas/Views/uViewEmpresa.pas +++ b/Source/ApplicationBase/Empresas/Views/uViewEmpresa.pas @@ -9,7 +9,7 @@ uses JvComponent, JvFormAutoSize, cxControls, cxContainer, cxEdit, cxTextEdit, cxDBEdit, dxLayoutControl, dxLayoutLookAndFeels, cxMemo, cxMaskEdit, cxSpinEdit, cxImage, JvExControls, JvBitmapButton, ActnList, ImgList, - PngImageList, TB2Item, TBX, TB2Dock, TB2Toolbar, PngSpeedButton; + PngImageList, TB2Item, TBX, TB2Dock, TB2Toolbar, PngSpeedButton, uDAInterfaces; type IViewEmpresa = interface(IViewBase) diff --git a/Source/ApplicationBase/Usuarios/Controller/View/uIEditorLogin.pas b/Source/ApplicationBase/Usuarios/Controller/View/uIEditorLogin.pas new file mode 100644 index 00000000..0f3e505f --- /dev/null +++ b/Source/ApplicationBase/Usuarios/Controller/View/uIEditorLogin.pas @@ -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. diff --git a/Source/ApplicationBase/Usuarios/Controller/uUsuariosController.pas b/Source/ApplicationBase/Usuarios/Controller/uUsuariosController.pas new file mode 100644 index 00000000..95a5f2da --- /dev/null +++ b/Source/ApplicationBase/Usuarios/Controller/uUsuariosController.pas @@ -0,0 +1,436 @@ +unit uUsuariosController; + +interface + + +uses + Classes, SysUtils, Forms, uDADataTable, uControllerBase, + uIDataModuleUsuarios, uDataModuleUsuarios, UCBase; + +type + IUsuariosController = interface(IControllerBase) + ['{DD963EEC-5880-4DE7-AF55-B5080B538D84}'] + + procedure Logoff; + function StartLogin : Boolean; + procedure ShowUserManager; + procedure ShowProfileManager; + procedure ShowLogManager; + procedure ShowChangePassword; + function ComprobarUsuario(const User : String; const Password: String): Boolean; + procedure CambiarPassword(const AIDUser: Integer; const ANewPassword: String); + + function GetMaxIntentosLogin: Integer; + procedure SetMaxIntentosLogin(const Value: Integer); + property MaxIntentosLogin : Integer read GetMaxIntentosLogin write SetMaxIntentosLogin; + + function GetCurrentUser: TUCCurrentUser; + property CurrentUser: TUCCurrentUser read GetCurrentUser; + + +{ procedure ChangeUser(IDUser: Integer; Login, Name, Mail: String; Profile,UserExpired,UserDaysSun: Integer; PrivUser: Boolean); + 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;} + +{ function BuscarTodos: IBizFormaPago; + function Buscar(ID: Integer): IBizFormaPago; + procedure VerTodos(AUsuarios: IBizFormaPago); + procedure Ver(AFormaPago: IBizFormaPago); + procedure Anadir(AFormaPago : IBizFormaPago); + function Eliminar(AFormaPago : IBizFormaPago): Boolean; + function Guardar(AFormaPago : IBizFormaPago): Boolean; + procedure DescartarCambios(AFormaPago : IBizFormaPago); + function Localizar(AUsuarios: IBizFormaPago; ADescripcion:String): Boolean; + function DarListaUsuarios: TStringList;} + end; + + TUsuariosController = class(TControllerBase, IUsuariosController) + protected + FDataModule : IDataModuleUsuarios; + FUserControl: TUserControl; + + 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; + +// function ValidarFormaPago(AFormaPago: IBizFormaPago): Boolean; + procedure AsignarDataModule; + procedure InicializarUserControl; + procedure ComprobarUsuarioInicial; + function GetCurrentUser: TUCCurrentUser; + + procedure OnLoginForm(Sender: TObject; var CustomForm: TCustomForm); + public + constructor Create; virtual; + destructor Destroy; override; + + procedure Logoff; + function StartLogin : Boolean; + procedure ShowUserManager; + procedure ShowProfileManager; + procedure ShowLogManager; + procedure ShowChangePassword; + function ComprobarUsuario(const User : String; const Password: String): Boolean; + procedure CambiarPassword(const AIDUser: Integer; const ANewPassword: String); + +{ function Eliminar(AFormaPago : IBizFormaPago): Boolean; + function Guardar(AFormaPago : IBizFormaPago): Boolean; virtual; + procedure DescartarCambios(AFormaPago : IBizFormaPago); virtual; + procedure Anadir(AFormaPago : IBizFormaPago); + function BuscarTodos: IBizFormaPago; + function Buscar(ID: Integer): IBizFormaPago; + procedure VerTodos(AUsuarios: IBizFormaPago); + procedure Ver(AFormaPago: IBizFormaPago); + function Localizar(AUsuarios: IBizFormaPago; ADescripcion:String): Boolean; + function DarListaUsuarios: TStringList;} + property UserControl : TUserControl read FUserControl; + property MaxIntentosLogin : Integer read GetMaxIntentosLogin write SetMaxIntentosLogin; + property CurrentUser: TUCCurrentUser read GetCurrentUser; + end; + +implementation + +uses + cxControls, DB, uEditorRegistryUtils, schUsuariosClient_Intf, + uDAInterfaces, uDataTableUtils, uDialogUtils, uFactuGES_App, + uDateUtils, uROTypes, DateUtils, Controls, Windows, uIEditorLogin; + +{ TUsuariosController } + +{procedure TUsuariosController.Anadir(AFormaPago: IBizFormaPago); +begin + AFormaPago.Insert; +end;} + +procedure TUsuariosController.AsignarDataModule; +begin + FDataModule := TDataModuleUsuarios.Create(Nil); +end; + +{function TUsuariosController.Buscar(ID: Integer): IBizFormaPago; +begin + ShowHourglassCursor; + try + Result := BuscarTodos; + with Result.DataTable.Where do + begin + if NotEmpty then + AddOperator(opAND); + OpenBraket; + AddText(fld_UsuariosID + ' = ' + IntToStr(ID)); + CloseBraket; + end; + finally + HideHourglassCursor; + end; +end; + +function TUsuariosController.BuscarTodos: IBizFormaPago; +begin + Result := FDataModule.GetItems; +end;} + +procedure TUsuariosController.CambiarPassword(const AIDUser: Integer; + const ANewPassword: String); +begin + FUserControl.ChangePassword(AIDUser, ANewPassword); +end; + +function TUsuariosController.ComprobarUsuario(const User, + Password: String): Boolean; +begin + Result := FUserControl.VerificaLogin(User, Password); +end; + +procedure TUsuariosController.ComprobarUsuarioInicial; +begin + // Para que haya un usuario siempre en la BD + if not FUserControl.ExisteUsuario('admin') then + FUserControl.AddUser('admin', '1', 'Administrador', 'admin@correo.net', 0, 0 , 30, True); +end; + +constructor TUsuariosController.Create; +begin + AsignarDataModule; + FUserControl := TUserControl.Create(nil); + InicializarUserControl; + ComprobarUsuarioInicial; +end; + +function TUsuariosController.CreateEditor(const AName: String; const IID: TGUID; out Intf): Boolean; +begin + Result := Supports(EditorRegistry.CreateEditor(AName), IID, Intf); +end; + +{ +function TUsuariosController.DarListaUsuarios: TStringList; +var + AUsuarios: IBizFormaPago; +begin + AUsuarios := BuscarTodos; + AUsuarios.DataTable.Active := True; + Result := TStringList.Create; + try + with Result do + begin + AUsuarios.DataTable.First; + while not AUsuarios.DataTable.EOF do + begin + Add(AUsuarios.DESCRIPCION); + AUsuarios.DataTable.Next; + end; + end; + finally + AUsuarios := NIL; + end; +end; + +procedure TUsuariosController.DescartarCambios(AFormaPago: IBizFormaPago); +begin + if not Assigned(AFormaPago) then + raise Exception.Create ('Forma de pago no asignada'); + + ShowHourglassCursor; + try + if (AFormaPago.State in dsEditModes) then + AFormaPago.Cancel; + + AFormaPago.DataTable.CancelUpdates; + finally + HideHourglassCursor; + end; +end; +} +destructor TUsuariosController.Destroy; +begin + FreeANDNIL(FUserControl); + FDataModule := NIL; + inherited; +end; + +function TUsuariosController.GetCurrentUser: TUCCurrentUser; +begin + Result := FUserControl.CurrentUser; +end; + +function TUsuariosController.GetMaxIntentosLogin: Integer; +begin + Result := FUserControl.Login.MaxLoginAttempts; +end; + +procedure TUsuariosController.InicializarUserControl; +begin + with FUserControl do + begin + ApplicationID := AppFactuGES.AppName; + AutoStart := False; + Criptografia := cMD5; + CheckValidationKey := True; + Login.MaxLoginAttempts := 3; + + OnCustomLoginForm := OnLoginForm; + end; + FDataModule.InicializarUserControl(FUserControl); +end; + +procedure TUsuariosController.Logoff; +begin + FUserControl.Logoff; +end; + +procedure TUsuariosController.OnLoginForm(Sender: TObject; + var CustomForm: TCustomForm); +begin +// CustomForm := TfLoginForm.Create(NIL); +end; + +{ +function TUsuariosController.ValidarFormaPago(AFormaPago: IBizFormaPago): Boolean; +begin + Result := False; + + if not Assigned(AFormaPago) then + raise Exception.Create ('Forma de pago no asignada'); + + if (AFormaPago.DataTable.State in dsEditModes) then + AFormaPago.DataTable.Post; + + if Length(AFormaPago.REFERENCIA) = 0 then + raise Exception.Create('Debe indicar una referencia para esta forma de pago.'); + + if Length(AFormaPago.DESCRIPCION) = 0 then + raise Exception.Create('Debe indicar una descripción para esta forma de pago.'); + + Result := True; +end; + +procedure TUsuariosController.Ver(AFormaPago: IBizFormaPago); +var + AEditor : IEditorFormaPago; +begin + AEditor := NIL; + ShowHourglassCursor; + try + CreateEditor('EditorFormaPago', IEditorFormaPago, AEditor); + with AEditor do + FormaPago := AFormaPago; + finally + HideHourglassCursor; + end; + + if Assigned(AEditor) then + try + AEditor.ShowModal; + AEditor.Release; + finally + AEditor := NIL; + end; +end; + +procedure TUsuariosController.VerTodos(AUsuarios: IBizFormaPago); +var + AEditor : IEditorUsuarios; +begin + AEditor := NIL; + ShowHourglassCursor; + try + CreateEditor('EditorUsuarios', IEditorUsuarios, AEditor); + with AEditor do + Usuarios := AUsuarios; + finally + HideHourglassCursor; + end; + + if Assigned(AEditor) then + try + AEditor.ShowModal; + AEditor.Release; + finally + AEditor := NIL; + end; +end; + +function TUsuariosController.Eliminar(AFormaPago: IBizFormaPago): Boolean; +begin + Result := False; + + if not Assigned(AFormaPago) then + raise Exception.Create ('Forma de pago no asignada'); + + ShowHourglassCursor; + try + if (AFormaPago.State in dsEditModes) then + AFormaPago.Cancel; + + AFormaPago.Delete; + AFormaPago.DataTable.ApplyUpdates; + HideHourglassCursor; + Result := True; + finally + HideHourglassCursor; + end; +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.ShowChangePassword; +begin + FUserControl.ShowChangePassword; +end; + +procedure TUsuariosController.ShowLogManager; +begin + FUserControl.ShowLogManager; +end; + +procedure TUsuariosController.ShowProfileManager; +begin + FUserControl.ShowProfileManager; +end; + +procedure TUsuariosController.ShowUserManager; +begin + FUserControl.ShowUserManager; +end; + +function TUsuariosController.StartLogin : Boolean; +var + AEditor : IEditorLogin; +begin + AEditor := NIL; + ShowHourglassCursor; + try + CreateEditor('EditorLogin', IEditorLogin, AEditor); + with AEditor do + Controller := Self; + finally + HideHourglassCursor; + end; + + if Assigned(AEditor) then + begin + try + Result := (AEditor.ShowModal = mrOk); + AEditor.Release; + finally + AEditor := NIL; + end; + end; +end; + +{function TUsuariosController.Guardar(AFormaPago: IBizFormaPago): Boolean; +begin + Result := False; + + if ValidarFormaPago(AFormaPago) then + begin + ShowHourglassCursor; + try + AFormaPago.DataTable.ApplyUpdates; + Result := True; + finally + HideHourglassCursor; + end; + end; +end; + +function TUsuariosController.Localizar(AUsuarios: IBizFormaPago; ADescripcion: String): Boolean; +begin + Result := True; + ShowHourglassCursor; + try + with AUsuarios.DataTable do + begin + DisableControls; + First; + if not Locate(fld_UsuariosDESCRIPCION, ADescripcion, []) then + Result := False; + EnableControls; + end; + finally + HideHourglassCursor; + end; +end;} + +end. diff --git a/Source/ApplicationBase/Usuarios/Data/uDataModuleUsuarios.dfm b/Source/ApplicationBase/Usuarios/Data/uDataModuleUsuarios.dfm new file mode 100644 index 00000000..cb3187d7 --- /dev/null +++ b/Source/ApplicationBase/Usuarios/Data/uDataModuleUsuarios.dfm @@ -0,0 +1,274 @@ +object DataModuleUsuarios: TDataModuleUsuarios + OldCreateOrder = True + OnCreate = DAClientDataModuleCreate + Height = 205 + Width = 355 + object ROLoginService: TRORemoteService + Message = dmConexion.ROMessage + Channel = dmConexion.ROChannel + ServiceName = 'srvLogin' + Left = 48 + Top = 32 + end + object srvUsuarios: TRORemoteService + Message = dmConexion.ROMessage + Channel = dmConexion.ROChannel + ServiceName = 'srvUsuarios' + Left = 152 + Top = 32 + end + object Bin2DataStreamer: TDABin2DataStreamer + Left = 48 + Top = 104 + end + object UCSettingsSpanish: TUCSettings + AppMessages.MsgsForm_BtNew = '&Nuevo mensaje' + AppMessages.MsgsForm_BtReplay = '&Repetir' + AppMessages.MsgsForm_BtForward = '&Siguiente' + AppMessages.MsgsForm_BtDelete = '&Eliminar' + AppMessages.MsgsForm_BtClose = '&Cerrar' + AppMessages.MsgsForm_WindowCaption = 'Mensajes del sistema' + AppMessages.MsgsForm_ColFrom = 'De' + AppMessages.MsgsForm_ColSubject = 'Asunto' + AppMessages.MsgsForm_ColDate = 'Fecha' + AppMessages.MsgsForm_PromptDelete = #194#191'Desea eliminar los mensajes seleccionados?' + AppMessages.MsgsForm_PromptDelete_WindowCaption = 'Eliminar mensajes' + AppMessages.MsgsForm_NoMessagesSelected = 'No hay mensajes seleccionados' + AppMessages.MsgsForm_NoMessagesSelected_WindowCaption = 'Informaci'#195#179'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 un nuevo mensaje' + AppMessages.MsgSend_GroupTo = 'A' + AppMessages.MsgSend_RadioUser = 'Usuario:' + AppMessages.MsgSend_RadioAll = 'Todos' + AppMessages.MsgSend_GroupMessage = 'Mensaje' + AppMessages.MsgSend_LabelSubject = 'Asunto' + AppMessages.MsgSend_LabelMessageText = 'Texto del mensaje' + CommonMessages.AutoLogonError = 'Fault of Car Logon !'#13#10'Inform a valid user and password.' + CommonMessages.ChangePasswordError.InvalidCurrentPassword = 'Current password does not tally!' + CommonMessages.ChangePasswordError.NewPasswordError = + 'Los campos de nueva contrase'#195#177'a y confirmaci'#195#179'n deben ser iguale' + + 's.' + CommonMessages.ChangePasswordError.NewEqualCurrent = 'La nueva contrase'#195#177'a es la misma que la contrase'#195#177'a actual ' + CommonMessages.ChangePasswordError.PasswordRequired = 'The password is compulsory ' + CommonMessages.ChangePasswordError.MinPasswordLength = 'La contrase'#195#177'a debe contener al menos %d caracteres ' + CommonMessages.ChangePasswordError.InvalidNewPassword = #194#161'La nueva contrase'#195#177'a no es v'#195#161'lida por ser demasiado f'#195#161'cil!' + CommonMessages.InvalidLogin = 'User invalids or password !' + CommonMessages.InitialMessage.Strings = ( + 'ATTENTION, Inicial Login :' + '' + 'User: :user' + 'Password : :password' + '' + 'Define the permissions for this user.') + CommonMessages.MaxLoginAttemptsError = + '%d Attempts of login invalid. By reasons of segun'#231'a the system w' + + 'ill be closed.' + CommonMessages.PasswordChanged = #194#161'Contrase'#195#177'a cambiada!' + CommonMessages.BlankPassword = 'Retired password of the Login %s' + CommonMessages.UsuarioExiste = 'The User "%s" is already set up in the system !!' + CommonMessages.PasswordExpired = 'Attention, his sign died, favor exchanges it ' + CommonMessages.ForcaTrocaSenha = 'Mudan'#231'a de senha obrigat'#243'ria' + Login.WindowCaption = 'Login' + Login.LabelUser = 'Usuario :' + Login.LabelPassword = 'Contrase'#195#177'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 = 'Attempt : ' + Login.LabelTentativas = 'Max of Attempts: ' + Log.WindowCaption = 'Security' + Log.LabelDescription = 'Log of system' + Log.LabelUser = 'User :' + Log.LabelDate = 'Date :' + Log.LabelLevel = 'Least level:' + Log.ColAppID = 'AppID' + Log.ColLevel = 'Level ' + Log.ColMessage = 'Message' + Log.ColUser = 'User' + Log.ColDate = 'Date' + Log.BtFilter = '&Apply Filter' + Log.BtDelete = '&Erase Log' + Log.BtClose = '&Close' + Log.PromptDelete = 'It confirms to exclude all the registers of log selected ?' + Log.PromptDelete_WindowCaption = 'Delete confirmation' + Log.OptionUserAll = 'All' + Log.OptionLevelLow = 'Low' + Log.OptionLevelNormal = 'Normal' + Log.OptionLevelHigh = 'High' + Log.OptionLevelCritic = 'Critic' + Log.DeletePerformed = + 'Deletion of system log done: User = "%s" | Date = %s a %s | Leve' + + 'l <= %s' + UsersForm.WindowCaption = 'Security' + UsersForm.LabelDescription = 'Users register ' + UsersForm.ColName = 'Name' + UsersForm.ColLogin = 'Login' + UsersForm.ColEmail = 'Email' + UsersForm.BtAdd = '&Add' + UsersForm.BtChange = 'A<er' + UsersForm.BtDelete = '&Erase' + UsersForm.PromptDelete = 'Confirm erase the user "%s" ?' + UsersForm.PromptDelete_WindowCaption = 'Delete user' + UsersForm.BtRights = 'A&ccesses' + UsersForm.BtPassword = '&Password' + UsersForm.BtClose = '&Close' + AddChangeUser.WindowCaption = 'Users register ' + AddChangeUser.LabelAdd = 'Add User' + AddChangeUser.LabelChange = 'Change User' + AddChangeUser.LabelName = 'Name :' + AddChangeUser.LabelLogin = 'Login :' + AddChangeUser.LabelEmail = 'Email :' + AddChangeUser.LabelPerfil = 'Profile :' + AddChangeUser.CheckPrivileged = 'Privileged user ' + AddChangeUser.BtSave = '&Save' + AddChangeUser.BtCancel = 'Cancel' + AddChangeUser.CheckExpira = 'Senha do usu'#225'rio n'#227'o expira' + AddChangeUser.Day = 'Dias' + AddChangeUser.ExpiredIn = 'Expira em' + AddChangeProfile.WindowCaption = 'Profile the Users' + AddChangeProfile.LabelAdd = 'Add Profile' + AddChangeProfile.LabelChange = 'Change Profile ' + AddChangeProfile.LabelName = 'Description :' + AddChangeProfile.BtSave = '&Save' + AddChangeProfile.BtCancel = 'Cancel' + UsersProfile.WindowCaption = 'Security' + UsersProfile.LabelDescription = 'Users profile ' + UsersProfile.ColProfile = 'Profile' + UsersProfile.BtAdd = '&Add' + UsersProfile.BtChange = 'A<er' + UsersProfile.BtDelete = '&Delete' + UsersProfile.BtRights = 'A&ccesses' + UsersProfile.PromptDelete = 'There are users with the profile "%s". Confirm erase ?' + UsersProfile.PromptDelete_WindowCaption = 'Delete profile' + UsersProfile.BtClose = '&Close' + Rights.WindowCaption = 'Seguridad' + Rights.LabelUser = 'Permissions of the User :' + Rights.LabelProfile = 'Permissions of the Profile :' + Rights.PageMenu = 'Items of the Menu' + Rights.PageActions = 'Actions' + Rights.PageControls = 'Controls' + Rights.BtUnlock = '&Desbloquear' + Rights.BtLock = '&Bloquear' + Rights.BtSave = '&Guardar' + Rights.BtCancel = '&Cancelar' + ChangePassword.WindowCaption = 'Seguridad' + ChangePassword.LabelDescription = 'Cambiar la contrase'#195#177'a' + ChangePassword.LabelCurrentPassword = 'Contrase'#195#177'a actual: ' + ChangePassword.LabelNewPassword = 'Nueva contrase'#195#177'a: ' + ChangePassword.LabelConfirm = 'Confirmar contrase'#195#177'a: ' + ChangePassword.BtSave = 'C&ambiar' + ChangePassword.BtCancel = 'Cancelar' + ResetPassword.WindowCaption = 'Define Password of the user : "%s"' + ResetPassword.LabelPassword = 'Password :' + History.Evento_Insert = 'Inserido' + History.Evento_Delete = 'Apagado' + History.Evento_Edit = 'Editado' + History.Evento_NewRecord = 'Novo registro' + History.Hist_All = 'Todos' + History.Msg_LimpHistorico = 'Excluir todo o conte'#250'do do hist'#243'rico ?' + History.Msg_MensConfirma = 'Confirma'#231#227'o' + History.Msg_LogEmptyHistory = 'Usu'#225'rio %s apagou todo o hist'#243'rico as %s' + History.LabelDescricao = 'Hist'#243'rico de tabelas' + History.LabelUser = 'Usu'#225'rio' + History.LabelForm = 'Formul'#225'rio' + History.LabelEvento = 'Evento' + History.LabelTabela = 'Tabela' + History.LabelDataEvento = 'Data' + History.LabelHoraEvento = 'Hora' + History.Msg_NewRecord = '%s inseriu um novo registro' + History.Hist_MsgExceptPropr = 'Favor informar a propriedade %s' + History.Hist_BtnFiltro = '&Aplicar Filtro' + History.Hist_BtnExcluir = '&Excluir Hist'#243'rico' + History.Hist_BtnFechar = '&Fechar' + TypeFieldsDB.Type_VarChar = 'VarChar' + TypeFieldsDB.Type_Char = 'Char' + TypeFieldsDB.Type_Int = 'Int' + TypeFieldsDB.Type_MemoField = 'BLOB SUB_TYPE 1 SEGMENT SIZE 1024' + Language = ucPortuguesBr + Left = 152 + Top = 104 + end +end diff --git a/Source/ApplicationBase/Usuarios/Data/uDataModuleUsuarios.pas b/Source/ApplicationBase/Usuarios/Data/uDataModuleUsuarios.pas new file mode 100644 index 00000000..213d74f3 --- /dev/null +++ b/Source/ApplicationBase/Usuarios/Data/uDataModuleUsuarios.pas @@ -0,0 +1,535 @@ +unit uDataModuleUsuarios; + +interface + +uses + SysUtils, Classes, DB, DBClient, uDADataTable, + FactuGES_Intf, uIntegerListUtils, uBizEmpresas, + UCBase, UCDataConnector, uUCROConn, uDARemoteDataAdapter, + uDARemoteCommand, uROClient, uRORemoteService, uDADataStreamer, + uDABin2DataStreamer, uDAScriptingProvider, uIDataModuleUsuarios, UCSettings; + +const + PERFIL_ADMINISTRADORES = 'Administradores'; + +type + TDataModuleUsuarios = class(TDataModule, IDataModuleUsuarios) + ROLoginService: TRORemoteService; + srvUsuarios: TRORemoteService; + Bin2DataStreamer: TDABin2DataStreamer; + UCSettingsSpanish: TUCSettings; + procedure DAClientDataModuleCreate(Sender: TObject); + procedure DAClientDataModuleDestroy(Sender: TObject); + private + FDataConnector : TUCROConn; + FUsuario : String; + FPassword : String; // Lo guardo para poder hacer una reconexión + + FLoginInfo: TRdxLoginInfo; +// function GetEsAdministrador: Boolean; + + //function GetEmpresas: TIntegerList; + + {procedure SetEmpresaActual(const Value: IBizEmpresa); + function GetIDEmpresaActual: Integer; + procedure SetIDEmpresaActual(const Value: Integer);} + function GetDataConnector : TUCDataConnector; + function GetUCSettings : TUCSettings; + procedure InicializarCamposUserControl(AUserControl: TUserControl); + procedure InicializarSettingsUserControl(AUserControl: TUserControl); + public + procedure InicializarUserControl (AUserControl : TUserControl); +{ function Login: Boolean; overload; + function Login(Usuario: String; Password: String): Boolean; overload; + procedure Logout; + procedure CambiarPassword; overload;} + +// property EsAdministrador : Boolean read GetEsAdministrador; +// property IDEmpresaActual : Integer read GetIDEmpresaActual write SetIDEmpresaActual; +// property EmpresaActual : IBizEmpresa read FEmpresaActual write SetEmpresaActual; +// property Empresas : TIntegerList read GetEmpresas; +// property LoginInfo: TRdxLoginInfo read FLoginInfo; + property DataConnector : TUCDataConnector read GetDataConnector; + property UCSettings: TUCSettings read GetUCSettings; + end; + +implementation + +{$R *.DFM} + +uses + Forms, Controls, uDataTableUtils, uDataModuleConexion, + Dialogs, Windows, uEmpresasController, + schUsuariosClient_Intf; + +{ TDAClientDataModule1 } + +procedure TDataModuleUsuarios.DAClientDataModuleCreate(Sender: TObject); +begin + ROLoginService.Channel := dmConexion.Channel; + ROLoginService.Message := dmConexion.Message; + + FDataConnector := TUCROConn.Create(nil); + FDataConnector.RemoteService := srvUsuarios; + + FUsuario := ''; + FPassword := ''; + FLoginInfo := NIL; +end; + +{function TDataModuleUsuarios.Login: Boolean; +begin + // Intento hacer login si el usuario ya lo había hecho antes + if (Length(FUsuario) > 0) then + if Login(FUsuario, FPassword) then + begin + Result := True; + Exit; + end; + + // Si no funcionar el login anterior o es la primera vez, + // saco la pantalla de login + with TfLoginForm.Create(NIL) do + try + if Assigned(FLoginInfo) then + edtUser.Text := FLoginInfo.Usuario; + Result := (ShowModal = mrOK) + finally + Free; + end; +end;} + +{function TDataModuleUsuarios.Login(Usuario: String; Password: String): Boolean; +begin + // Libero la información del login anterior (sesión, etc) + if Assigned(FLoginInfo) then + FreeANDNil(FLoginInfo); + + Result := (ROLoginService as IsrvLogin).Login(Usuario, Password, FLoginInfo); + + if Result then + begin + // Lo guardo para poder reconectarme + FUsuario := Usuario; + FPassword := Password; + end; +end;} + +{procedure TDataModuleUsuarios.Logout; +begin + (ROLoginService as IsrvLogin).Logout; + if Assigned(FLoginInfo) then + FreeANDNil(FLoginInfo); + FUsuario := ''; + FPassword := ''; +end;} + +{procedure TDataModuleUsuarios.SetEmpresaActual(const Value: IBizEmpresa); +begin + FEmpresaActual := Value; + FEmpresaActual.DataTable.Active := True; +end;} + +{procedure TDataModuleUsuarios.SetIDEmpresaActual(const Value: Integer); +var + AEmpresasController : IEmpresasController; + AEmpresa : IBizEmpresa; +begin + AEmpresasController := TEmpresasController.Create; + AEmpresa := AEmpresasController.Buscar(Value); + AEmpresa.DataTable.Active := True; + + if not AEmpresa.IsEmpty then + begin + FEmpresaActual := AEmpresa; + FEmpresaActual.DataTable.Active := True; + end + else + FEmpresaActual := NIL; +end;} + +procedure TDataModuleUsuarios.DAClientDataModuleDestroy(Sender: TObject); +begin + if Assigned(FDataConnector) then + FreeANDNIL(FDataConnector); + + if Assigned(FLoginInfo) then + FreeANDNIL(FLoginInfo); +end; + +function TDataModuleUsuarios.GetDataConnector: TUCDataConnector; +begin + Result := FDataConnector; +end; + +{function TDataModuleUsuarios.GetEmpresas: TIntegerList; +var + i : integer; +begin + Result := TIntegerList.Create; + + if not Assigned(FLoginInfo) then + raise Exception.Create('Usuario no validado en el sistema (login)'); + + for i := 0 to FLoginInfo.Empresas.Count - 1 do + Result.Add(FLoginInfo.Empresas.Items[i]); +end; + +function TDataModuleUsuarios.GetEsAdministrador: Boolean; +var + I: Integer; +begin + Result := False; + + if not Assigned(FLoginInfo) then + raise Exception.Create('Usuario no validado en el sistema (login)'); + + for I := 0 to FLoginInfo.Perfiles.Count - 1 do + if FLoginInfo.Perfiles.Items[I] = PERFIL_ADMINISTRADORES then + begin + Result := True; + Break; + end; +end; + +function TDataModuleUsuarios.GetIDEmpresaActual: Integer; +begin + if not Assigned(FEmpresaActual) then + Result := ID_NULO + else + Result := FEmpresaActual.ID; +end; } + +function TDataModuleUsuarios.GetUCSettings: TUCSettings; +begin + Result := UCSettingsSpanish; +end; + +procedure TDataModuleUsuarios.InicializarCamposUserControl( + AUserControl: TUserControl); +begin + if not Assigned(AUserControl) then + raise Exception.Create('UserControl no asignado (InicializarUserControl)'); + + with AUserControl do + begin + DataConnector := FDataConnector; + + with TableUsers do + begin + TableName := 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 := nme_PERMISOS; + FieldUserID := fld_PERMISOSID_USUARIO; + FieldModule := fld_PERMISOSMODULO; + FieldComponentName := fld_PERMISOSNOMBRECOMP; + FieldFormName := fld_PERMISOSEXNOMBREFORM; + FieldKey := fld_PERMISOSCHECKSUM; + end; + + with TableUsersLogged do + begin + TableName := 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 := 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; + +{procedure TDataModuleUsuarios.CambiarPassword; +begin + with TfCambiarPassword.Create(NIL) do + try + if ShowModal = mrOk then + if CambiarPassword(edtPassword.Text) then + Application.MessageBox('La contraseña ha sido cambiada correctamente.', 'Información', MB_OK); + finally + Free; + end; +end;} + +end. diff --git a/Source/ApplicationBase/Usuarios/Data/uUCROConn.pas b/Source/ApplicationBase/Usuarios/Data/uUCROConn.pas new file mode 100644 index 00000000..19895e5b --- /dev/null +++ b/Source/ApplicationBase/Usuarios/Data/uUCROConn.pas @@ -0,0 +1,189 @@ +{----------------------------------------------------------------------------- + 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, + UCDataConnector, + uRORemoteService, + uDADataStreamer, + uDABin2DataStreamer, + uDARemoteDataAdapter; + +type + TUCROConn = class(TUCDataConnector) + private + FRemoteService: TRORemoteService; + FDataAdapter : TDARemoteDataAdapter; + FDataStreamer : TDABin2DataStreamer; + procedure SetRemoteService(const Value: TRORemoteService); + protected + procedure Notification(AComponent: TComponent; Operation: TOperation); override; + 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 RemoteService : TRORemoteService read FRemoteService write SetRemoteService; + end; + +implementation + +uses + Forms, Dialogs, FactuGES_Intf, uROTypes, uDAClasses, uDADataTable, + uDACDSDataTable; + +{ TUCROConn } + +constructor TUCROConn.Create(AOwner: TComponent); +begin + inherited; + FDataStreamer := TDABin2DataStreamer.Create(nil); + FDataAdapter := TDARemoteDataAdapter.Create(nil); + FDataAdapter.DataStreamer := FDataStreamer; + FDataAdapter.SetupDefaultRequest; +end; + +destructor TUCROConn.Destroy; +begin + 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.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.SetRemoteService(const Value: TRORemoteService); +begin + FRemoteService := Value; + if Assigned(FRemoteService) then + begin + with FDataAdapter do + begin + RemoteService := FRemoteService; + GetSchemaCall.RemoteService := FRemoteService; + GetDataCall.RemoteService := FRemoteService; + UpdateDataCall.RemoteService := FRemoteService; + GetScriptsCall.RemoteService := FRemoteService; + end; + end; +end; + +procedure TUCROConn.UCExecSQL(FSQL: String); +begin + (FRemoteService as IsrvUsuarios).SQLExecuteCommand(FSQL); +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 + 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. + diff --git a/Source/ApplicationBase/Usuarios/Model/Data/uIDataModuleUsuarios.pas b/Source/ApplicationBase/Usuarios/Model/Data/uIDataModuleUsuarios.pas new file mode 100644 index 00000000..3e96b9cc --- /dev/null +++ b/Source/ApplicationBase/Usuarios/Model/Data/uIDataModuleUsuarios.pas @@ -0,0 +1,18 @@ +unit uIDataModuleUsuarios; + +interface + +uses + UCBase, UCDataConnector, UCSettings; + +type + IDataModuleUsuarios = interface + ['{F2D2E969-5E87-42DE-A550-E839C4607C72}'] + procedure InicializarUserControl (AUserControl : TUserControl); + function GetDataConnector : TUCDataConnector; + property DataConnector : TUCDataConnector read GetDataConnector; + end; + +implementation + +end. diff --git a/Source/ApplicationBase/Usuarios/Model/schUsuariosClient_Intf.pas b/Source/ApplicationBase/Usuarios/Model/schUsuariosClient_Intf.pas new file mode 100644 index 00000000..1b5720ab --- /dev/null +++ b/Source/ApplicationBase/Usuarios/Model/schUsuariosClient_Intf.pas @@ -0,0 +1,1464 @@ +unit schUsuariosClient_Intf; + +interface + +uses + Classes, DB, SysUtils, uROClasses, uDADataTable, FmtBCD, uROXMLIntf; + +const + { Data table rules ids + Feel free to change them to something more human readable + but make sure they are unique in the context of your application } + RID_USUARIOS = '{1A97AED1-832A-46A9-9894-8CB44D7AFBBD}'; + RID_USUARIOS_EVENTOS = '{16F186E3-A7CF-40DD-B040-EB735A5F1FDD}'; + RID_USUARIOS_LOGON = '{8005FBCF-1276-473D-A3BE-15C8159AB6CE}'; + RID_PERMISOS = '{802AF8DD-DA72-412A-AB43-4D5F0EA5630F}'; + RID_PERMISOSEX = '{B2319D8E-0423-41D1-B166-7BD9EC069549}'; + + { Data table names } + nme_USUARIOS = 'USUARIOS'; + nme_USUARIOS_EVENTOS = 'USUARIOS_EVENTOS'; + nme_USUARIOS_LOGON = 'USUARIOS_LOGON'; + nme_PERMISOS = 'PERMISOS'; + nme_PERMISOSEX = 'PERMISOSEX'; + + { USUARIOS fields } + fld_USUARIOSID = 'ID'; + fld_USUARIOSUSERNAME = 'USERNAME'; + fld_USUARIOSLOGIN = 'LOGIN'; + fld_USUARIOSPASS = 'PASS'; + fld_USUARIOSPASSEXPIRED = 'PASSEXPIRED'; + fld_USUARIOSBLOQUEADO = 'BLOQUEADO'; + fld_USUARIOSEMAIL = 'EMAIL'; + fld_USUARIOSUSERDAYSSUN = 'USERDAYSSUN'; + fld_USUARIOSPRIVILEGED = 'PRIVILEGED'; + fld_USUARIOSTIPO = 'TIPO'; + fld_USUARIOSID_PERFIL = 'ID_PERFIL'; + fld_USUARIOSCHECKSUM = 'CHECKSUM'; + + { USUARIOS field indexes } + idx_USUARIOSID = 0; + idx_USUARIOSUSERNAME = 1; + idx_USUARIOSLOGIN = 2; + idx_USUARIOSPASS = 3; + idx_USUARIOSPASSEXPIRED = 4; + idx_USUARIOSBLOQUEADO = 5; + idx_USUARIOSEMAIL = 6; + idx_USUARIOSUSERDAYSSUN = 7; + idx_USUARIOSPRIVILEGED = 8; + idx_USUARIOSTIPO = 9; + idx_USUARIOSID_PERFIL = 10; + idx_USUARIOSCHECKSUM = 11; + + { USUARIOS_EVENTOS fields } + fld_USUARIOS_EVENTOSAPLICACION = 'APLICACION'; + fld_USUARIOS_EVENTOSID_USUARIO = 'ID_USUARIO'; + fld_USUARIOS_EVENTOSFECHA = 'FECHA'; + fld_USUARIOS_EVENTOSHORA = 'HORA'; + fld_USUARIOS_EVENTOSFORM = 'FORM'; + fld_USUARIOS_EVENTOSTITULO_FORM = 'TITULO_FORM'; + fld_USUARIOS_EVENTOSEVENTO = 'EVENTO'; + fld_USUARIOS_EVENTOSNOTAS = 'NOTAS'; + fld_USUARIOS_EVENTOSTNAME = 'TNAME'; + + { USUARIOS_EVENTOS field indexes } + idx_USUARIOS_EVENTOSAPLICACION = 0; + idx_USUARIOS_EVENTOSID_USUARIO = 1; + idx_USUARIOS_EVENTOSFECHA = 2; + idx_USUARIOS_EVENTOSHORA = 3; + idx_USUARIOS_EVENTOSFORM = 4; + idx_USUARIOS_EVENTOSTITULO_FORM = 5; + idx_USUARIOS_EVENTOSEVENTO = 6; + idx_USUARIOS_EVENTOSNOTAS = 7; + idx_USUARIOS_EVENTOSTNAME = 8; + + { USUARIOS_LOGON fields } + fld_USUARIOS_LOGONLOGONID = 'LOGONID'; + fld_USUARIOS_LOGONID_USUARIO = 'ID_USUARIO'; + fld_USUARIOS_LOGONAPLICACION = 'APLICACION'; + fld_USUARIOS_LOGONEQUIPO = 'EQUIPO'; + fld_USUARIOS_LOGONDATA = 'DATA'; + + { USUARIOS_LOGON field indexes } + idx_USUARIOS_LOGONLOGONID = 0; + idx_USUARIOS_LOGONID_USUARIO = 1; + idx_USUARIOS_LOGONAPLICACION = 2; + idx_USUARIOS_LOGONEQUIPO = 3; + idx_USUARIOS_LOGONDATA = 4; + + { PERMISOS fields } + fld_PERMISOSID_USUARIO = 'ID_USUARIO'; + fld_PERMISOSMODULO = 'MODULO'; + fld_PERMISOSNOMBRECOMP = 'NOMBRECOMP'; + fld_PERMISOSCHECKSUM = 'CHECKSUM'; + + { PERMISOS field indexes } + idx_PERMISOSID_USUARIO = 0; + idx_PERMISOSMODULO = 1; + idx_PERMISOSNOMBRECOMP = 2; + idx_PERMISOSCHECKSUM = 3; + + { PERMISOSEX fields } + fld_PERMISOSEXID_USUARIO = 'ID_USUARIO'; + fld_PERMISOSEXMODULO = 'MODULO'; + fld_PERMISOSEXNOMBRECOMP = 'NOMBRECOMP'; + fld_PERMISOSEXNOMBREFORM = 'NOMBREFORM'; + fld_PERMISOSEXCHECKSUM = 'CHECKSUM'; + + { PERMISOSEX field indexes } + idx_PERMISOSEXID_USUARIO = 0; + idx_PERMISOSEXMODULO = 1; + idx_PERMISOSEXNOMBRECOMP = 2; + idx_PERMISOSEXNOMBREFORM = 3; + idx_PERMISOSEXCHECKSUM = 4; + +type + { IUSUARIOS } + IUSUARIOS = interface(IDAStronglyTypedDataTable) + ['{F248A54E-1181-40E9-B9B4-9A1D9F4DA382}'] + { Property getters and setters } + function GetIDValue: Integer; + procedure SetIDValue(const aValue: Integer); + function GetIDIsNull: Boolean; + procedure SetIDIsNull(const aValue: Boolean); + function GetUSERNAMEValue: String; + procedure SetUSERNAMEValue(const aValue: String); + function GetUSERNAMEIsNull: Boolean; + procedure SetUSERNAMEIsNull(const aValue: Boolean); + function GetLOGINValue: String; + procedure SetLOGINValue(const aValue: String); + function GetLOGINIsNull: Boolean; + procedure SetLOGINIsNull(const aValue: Boolean); + function GetPASSValue: String; + procedure SetPASSValue(const aValue: String); + function GetPASSIsNull: Boolean; + procedure SetPASSIsNull(const aValue: Boolean); + function GetPASSEXPIREDValue: DateTime; + procedure SetPASSEXPIREDValue(const aValue: DateTime); + function GetPASSEXPIREDIsNull: Boolean; + procedure SetPASSEXPIREDIsNull(const aValue: Boolean); + function GetBLOQUEADOValue: SmallInt; + procedure SetBLOQUEADOValue(const aValue: SmallInt); + function GetBLOQUEADOIsNull: Boolean; + procedure SetBLOQUEADOIsNull(const aValue: Boolean); + function GetEMAILValue: String; + procedure SetEMAILValue(const aValue: String); + function GetEMAILIsNull: Boolean; + procedure SetEMAILIsNull(const aValue: Boolean); + function GetUSERDAYSSUNValue: Integer; + procedure SetUSERDAYSSUNValue(const aValue: Integer); + function GetUSERDAYSSUNIsNull: Boolean; + procedure SetUSERDAYSSUNIsNull(const aValue: Boolean); + function GetPRIVILEGEDValue: Integer; + procedure SetPRIVILEGEDValue(const aValue: Integer); + function GetPRIVILEGEDIsNull: Boolean; + procedure SetPRIVILEGEDIsNull(const aValue: Boolean); + function GetTIPOValue: String; + procedure SetTIPOValue(const aValue: String); + function GetTIPOIsNull: Boolean; + procedure SetTIPOIsNull(const aValue: Boolean); + function GetID_PERFILValue: Integer; + procedure SetID_PERFILValue(const aValue: Integer); + function GetID_PERFILIsNull: Boolean; + procedure SetID_PERFILIsNull(const aValue: Boolean); + function GetCHECKSUMValue: String; + procedure SetCHECKSUMValue(const aValue: String); + function GetCHECKSUMIsNull: Boolean; + procedure SetCHECKSUMIsNull(const aValue: Boolean); + + + { Properties } + property ID: Integer read GetIDValue write SetIDValue; + property IDIsNull: Boolean read GetIDIsNull write SetIDIsNull; + property USERNAME: String read GetUSERNAMEValue write SetUSERNAMEValue; + property USERNAMEIsNull: Boolean read GetUSERNAMEIsNull write SetUSERNAMEIsNull; + property LOGIN: String read GetLOGINValue write SetLOGINValue; + property LOGINIsNull: Boolean read GetLOGINIsNull write SetLOGINIsNull; + property PASS: String read GetPASSValue write SetPASSValue; + property PASSIsNull: Boolean read GetPASSIsNull write SetPASSIsNull; + property PASSEXPIRED: DateTime read GetPASSEXPIREDValue write SetPASSEXPIREDValue; + property PASSEXPIREDIsNull: Boolean read GetPASSEXPIREDIsNull write SetPASSEXPIREDIsNull; + property BLOQUEADO: SmallInt read GetBLOQUEADOValue write SetBLOQUEADOValue; + property BLOQUEADOIsNull: Boolean read GetBLOQUEADOIsNull write SetBLOQUEADOIsNull; + property EMAIL: String read GetEMAILValue write SetEMAILValue; + property EMAILIsNull: Boolean read GetEMAILIsNull write SetEMAILIsNull; + property USERDAYSSUN: Integer read GetUSERDAYSSUNValue write SetUSERDAYSSUNValue; + property USERDAYSSUNIsNull: Boolean read GetUSERDAYSSUNIsNull write SetUSERDAYSSUNIsNull; + property PRIVILEGED: Integer read GetPRIVILEGEDValue write SetPRIVILEGEDValue; + property PRIVILEGEDIsNull: Boolean read GetPRIVILEGEDIsNull write SetPRIVILEGEDIsNull; + property TIPO: String read GetTIPOValue write SetTIPOValue; + property TIPOIsNull: Boolean read GetTIPOIsNull write SetTIPOIsNull; + property ID_PERFIL: Integer read GetID_PERFILValue write SetID_PERFILValue; + property ID_PERFILIsNull: Boolean read GetID_PERFILIsNull write SetID_PERFILIsNull; + property CHECKSUM: String read GetCHECKSUMValue write SetCHECKSUMValue; + property CHECKSUMIsNull: Boolean read GetCHECKSUMIsNull write SetCHECKSUMIsNull; + end; + + { TUSUARIOSDataTableRules } + TUSUARIOSDataTableRules = class(TDADataTableRules, IUSUARIOS) + private + protected + { Property getters and setters } + function GetIDValue: Integer; virtual; + procedure SetIDValue(const aValue: Integer); virtual; + function GetIDIsNull: Boolean; virtual; + procedure SetIDIsNull(const aValue: Boolean); virtual; + function GetUSERNAMEValue: String; virtual; + procedure SetUSERNAMEValue(const aValue: String); virtual; + function GetUSERNAMEIsNull: Boolean; virtual; + procedure SetUSERNAMEIsNull(const aValue: Boolean); virtual; + function GetLOGINValue: String; virtual; + procedure SetLOGINValue(const aValue: String); virtual; + function GetLOGINIsNull: Boolean; virtual; + procedure SetLOGINIsNull(const aValue: Boolean); virtual; + function GetPASSValue: String; virtual; + procedure SetPASSValue(const aValue: String); virtual; + function GetPASSIsNull: Boolean; virtual; + procedure SetPASSIsNull(const aValue: Boolean); virtual; + function GetPASSEXPIREDValue: DateTime; virtual; + procedure SetPASSEXPIREDValue(const aValue: DateTime); virtual; + function GetPASSEXPIREDIsNull: Boolean; virtual; + procedure SetPASSEXPIREDIsNull(const aValue: Boolean); virtual; + function GetBLOQUEADOValue: SmallInt; virtual; + procedure SetBLOQUEADOValue(const aValue: SmallInt); virtual; + function GetBLOQUEADOIsNull: Boolean; virtual; + procedure SetBLOQUEADOIsNull(const aValue: Boolean); virtual; + function GetEMAILValue: String; virtual; + procedure SetEMAILValue(const aValue: String); virtual; + function GetEMAILIsNull: Boolean; virtual; + procedure SetEMAILIsNull(const aValue: Boolean); virtual; + function GetUSERDAYSSUNValue: Integer; virtual; + procedure SetUSERDAYSSUNValue(const aValue: Integer); virtual; + function GetUSERDAYSSUNIsNull: Boolean; virtual; + procedure SetUSERDAYSSUNIsNull(const aValue: Boolean); virtual; + function GetPRIVILEGEDValue: Integer; virtual; + procedure SetPRIVILEGEDValue(const aValue: Integer); virtual; + function GetPRIVILEGEDIsNull: Boolean; virtual; + procedure SetPRIVILEGEDIsNull(const aValue: Boolean); virtual; + function GetTIPOValue: String; virtual; + procedure SetTIPOValue(const aValue: String); virtual; + function GetTIPOIsNull: Boolean; virtual; + procedure SetTIPOIsNull(const aValue: Boolean); virtual; + function GetID_PERFILValue: Integer; virtual; + procedure SetID_PERFILValue(const aValue: Integer); virtual; + function GetID_PERFILIsNull: Boolean; virtual; + procedure SetID_PERFILIsNull(const aValue: Boolean); virtual; + function GetCHECKSUMValue: String; virtual; + procedure SetCHECKSUMValue(const aValue: String); virtual; + function GetCHECKSUMIsNull: Boolean; virtual; + procedure SetCHECKSUMIsNull(const aValue: Boolean); virtual; + + { Properties } + property ID: Integer read GetIDValue write SetIDValue; + property IDIsNull: Boolean read GetIDIsNull write SetIDIsNull; + property USERNAME: String read GetUSERNAMEValue write SetUSERNAMEValue; + property USERNAMEIsNull: Boolean read GetUSERNAMEIsNull write SetUSERNAMEIsNull; + property LOGIN: String read GetLOGINValue write SetLOGINValue; + property LOGINIsNull: Boolean read GetLOGINIsNull write SetLOGINIsNull; + property PASS: String read GetPASSValue write SetPASSValue; + property PASSIsNull: Boolean read GetPASSIsNull write SetPASSIsNull; + property PASSEXPIRED: DateTime read GetPASSEXPIREDValue write SetPASSEXPIREDValue; + property PASSEXPIREDIsNull: Boolean read GetPASSEXPIREDIsNull write SetPASSEXPIREDIsNull; + property BLOQUEADO: SmallInt read GetBLOQUEADOValue write SetBLOQUEADOValue; + property BLOQUEADOIsNull: Boolean read GetBLOQUEADOIsNull write SetBLOQUEADOIsNull; + property EMAIL: String read GetEMAILValue write SetEMAILValue; + property EMAILIsNull: Boolean read GetEMAILIsNull write SetEMAILIsNull; + property USERDAYSSUN: Integer read GetUSERDAYSSUNValue write SetUSERDAYSSUNValue; + property USERDAYSSUNIsNull: Boolean read GetUSERDAYSSUNIsNull write SetUSERDAYSSUNIsNull; + property PRIVILEGED: Integer read GetPRIVILEGEDValue write SetPRIVILEGEDValue; + property PRIVILEGEDIsNull: Boolean read GetPRIVILEGEDIsNull write SetPRIVILEGEDIsNull; + property TIPO: String read GetTIPOValue write SetTIPOValue; + property TIPOIsNull: Boolean read GetTIPOIsNull write SetTIPOIsNull; + property ID_PERFIL: Integer read GetID_PERFILValue write SetID_PERFILValue; + property ID_PERFILIsNull: Boolean read GetID_PERFILIsNull write SetID_PERFILIsNull; + property CHECKSUM: String read GetCHECKSUMValue write SetCHECKSUMValue; + property CHECKSUMIsNull: Boolean read GetCHECKSUMIsNull write SetCHECKSUMIsNull; + + public + constructor Create(aDataTable: TDADataTable); override; + destructor Destroy; override; + + end; + + { IUSUARIOS_EVENTOS } + IUSUARIOS_EVENTOS = interface(IDAStronglyTypedDataTable) + ['{8E5D7E37-04E5-4395-8B3E-E0757F5675B4}'] + { Property getters and setters } + function GetAPLICACIONValue: String; + procedure SetAPLICACIONValue(const aValue: String); + function GetAPLICACIONIsNull: Boolean; + procedure SetAPLICACIONIsNull(const aValue: Boolean); + function GetID_USUARIOValue: Integer; + procedure SetID_USUARIOValue(const aValue: Integer); + function GetID_USUARIOIsNull: Boolean; + procedure SetID_USUARIOIsNull(const aValue: Boolean); + function GetFECHAValue: String; + procedure SetFECHAValue(const aValue: String); + function GetFECHAIsNull: Boolean; + procedure SetFECHAIsNull(const aValue: Boolean); + function GetHORAValue: String; + procedure SetHORAValue(const aValue: String); + function GetHORAIsNull: Boolean; + procedure SetHORAIsNull(const aValue: Boolean); + function GetFORMValue: String; + procedure SetFORMValue(const aValue: String); + function GetFORMIsNull: Boolean; + procedure SetFORMIsNull(const aValue: Boolean); + function GetTITULO_FORMValue: String; + procedure SetTITULO_FORMValue(const aValue: String); + function GetTITULO_FORMIsNull: Boolean; + procedure SetTITULO_FORMIsNull(const aValue: Boolean); + function GetEVENTOValue: String; + procedure SetEVENTOValue(const aValue: String); + function GetEVENTOIsNull: Boolean; + procedure SetEVENTOIsNull(const aValue: Boolean); + function GetNOTASValue: IROStrings; + function GetNOTASIsNull: Boolean; + procedure SetNOTASIsNull(const aValue: Boolean); + function GetTNAMEValue: String; + procedure SetTNAMEValue(const aValue: String); + function GetTNAMEIsNull: Boolean; + procedure SetTNAMEIsNull(const aValue: Boolean); + + + { Properties } + property APLICACION: String read GetAPLICACIONValue write SetAPLICACIONValue; + property APLICACIONIsNull: Boolean read GetAPLICACIONIsNull write SetAPLICACIONIsNull; + property ID_USUARIO: Integer read GetID_USUARIOValue write SetID_USUARIOValue; + property ID_USUARIOIsNull: Boolean read GetID_USUARIOIsNull write SetID_USUARIOIsNull; + property FECHA: String read GetFECHAValue write SetFECHAValue; + property FECHAIsNull: Boolean read GetFECHAIsNull write SetFECHAIsNull; + property HORA: String read GetHORAValue write SetHORAValue; + property HORAIsNull: Boolean read GetHORAIsNull write SetHORAIsNull; + property FORM: String read GetFORMValue write SetFORMValue; + property FORMIsNull: Boolean read GetFORMIsNull write SetFORMIsNull; + property TITULO_FORM: String read GetTITULO_FORMValue write SetTITULO_FORMValue; + property TITULO_FORMIsNull: Boolean read GetTITULO_FORMIsNull write SetTITULO_FORMIsNull; + property EVENTO: String read GetEVENTOValue write SetEVENTOValue; + property EVENTOIsNull: Boolean read GetEVENTOIsNull write SetEVENTOIsNull; + property NOTAS: IROStrings read GetNOTASValue; + property NOTASIsNull: Boolean read GetNOTASIsNull write SetNOTASIsNull; + property TNAME: String read GetTNAMEValue write SetTNAMEValue; + property TNAMEIsNull: Boolean read GetTNAMEIsNull write SetTNAMEIsNull; + end; + + { TUSUARIOS_EVENTOSDataTableRules } + TUSUARIOS_EVENTOSDataTableRules = class(TDADataTableRules, IUSUARIOS_EVENTOS) + private + f_NOTAS: IROStrings; + procedure NOTAS_OnChange(Sender: TObject); + protected + { Property getters and setters } + function GetAPLICACIONValue: String; virtual; + procedure SetAPLICACIONValue(const aValue: String); virtual; + function GetAPLICACIONIsNull: Boolean; virtual; + procedure SetAPLICACIONIsNull(const aValue: Boolean); virtual; + function GetID_USUARIOValue: Integer; virtual; + procedure SetID_USUARIOValue(const aValue: Integer); virtual; + function GetID_USUARIOIsNull: Boolean; virtual; + procedure SetID_USUARIOIsNull(const aValue: Boolean); virtual; + function GetFECHAValue: String; virtual; + procedure SetFECHAValue(const aValue: String); virtual; + function GetFECHAIsNull: Boolean; virtual; + procedure SetFECHAIsNull(const aValue: Boolean); virtual; + function GetHORAValue: String; virtual; + procedure SetHORAValue(const aValue: String); virtual; + function GetHORAIsNull: Boolean; virtual; + procedure SetHORAIsNull(const aValue: Boolean); virtual; + function GetFORMValue: String; virtual; + procedure SetFORMValue(const aValue: String); virtual; + function GetFORMIsNull: Boolean; virtual; + procedure SetFORMIsNull(const aValue: Boolean); virtual; + function GetTITULO_FORMValue: String; virtual; + procedure SetTITULO_FORMValue(const aValue: String); virtual; + function GetTITULO_FORMIsNull: Boolean; virtual; + procedure SetTITULO_FORMIsNull(const aValue: Boolean); virtual; + function GetEVENTOValue: String; virtual; + procedure SetEVENTOValue(const aValue: String); virtual; + function GetEVENTOIsNull: Boolean; virtual; + procedure SetEVENTOIsNull(const aValue: Boolean); virtual; + function GetNOTASValue: IROStrings; virtual; + function GetNOTASIsNull: Boolean; virtual; + procedure SetNOTASIsNull(const aValue: Boolean); virtual; + function GetTNAMEValue: String; virtual; + procedure SetTNAMEValue(const aValue: String); virtual; + function GetTNAMEIsNull: Boolean; virtual; + procedure SetTNAMEIsNull(const aValue: Boolean); virtual; + + { Properties } + property APLICACION: String read GetAPLICACIONValue write SetAPLICACIONValue; + property APLICACIONIsNull: Boolean read GetAPLICACIONIsNull write SetAPLICACIONIsNull; + property ID_USUARIO: Integer read GetID_USUARIOValue write SetID_USUARIOValue; + property ID_USUARIOIsNull: Boolean read GetID_USUARIOIsNull write SetID_USUARIOIsNull; + property FECHA: String read GetFECHAValue write SetFECHAValue; + property FECHAIsNull: Boolean read GetFECHAIsNull write SetFECHAIsNull; + property HORA: String read GetHORAValue write SetHORAValue; + property HORAIsNull: Boolean read GetHORAIsNull write SetHORAIsNull; + property FORM: String read GetFORMValue write SetFORMValue; + property FORMIsNull: Boolean read GetFORMIsNull write SetFORMIsNull; + property TITULO_FORM: String read GetTITULO_FORMValue write SetTITULO_FORMValue; + property TITULO_FORMIsNull: Boolean read GetTITULO_FORMIsNull write SetTITULO_FORMIsNull; + property EVENTO: String read GetEVENTOValue write SetEVENTOValue; + property EVENTOIsNull: Boolean read GetEVENTOIsNull write SetEVENTOIsNull; + property NOTAS: IROStrings read GetNOTASValue; + property NOTASIsNull: Boolean read GetNOTASIsNull write SetNOTASIsNull; + property TNAME: String read GetTNAMEValue write SetTNAMEValue; + property TNAMEIsNull: Boolean read GetTNAMEIsNull write SetTNAMEIsNull; + + public + constructor Create(aDataTable: TDADataTable); override; + destructor Destroy; override; + + end; + + { IUSUARIOS_LOGON } + IUSUARIOS_LOGON = interface(IDAStronglyTypedDataTable) + ['{FF8C8388-9397-4FA2-AB70-491B8299DC00}'] + { Property getters and setters } + function GetLOGONIDValue: String; + procedure SetLOGONIDValue(const aValue: String); + function GetLOGONIDIsNull: Boolean; + procedure SetLOGONIDIsNull(const aValue: Boolean); + function GetID_USUARIOValue: Integer; + procedure SetID_USUARIOValue(const aValue: Integer); + function GetID_USUARIOIsNull: Boolean; + procedure SetID_USUARIOIsNull(const aValue: Boolean); + function GetAPLICACIONValue: String; + procedure SetAPLICACIONValue(const aValue: String); + function GetAPLICACIONIsNull: Boolean; + procedure SetAPLICACIONIsNull(const aValue: Boolean); + function GetEQUIPOValue: String; + procedure SetEQUIPOValue(const aValue: String); + function GetEQUIPOIsNull: Boolean; + procedure SetEQUIPOIsNull(const aValue: Boolean); + function GetDATAValue: String; + procedure SetDATAValue(const aValue: String); + function GetDATAIsNull: Boolean; + procedure SetDATAIsNull(const aValue: Boolean); + + + { Properties } + property LOGONID: String read GetLOGONIDValue write SetLOGONIDValue; + property LOGONIDIsNull: Boolean read GetLOGONIDIsNull write SetLOGONIDIsNull; + property ID_USUARIO: Integer read GetID_USUARIOValue write SetID_USUARIOValue; + property ID_USUARIOIsNull: Boolean read GetID_USUARIOIsNull write SetID_USUARIOIsNull; + property APLICACION: String read GetAPLICACIONValue write SetAPLICACIONValue; + property APLICACIONIsNull: Boolean read GetAPLICACIONIsNull write SetAPLICACIONIsNull; + property EQUIPO: String read GetEQUIPOValue write SetEQUIPOValue; + property EQUIPOIsNull: Boolean read GetEQUIPOIsNull write SetEQUIPOIsNull; + property DATA: String read GetDATAValue write SetDATAValue; + property DATAIsNull: Boolean read GetDATAIsNull write SetDATAIsNull; + end; + + { TUSUARIOS_LOGONDataTableRules } + TUSUARIOS_LOGONDataTableRules = class(TDADataTableRules, IUSUARIOS_LOGON) + private + protected + { Property getters and setters } + function GetLOGONIDValue: String; virtual; + procedure SetLOGONIDValue(const aValue: String); virtual; + function GetLOGONIDIsNull: Boolean; virtual; + procedure SetLOGONIDIsNull(const aValue: Boolean); virtual; + function GetID_USUARIOValue: Integer; virtual; + procedure SetID_USUARIOValue(const aValue: Integer); virtual; + function GetID_USUARIOIsNull: Boolean; virtual; + procedure SetID_USUARIOIsNull(const aValue: Boolean); virtual; + function GetAPLICACIONValue: String; virtual; + procedure SetAPLICACIONValue(const aValue: String); virtual; + function GetAPLICACIONIsNull: Boolean; virtual; + procedure SetAPLICACIONIsNull(const aValue: Boolean); virtual; + function GetEQUIPOValue: String; virtual; + procedure SetEQUIPOValue(const aValue: String); virtual; + function GetEQUIPOIsNull: Boolean; virtual; + procedure SetEQUIPOIsNull(const aValue: Boolean); virtual; + function GetDATAValue: String; virtual; + procedure SetDATAValue(const aValue: String); virtual; + function GetDATAIsNull: Boolean; virtual; + procedure SetDATAIsNull(const aValue: Boolean); virtual; + + { Properties } + property LOGONID: String read GetLOGONIDValue write SetLOGONIDValue; + property LOGONIDIsNull: Boolean read GetLOGONIDIsNull write SetLOGONIDIsNull; + property ID_USUARIO: Integer read GetID_USUARIOValue write SetID_USUARIOValue; + property ID_USUARIOIsNull: Boolean read GetID_USUARIOIsNull write SetID_USUARIOIsNull; + property APLICACION: String read GetAPLICACIONValue write SetAPLICACIONValue; + property APLICACIONIsNull: Boolean read GetAPLICACIONIsNull write SetAPLICACIONIsNull; + property EQUIPO: String read GetEQUIPOValue write SetEQUIPOValue; + property EQUIPOIsNull: Boolean read GetEQUIPOIsNull write SetEQUIPOIsNull; + property DATA: String read GetDATAValue write SetDATAValue; + property DATAIsNull: Boolean read GetDATAIsNull write SetDATAIsNull; + + public + constructor Create(aDataTable: TDADataTable); override; + destructor Destroy; override; + + end; + + { IPERMISOS } + IPERMISOS = interface(IDAStronglyTypedDataTable) + ['{7705D3E7-EC27-4CB7-9492-1873D2158F79}'] + { Property getters and setters } + function GetID_USUARIOValue: Integer; + procedure SetID_USUARIOValue(const aValue: Integer); + function GetID_USUARIOIsNull: Boolean; + procedure SetID_USUARIOIsNull(const aValue: Boolean); + function GetMODULOValue: String; + procedure SetMODULOValue(const aValue: String); + function GetMODULOIsNull: Boolean; + procedure SetMODULOIsNull(const aValue: Boolean); + function GetNOMBRECOMPValue: String; + procedure SetNOMBRECOMPValue(const aValue: String); + function GetNOMBRECOMPIsNull: Boolean; + procedure SetNOMBRECOMPIsNull(const aValue: Boolean); + function GetCHECKSUMValue: String; + procedure SetCHECKSUMValue(const aValue: String); + function GetCHECKSUMIsNull: Boolean; + procedure SetCHECKSUMIsNull(const aValue: Boolean); + + + { Properties } + property ID_USUARIO: Integer read GetID_USUARIOValue write SetID_USUARIOValue; + property ID_USUARIOIsNull: Boolean read GetID_USUARIOIsNull write SetID_USUARIOIsNull; + property MODULO: String read GetMODULOValue write SetMODULOValue; + property MODULOIsNull: Boolean read GetMODULOIsNull write SetMODULOIsNull; + property NOMBRECOMP: String read GetNOMBRECOMPValue write SetNOMBRECOMPValue; + property NOMBRECOMPIsNull: Boolean read GetNOMBRECOMPIsNull write SetNOMBRECOMPIsNull; + property CHECKSUM: String read GetCHECKSUMValue write SetCHECKSUMValue; + property CHECKSUMIsNull: Boolean read GetCHECKSUMIsNull write SetCHECKSUMIsNull; + end; + + { TPERMISOSDataTableRules } + TPERMISOSDataTableRules = class(TDADataTableRules, IPERMISOS) + private + protected + { Property getters and setters } + function GetID_USUARIOValue: Integer; virtual; + procedure SetID_USUARIOValue(const aValue: Integer); virtual; + function GetID_USUARIOIsNull: Boolean; virtual; + procedure SetID_USUARIOIsNull(const aValue: Boolean); virtual; + function GetMODULOValue: String; virtual; + procedure SetMODULOValue(const aValue: String); virtual; + function GetMODULOIsNull: Boolean; virtual; + procedure SetMODULOIsNull(const aValue: Boolean); virtual; + function GetNOMBRECOMPValue: String; virtual; + procedure SetNOMBRECOMPValue(const aValue: String); virtual; + function GetNOMBRECOMPIsNull: Boolean; virtual; + procedure SetNOMBRECOMPIsNull(const aValue: Boolean); virtual; + function GetCHECKSUMValue: String; virtual; + procedure SetCHECKSUMValue(const aValue: String); virtual; + function GetCHECKSUMIsNull: Boolean; virtual; + procedure SetCHECKSUMIsNull(const aValue: Boolean); virtual; + + { Properties } + property ID_USUARIO: Integer read GetID_USUARIOValue write SetID_USUARIOValue; + property ID_USUARIOIsNull: Boolean read GetID_USUARIOIsNull write SetID_USUARIOIsNull; + property MODULO: String read GetMODULOValue write SetMODULOValue; + property MODULOIsNull: Boolean read GetMODULOIsNull write SetMODULOIsNull; + property NOMBRECOMP: String read GetNOMBRECOMPValue write SetNOMBRECOMPValue; + property NOMBRECOMPIsNull: Boolean read GetNOMBRECOMPIsNull write SetNOMBRECOMPIsNull; + property CHECKSUM: String read GetCHECKSUMValue write SetCHECKSUMValue; + property CHECKSUMIsNull: Boolean read GetCHECKSUMIsNull write SetCHECKSUMIsNull; + + public + constructor Create(aDataTable: TDADataTable); override; + destructor Destroy; override; + + end; + + { IPERMISOSEX } + IPERMISOSEX = interface(IDAStronglyTypedDataTable) + ['{1636E92E-3A74-4F5F-AF20-5831B0D57A38}'] + { Property getters and setters } + function GetID_USUARIOValue: Integer; + procedure SetID_USUARIOValue(const aValue: Integer); + function GetID_USUARIOIsNull: Boolean; + procedure SetID_USUARIOIsNull(const aValue: Boolean); + function GetMODULOValue: String; + procedure SetMODULOValue(const aValue: String); + function GetMODULOIsNull: Boolean; + procedure SetMODULOIsNull(const aValue: Boolean); + function GetNOMBRECOMPValue: String; + procedure SetNOMBRECOMPValue(const aValue: String); + function GetNOMBRECOMPIsNull: Boolean; + procedure SetNOMBRECOMPIsNull(const aValue: Boolean); + function GetNOMBREFORMValue: String; + procedure SetNOMBREFORMValue(const aValue: String); + function GetNOMBREFORMIsNull: Boolean; + procedure SetNOMBREFORMIsNull(const aValue: Boolean); + function GetCHECKSUMValue: String; + procedure SetCHECKSUMValue(const aValue: String); + function GetCHECKSUMIsNull: Boolean; + procedure SetCHECKSUMIsNull(const aValue: Boolean); + + + { Properties } + property ID_USUARIO: Integer read GetID_USUARIOValue write SetID_USUARIOValue; + property ID_USUARIOIsNull: Boolean read GetID_USUARIOIsNull write SetID_USUARIOIsNull; + property MODULO: String read GetMODULOValue write SetMODULOValue; + property MODULOIsNull: Boolean read GetMODULOIsNull write SetMODULOIsNull; + property NOMBRECOMP: String read GetNOMBRECOMPValue write SetNOMBRECOMPValue; + property NOMBRECOMPIsNull: Boolean read GetNOMBRECOMPIsNull write SetNOMBRECOMPIsNull; + property NOMBREFORM: String read GetNOMBREFORMValue write SetNOMBREFORMValue; + property NOMBREFORMIsNull: Boolean read GetNOMBREFORMIsNull write SetNOMBREFORMIsNull; + property CHECKSUM: String read GetCHECKSUMValue write SetCHECKSUMValue; + property CHECKSUMIsNull: Boolean read GetCHECKSUMIsNull write SetCHECKSUMIsNull; + end; + + { TPERMISOSEXDataTableRules } + TPERMISOSEXDataTableRules = class(TDADataTableRules, IPERMISOSEX) + private + protected + { Property getters and setters } + function GetID_USUARIOValue: Integer; virtual; + procedure SetID_USUARIOValue(const aValue: Integer); virtual; + function GetID_USUARIOIsNull: Boolean; virtual; + procedure SetID_USUARIOIsNull(const aValue: Boolean); virtual; + function GetMODULOValue: String; virtual; + procedure SetMODULOValue(const aValue: String); virtual; + function GetMODULOIsNull: Boolean; virtual; + procedure SetMODULOIsNull(const aValue: Boolean); virtual; + function GetNOMBRECOMPValue: String; virtual; + procedure SetNOMBRECOMPValue(const aValue: String); virtual; + function GetNOMBRECOMPIsNull: Boolean; virtual; + procedure SetNOMBRECOMPIsNull(const aValue: Boolean); virtual; + function GetNOMBREFORMValue: String; virtual; + procedure SetNOMBREFORMValue(const aValue: String); virtual; + function GetNOMBREFORMIsNull: Boolean; virtual; + procedure SetNOMBREFORMIsNull(const aValue: Boolean); virtual; + function GetCHECKSUMValue: String; virtual; + procedure SetCHECKSUMValue(const aValue: String); virtual; + function GetCHECKSUMIsNull: Boolean; virtual; + procedure SetCHECKSUMIsNull(const aValue: Boolean); virtual; + + { Properties } + property ID_USUARIO: Integer read GetID_USUARIOValue write SetID_USUARIOValue; + property ID_USUARIOIsNull: Boolean read GetID_USUARIOIsNull write SetID_USUARIOIsNull; + property MODULO: String read GetMODULOValue write SetMODULOValue; + property MODULOIsNull: Boolean read GetMODULOIsNull write SetMODULOIsNull; + property NOMBRECOMP: String read GetNOMBRECOMPValue write SetNOMBRECOMPValue; + property NOMBRECOMPIsNull: Boolean read GetNOMBRECOMPIsNull write SetNOMBRECOMPIsNull; + property NOMBREFORM: String read GetNOMBREFORMValue write SetNOMBREFORMValue; + property NOMBREFORMIsNull: Boolean read GetNOMBREFORMIsNull write SetNOMBREFORMIsNull; + property CHECKSUM: String read GetCHECKSUMValue write SetCHECKSUMValue; + property CHECKSUMIsNull: Boolean read GetCHECKSUMIsNull write SetCHECKSUMIsNull; + + public + constructor Create(aDataTable: TDADataTable); override; + destructor Destroy; override; + + end; + +implementation + +uses Variants, uROBinaryHelpers; + +{ TUSUARIOSDataTableRules } +constructor TUSUARIOSDataTableRules.Create(aDataTable: TDADataTable); +begin + inherited; +end; + +destructor TUSUARIOSDataTableRules.Destroy; +begin + inherited; +end; + +function TUSUARIOSDataTableRules.GetIDValue: Integer; +begin + result := DataTable.Fields[idx_USUARIOSID].AsInteger; +end; + +procedure TUSUARIOSDataTableRules.SetIDValue(const aValue: Integer); +begin + DataTable.Fields[idx_USUARIOSID].AsInteger := aValue; +end; + +function TUSUARIOSDataTableRules.GetIDIsNull: boolean; +begin + result := DataTable.Fields[idx_USUARIOSID].IsNull; +end; + +procedure TUSUARIOSDataTableRules.SetIDIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_USUARIOSID].AsVariant := Null; +end; + +function TUSUARIOSDataTableRules.GetUSERNAMEValue: String; +begin + result := DataTable.Fields[idx_USUARIOSUSERNAME].AsString; +end; + +procedure TUSUARIOSDataTableRules.SetUSERNAMEValue(const aValue: String); +begin + DataTable.Fields[idx_USUARIOSUSERNAME].AsString := aValue; +end; + +function TUSUARIOSDataTableRules.GetUSERNAMEIsNull: boolean; +begin + result := DataTable.Fields[idx_USUARIOSUSERNAME].IsNull; +end; + +procedure TUSUARIOSDataTableRules.SetUSERNAMEIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_USUARIOSUSERNAME].AsVariant := Null; +end; + +function TUSUARIOSDataTableRules.GetLOGINValue: String; +begin + result := DataTable.Fields[idx_USUARIOSLOGIN].AsString; +end; + +procedure TUSUARIOSDataTableRules.SetLOGINValue(const aValue: String); +begin + DataTable.Fields[idx_USUARIOSLOGIN].AsString := aValue; +end; + +function TUSUARIOSDataTableRules.GetLOGINIsNull: boolean; +begin + result := DataTable.Fields[idx_USUARIOSLOGIN].IsNull; +end; + +procedure TUSUARIOSDataTableRules.SetLOGINIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_USUARIOSLOGIN].AsVariant := Null; +end; + +function TUSUARIOSDataTableRules.GetPASSValue: String; +begin + result := DataTable.Fields[idx_USUARIOSPASS].AsString; +end; + +procedure TUSUARIOSDataTableRules.SetPASSValue(const aValue: String); +begin + DataTable.Fields[idx_USUARIOSPASS].AsString := aValue; +end; + +function TUSUARIOSDataTableRules.GetPASSIsNull: boolean; +begin + result := DataTable.Fields[idx_USUARIOSPASS].IsNull; +end; + +procedure TUSUARIOSDataTableRules.SetPASSIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_USUARIOSPASS].AsVariant := Null; +end; + +function TUSUARIOSDataTableRules.GetPASSEXPIREDValue: DateTime; +begin + result := DataTable.Fields[idx_USUARIOSPASSEXPIRED].AsDateTime; +end; + +procedure TUSUARIOSDataTableRules.SetPASSEXPIREDValue(const aValue: DateTime); +begin + DataTable.Fields[idx_USUARIOSPASSEXPIRED].AsDateTime := aValue; +end; + +function TUSUARIOSDataTableRules.GetPASSEXPIREDIsNull: boolean; +begin + result := DataTable.Fields[idx_USUARIOSPASSEXPIRED].IsNull; +end; + +procedure TUSUARIOSDataTableRules.SetPASSEXPIREDIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_USUARIOSPASSEXPIRED].AsVariant := Null; +end; + +function TUSUARIOSDataTableRules.GetBLOQUEADOValue: SmallInt; +begin + result := DataTable.Fields[idx_USUARIOSBLOQUEADO].AsSmallInt; +end; + +procedure TUSUARIOSDataTableRules.SetBLOQUEADOValue(const aValue: SmallInt); +begin + DataTable.Fields[idx_USUARIOSBLOQUEADO].AsSmallInt := aValue; +end; + +function TUSUARIOSDataTableRules.GetBLOQUEADOIsNull: boolean; +begin + result := DataTable.Fields[idx_USUARIOSBLOQUEADO].IsNull; +end; + +procedure TUSUARIOSDataTableRules.SetBLOQUEADOIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_USUARIOSBLOQUEADO].AsVariant := Null; +end; + +function TUSUARIOSDataTableRules.GetEMAILValue: String; +begin + result := DataTable.Fields[idx_USUARIOSEMAIL].AsString; +end; + +procedure TUSUARIOSDataTableRules.SetEMAILValue(const aValue: String); +begin + DataTable.Fields[idx_USUARIOSEMAIL].AsString := aValue; +end; + +function TUSUARIOSDataTableRules.GetEMAILIsNull: boolean; +begin + result := DataTable.Fields[idx_USUARIOSEMAIL].IsNull; +end; + +procedure TUSUARIOSDataTableRules.SetEMAILIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_USUARIOSEMAIL].AsVariant := Null; +end; + +function TUSUARIOSDataTableRules.GetUSERDAYSSUNValue: Integer; +begin + result := DataTable.Fields[idx_USUARIOSUSERDAYSSUN].AsInteger; +end; + +procedure TUSUARIOSDataTableRules.SetUSERDAYSSUNValue(const aValue: Integer); +begin + DataTable.Fields[idx_USUARIOSUSERDAYSSUN].AsInteger := aValue; +end; + +function TUSUARIOSDataTableRules.GetUSERDAYSSUNIsNull: boolean; +begin + result := DataTable.Fields[idx_USUARIOSUSERDAYSSUN].IsNull; +end; + +procedure TUSUARIOSDataTableRules.SetUSERDAYSSUNIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_USUARIOSUSERDAYSSUN].AsVariant := Null; +end; + +function TUSUARIOSDataTableRules.GetPRIVILEGEDValue: Integer; +begin + result := DataTable.Fields[idx_USUARIOSPRIVILEGED].AsInteger; +end; + +procedure TUSUARIOSDataTableRules.SetPRIVILEGEDValue(const aValue: Integer); +begin + DataTable.Fields[idx_USUARIOSPRIVILEGED].AsInteger := aValue; +end; + +function TUSUARIOSDataTableRules.GetPRIVILEGEDIsNull: boolean; +begin + result := DataTable.Fields[idx_USUARIOSPRIVILEGED].IsNull; +end; + +procedure TUSUARIOSDataTableRules.SetPRIVILEGEDIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_USUARIOSPRIVILEGED].AsVariant := Null; +end; + +function TUSUARIOSDataTableRules.GetTIPOValue: String; +begin + result := DataTable.Fields[idx_USUARIOSTIPO].AsString; +end; + +procedure TUSUARIOSDataTableRules.SetTIPOValue(const aValue: String); +begin + DataTable.Fields[idx_USUARIOSTIPO].AsString := aValue; +end; + +function TUSUARIOSDataTableRules.GetTIPOIsNull: boolean; +begin + result := DataTable.Fields[idx_USUARIOSTIPO].IsNull; +end; + +procedure TUSUARIOSDataTableRules.SetTIPOIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_USUARIOSTIPO].AsVariant := Null; +end; + +function TUSUARIOSDataTableRules.GetID_PERFILValue: Integer; +begin + result := DataTable.Fields[idx_USUARIOSID_PERFIL].AsInteger; +end; + +procedure TUSUARIOSDataTableRules.SetID_PERFILValue(const aValue: Integer); +begin + DataTable.Fields[idx_USUARIOSID_PERFIL].AsInteger := aValue; +end; + +function TUSUARIOSDataTableRules.GetID_PERFILIsNull: boolean; +begin + result := DataTable.Fields[idx_USUARIOSID_PERFIL].IsNull; +end; + +procedure TUSUARIOSDataTableRules.SetID_PERFILIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_USUARIOSID_PERFIL].AsVariant := Null; +end; + +function TUSUARIOSDataTableRules.GetCHECKSUMValue: String; +begin + result := DataTable.Fields[idx_USUARIOSCHECKSUM].AsString; +end; + +procedure TUSUARIOSDataTableRules.SetCHECKSUMValue(const aValue: String); +begin + DataTable.Fields[idx_USUARIOSCHECKSUM].AsString := aValue; +end; + +function TUSUARIOSDataTableRules.GetCHECKSUMIsNull: boolean; +begin + result := DataTable.Fields[idx_USUARIOSCHECKSUM].IsNull; +end; + +procedure TUSUARIOSDataTableRules.SetCHECKSUMIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_USUARIOSCHECKSUM].AsVariant := Null; +end; + + +{ TUSUARIOS_EVENTOSDataTableRules } +constructor TUSUARIOS_EVENTOSDataTableRules.Create(aDataTable: TDADataTable); +var + StrList: TStringList; +begin + inherited; + + StrList := TStringList.Create; + StrList.OnChange := NOTAS_OnChange; + f_NOTAS := NewROStrings(StrList,True); +end; + +destructor TUSUARIOS_EVENTOSDataTableRules.Destroy; +begin + inherited; +end; + +procedure TUSUARIOS_EVENTOSDataTableRules.NOTAS_OnChange(Sender: TObject); +begin + if DataTable.Editing then DataTable.Fields[idx_USUARIOS_EVENTOSNOTAS].AsVariant := TStringList(Sender).Text; +end; + +function TUSUARIOS_EVENTOSDataTableRules.GetAPLICACIONValue: String; +begin + result := DataTable.Fields[idx_USUARIOS_EVENTOSAPLICACION].AsString; +end; + +procedure TUSUARIOS_EVENTOSDataTableRules.SetAPLICACIONValue(const aValue: String); +begin + DataTable.Fields[idx_USUARIOS_EVENTOSAPLICACION].AsString := aValue; +end; + +function TUSUARIOS_EVENTOSDataTableRules.GetAPLICACIONIsNull: boolean; +begin + result := DataTable.Fields[idx_USUARIOS_EVENTOSAPLICACION].IsNull; +end; + +procedure TUSUARIOS_EVENTOSDataTableRules.SetAPLICACIONIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_USUARIOS_EVENTOSAPLICACION].AsVariant := Null; +end; + +function TUSUARIOS_EVENTOSDataTableRules.GetID_USUARIOValue: Integer; +begin + result := DataTable.Fields[idx_USUARIOS_EVENTOSID_USUARIO].AsInteger; +end; + +procedure TUSUARIOS_EVENTOSDataTableRules.SetID_USUARIOValue(const aValue: Integer); +begin + DataTable.Fields[idx_USUARIOS_EVENTOSID_USUARIO].AsInteger := aValue; +end; + +function TUSUARIOS_EVENTOSDataTableRules.GetID_USUARIOIsNull: boolean; +begin + result := DataTable.Fields[idx_USUARIOS_EVENTOSID_USUARIO].IsNull; +end; + +procedure TUSUARIOS_EVENTOSDataTableRules.SetID_USUARIOIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_USUARIOS_EVENTOSID_USUARIO].AsVariant := Null; +end; + +function TUSUARIOS_EVENTOSDataTableRules.GetFECHAValue: String; +begin + result := DataTable.Fields[idx_USUARIOS_EVENTOSFECHA].AsString; +end; + +procedure TUSUARIOS_EVENTOSDataTableRules.SetFECHAValue(const aValue: String); +begin + DataTable.Fields[idx_USUARIOS_EVENTOSFECHA].AsString := aValue; +end; + +function TUSUARIOS_EVENTOSDataTableRules.GetFECHAIsNull: boolean; +begin + result := DataTable.Fields[idx_USUARIOS_EVENTOSFECHA].IsNull; +end; + +procedure TUSUARIOS_EVENTOSDataTableRules.SetFECHAIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_USUARIOS_EVENTOSFECHA].AsVariant := Null; +end; + +function TUSUARIOS_EVENTOSDataTableRules.GetHORAValue: String; +begin + result := DataTable.Fields[idx_USUARIOS_EVENTOSHORA].AsString; +end; + +procedure TUSUARIOS_EVENTOSDataTableRules.SetHORAValue(const aValue: String); +begin + DataTable.Fields[idx_USUARIOS_EVENTOSHORA].AsString := aValue; +end; + +function TUSUARIOS_EVENTOSDataTableRules.GetHORAIsNull: boolean; +begin + result := DataTable.Fields[idx_USUARIOS_EVENTOSHORA].IsNull; +end; + +procedure TUSUARIOS_EVENTOSDataTableRules.SetHORAIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_USUARIOS_EVENTOSHORA].AsVariant := Null; +end; + +function TUSUARIOS_EVENTOSDataTableRules.GetFORMValue: String; +begin + result := DataTable.Fields[idx_USUARIOS_EVENTOSFORM].AsString; +end; + +procedure TUSUARIOS_EVENTOSDataTableRules.SetFORMValue(const aValue: String); +begin + DataTable.Fields[idx_USUARIOS_EVENTOSFORM].AsString := aValue; +end; + +function TUSUARIOS_EVENTOSDataTableRules.GetFORMIsNull: boolean; +begin + result := DataTable.Fields[idx_USUARIOS_EVENTOSFORM].IsNull; +end; + +procedure TUSUARIOS_EVENTOSDataTableRules.SetFORMIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_USUARIOS_EVENTOSFORM].AsVariant := Null; +end; + +function TUSUARIOS_EVENTOSDataTableRules.GetTITULO_FORMValue: String; +begin + result := DataTable.Fields[idx_USUARIOS_EVENTOSTITULO_FORM].AsString; +end; + +procedure TUSUARIOS_EVENTOSDataTableRules.SetTITULO_FORMValue(const aValue: String); +begin + DataTable.Fields[idx_USUARIOS_EVENTOSTITULO_FORM].AsString := aValue; +end; + +function TUSUARIOS_EVENTOSDataTableRules.GetTITULO_FORMIsNull: boolean; +begin + result := DataTable.Fields[idx_USUARIOS_EVENTOSTITULO_FORM].IsNull; +end; + +procedure TUSUARIOS_EVENTOSDataTableRules.SetTITULO_FORMIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_USUARIOS_EVENTOSTITULO_FORM].AsVariant := Null; +end; + +function TUSUARIOS_EVENTOSDataTableRules.GetEVENTOValue: String; +begin + result := DataTable.Fields[idx_USUARIOS_EVENTOSEVENTO].AsString; +end; + +procedure TUSUARIOS_EVENTOSDataTableRules.SetEVENTOValue(const aValue: String); +begin + DataTable.Fields[idx_USUARIOS_EVENTOSEVENTO].AsString := aValue; +end; + +function TUSUARIOS_EVENTOSDataTableRules.GetEVENTOIsNull: boolean; +begin + result := DataTable.Fields[idx_USUARIOS_EVENTOSEVENTO].IsNull; +end; + +procedure TUSUARIOS_EVENTOSDataTableRules.SetEVENTOIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_USUARIOS_EVENTOSEVENTO].AsVariant := Null; +end; + +function TUSUARIOS_EVENTOSDataTableRules.GetNOTASValue: IROStrings; +begin + result := f_NOTAS; + result.Text := DataTable.Fields[idx_USUARIOS_EVENTOSNOTAS].AsString; +end; + +function TUSUARIOS_EVENTOSDataTableRules.GetNOTASIsNull: boolean; +begin + result := DataTable.Fields[idx_USUARIOS_EVENTOSNOTAS].IsNull; +end; + +procedure TUSUARIOS_EVENTOSDataTableRules.SetNOTASIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_USUARIOS_EVENTOSNOTAS].AsVariant := Null; +end; + +function TUSUARIOS_EVENTOSDataTableRules.GetTNAMEValue: String; +begin + result := DataTable.Fields[idx_USUARIOS_EVENTOSTNAME].AsString; +end; + +procedure TUSUARIOS_EVENTOSDataTableRules.SetTNAMEValue(const aValue: String); +begin + DataTable.Fields[idx_USUARIOS_EVENTOSTNAME].AsString := aValue; +end; + +function TUSUARIOS_EVENTOSDataTableRules.GetTNAMEIsNull: boolean; +begin + result := DataTable.Fields[idx_USUARIOS_EVENTOSTNAME].IsNull; +end; + +procedure TUSUARIOS_EVENTOSDataTableRules.SetTNAMEIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_USUARIOS_EVENTOSTNAME].AsVariant := Null; +end; + + +{ TUSUARIOS_LOGONDataTableRules } +constructor TUSUARIOS_LOGONDataTableRules.Create(aDataTable: TDADataTable); +begin + inherited; +end; + +destructor TUSUARIOS_LOGONDataTableRules.Destroy; +begin + inherited; +end; + +function TUSUARIOS_LOGONDataTableRules.GetLOGONIDValue: String; +begin + result := DataTable.Fields[idx_USUARIOS_LOGONLOGONID].AsString; +end; + +procedure TUSUARIOS_LOGONDataTableRules.SetLOGONIDValue(const aValue: String); +begin + DataTable.Fields[idx_USUARIOS_LOGONLOGONID].AsString := aValue; +end; + +function TUSUARIOS_LOGONDataTableRules.GetLOGONIDIsNull: boolean; +begin + result := DataTable.Fields[idx_USUARIOS_LOGONLOGONID].IsNull; +end; + +procedure TUSUARIOS_LOGONDataTableRules.SetLOGONIDIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_USUARIOS_LOGONLOGONID].AsVariant := Null; +end; + +function TUSUARIOS_LOGONDataTableRules.GetID_USUARIOValue: Integer; +begin + result := DataTable.Fields[idx_USUARIOS_LOGONID_USUARIO].AsInteger; +end; + +procedure TUSUARIOS_LOGONDataTableRules.SetID_USUARIOValue(const aValue: Integer); +begin + DataTable.Fields[idx_USUARIOS_LOGONID_USUARIO].AsInteger := aValue; +end; + +function TUSUARIOS_LOGONDataTableRules.GetID_USUARIOIsNull: boolean; +begin + result := DataTable.Fields[idx_USUARIOS_LOGONID_USUARIO].IsNull; +end; + +procedure TUSUARIOS_LOGONDataTableRules.SetID_USUARIOIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_USUARIOS_LOGONID_USUARIO].AsVariant := Null; +end; + +function TUSUARIOS_LOGONDataTableRules.GetAPLICACIONValue: String; +begin + result := DataTable.Fields[idx_USUARIOS_LOGONAPLICACION].AsString; +end; + +procedure TUSUARIOS_LOGONDataTableRules.SetAPLICACIONValue(const aValue: String); +begin + DataTable.Fields[idx_USUARIOS_LOGONAPLICACION].AsString := aValue; +end; + +function TUSUARIOS_LOGONDataTableRules.GetAPLICACIONIsNull: boolean; +begin + result := DataTable.Fields[idx_USUARIOS_LOGONAPLICACION].IsNull; +end; + +procedure TUSUARIOS_LOGONDataTableRules.SetAPLICACIONIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_USUARIOS_LOGONAPLICACION].AsVariant := Null; +end; + +function TUSUARIOS_LOGONDataTableRules.GetEQUIPOValue: String; +begin + result := DataTable.Fields[idx_USUARIOS_LOGONEQUIPO].AsString; +end; + +procedure TUSUARIOS_LOGONDataTableRules.SetEQUIPOValue(const aValue: String); +begin + DataTable.Fields[idx_USUARIOS_LOGONEQUIPO].AsString := aValue; +end; + +function TUSUARIOS_LOGONDataTableRules.GetEQUIPOIsNull: boolean; +begin + result := DataTable.Fields[idx_USUARIOS_LOGONEQUIPO].IsNull; +end; + +procedure TUSUARIOS_LOGONDataTableRules.SetEQUIPOIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_USUARIOS_LOGONEQUIPO].AsVariant := Null; +end; + +function TUSUARIOS_LOGONDataTableRules.GetDATAValue: String; +begin + result := DataTable.Fields[idx_USUARIOS_LOGONDATA].AsString; +end; + +procedure TUSUARIOS_LOGONDataTableRules.SetDATAValue(const aValue: String); +begin + DataTable.Fields[idx_USUARIOS_LOGONDATA].AsString := aValue; +end; + +function TUSUARIOS_LOGONDataTableRules.GetDATAIsNull: boolean; +begin + result := DataTable.Fields[idx_USUARIOS_LOGONDATA].IsNull; +end; + +procedure TUSUARIOS_LOGONDataTableRules.SetDATAIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_USUARIOS_LOGONDATA].AsVariant := Null; +end; + + +{ TPERMISOSDataTableRules } +constructor TPERMISOSDataTableRules.Create(aDataTable: TDADataTable); +begin + inherited; +end; + +destructor TPERMISOSDataTableRules.Destroy; +begin + inherited; +end; + +function TPERMISOSDataTableRules.GetID_USUARIOValue: Integer; +begin + result := DataTable.Fields[idx_PERMISOSID_USUARIO].AsInteger; +end; + +procedure TPERMISOSDataTableRules.SetID_USUARIOValue(const aValue: Integer); +begin + DataTable.Fields[idx_PERMISOSID_USUARIO].AsInteger := aValue; +end; + +function TPERMISOSDataTableRules.GetID_USUARIOIsNull: boolean; +begin + result := DataTable.Fields[idx_PERMISOSID_USUARIO].IsNull; +end; + +procedure TPERMISOSDataTableRules.SetID_USUARIOIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_PERMISOSID_USUARIO].AsVariant := Null; +end; + +function TPERMISOSDataTableRules.GetMODULOValue: String; +begin + result := DataTable.Fields[idx_PERMISOSMODULO].AsString; +end; + +procedure TPERMISOSDataTableRules.SetMODULOValue(const aValue: String); +begin + DataTable.Fields[idx_PERMISOSMODULO].AsString := aValue; +end; + +function TPERMISOSDataTableRules.GetMODULOIsNull: boolean; +begin + result := DataTable.Fields[idx_PERMISOSMODULO].IsNull; +end; + +procedure TPERMISOSDataTableRules.SetMODULOIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_PERMISOSMODULO].AsVariant := Null; +end; + +function TPERMISOSDataTableRules.GetNOMBRECOMPValue: String; +begin + result := DataTable.Fields[idx_PERMISOSNOMBRECOMP].AsString; +end; + +procedure TPERMISOSDataTableRules.SetNOMBRECOMPValue(const aValue: String); +begin + DataTable.Fields[idx_PERMISOSNOMBRECOMP].AsString := aValue; +end; + +function TPERMISOSDataTableRules.GetNOMBRECOMPIsNull: boolean; +begin + result := DataTable.Fields[idx_PERMISOSNOMBRECOMP].IsNull; +end; + +procedure TPERMISOSDataTableRules.SetNOMBRECOMPIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_PERMISOSNOMBRECOMP].AsVariant := Null; +end; + +function TPERMISOSDataTableRules.GetCHECKSUMValue: String; +begin + result := DataTable.Fields[idx_PERMISOSCHECKSUM].AsString; +end; + +procedure TPERMISOSDataTableRules.SetCHECKSUMValue(const aValue: String); +begin + DataTable.Fields[idx_PERMISOSCHECKSUM].AsString := aValue; +end; + +function TPERMISOSDataTableRules.GetCHECKSUMIsNull: boolean; +begin + result := DataTable.Fields[idx_PERMISOSCHECKSUM].IsNull; +end; + +procedure TPERMISOSDataTableRules.SetCHECKSUMIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_PERMISOSCHECKSUM].AsVariant := Null; +end; + + +{ TPERMISOSEXDataTableRules } +constructor TPERMISOSEXDataTableRules.Create(aDataTable: TDADataTable); +begin + inherited; +end; + +destructor TPERMISOSEXDataTableRules.Destroy; +begin + inherited; +end; + +function TPERMISOSEXDataTableRules.GetID_USUARIOValue: Integer; +begin + result := DataTable.Fields[idx_PERMISOSEXID_USUARIO].AsInteger; +end; + +procedure TPERMISOSEXDataTableRules.SetID_USUARIOValue(const aValue: Integer); +begin + DataTable.Fields[idx_PERMISOSEXID_USUARIO].AsInteger := aValue; +end; + +function TPERMISOSEXDataTableRules.GetID_USUARIOIsNull: boolean; +begin + result := DataTable.Fields[idx_PERMISOSEXID_USUARIO].IsNull; +end; + +procedure TPERMISOSEXDataTableRules.SetID_USUARIOIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_PERMISOSEXID_USUARIO].AsVariant := Null; +end; + +function TPERMISOSEXDataTableRules.GetMODULOValue: String; +begin + result := DataTable.Fields[idx_PERMISOSEXMODULO].AsString; +end; + +procedure TPERMISOSEXDataTableRules.SetMODULOValue(const aValue: String); +begin + DataTable.Fields[idx_PERMISOSEXMODULO].AsString := aValue; +end; + +function TPERMISOSEXDataTableRules.GetMODULOIsNull: boolean; +begin + result := DataTable.Fields[idx_PERMISOSEXMODULO].IsNull; +end; + +procedure TPERMISOSEXDataTableRules.SetMODULOIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_PERMISOSEXMODULO].AsVariant := Null; +end; + +function TPERMISOSEXDataTableRules.GetNOMBRECOMPValue: String; +begin + result := DataTable.Fields[idx_PERMISOSEXNOMBRECOMP].AsString; +end; + +procedure TPERMISOSEXDataTableRules.SetNOMBRECOMPValue(const aValue: String); +begin + DataTable.Fields[idx_PERMISOSEXNOMBRECOMP].AsString := aValue; +end; + +function TPERMISOSEXDataTableRules.GetNOMBRECOMPIsNull: boolean; +begin + result := DataTable.Fields[idx_PERMISOSEXNOMBRECOMP].IsNull; +end; + +procedure TPERMISOSEXDataTableRules.SetNOMBRECOMPIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_PERMISOSEXNOMBRECOMP].AsVariant := Null; +end; + +function TPERMISOSEXDataTableRules.GetNOMBREFORMValue: String; +begin + result := DataTable.Fields[idx_PERMISOSEXNOMBREFORM].AsString; +end; + +procedure TPERMISOSEXDataTableRules.SetNOMBREFORMValue(const aValue: String); +begin + DataTable.Fields[idx_PERMISOSEXNOMBREFORM].AsString := aValue; +end; + +function TPERMISOSEXDataTableRules.GetNOMBREFORMIsNull: boolean; +begin + result := DataTable.Fields[idx_PERMISOSEXNOMBREFORM].IsNull; +end; + +procedure TPERMISOSEXDataTableRules.SetNOMBREFORMIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_PERMISOSEXNOMBREFORM].AsVariant := Null; +end; + +function TPERMISOSEXDataTableRules.GetCHECKSUMValue: String; +begin + result := DataTable.Fields[idx_PERMISOSEXCHECKSUM].AsString; +end; + +procedure TPERMISOSEXDataTableRules.SetCHECKSUMValue(const aValue: String); +begin + DataTable.Fields[idx_PERMISOSEXCHECKSUM].AsString := aValue; +end; + +function TPERMISOSEXDataTableRules.GetCHECKSUMIsNull: boolean; +begin + result := DataTable.Fields[idx_PERMISOSEXCHECKSUM].IsNull; +end; + +procedure TPERMISOSEXDataTableRules.SetCHECKSUMIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_PERMISOSEXCHECKSUM].AsVariant := Null; +end; + + +initialization + RegisterDataTableRules(RID_USUARIOS, TUSUARIOSDataTableRules); + RegisterDataTableRules(RID_USUARIOS_EVENTOS, TUSUARIOS_EVENTOSDataTableRules); + RegisterDataTableRules(RID_USUARIOS_LOGON, TUSUARIOS_LOGONDataTableRules); + RegisterDataTableRules(RID_PERMISOS, TPERMISOSDataTableRules); + RegisterDataTableRules(RID_PERMISOSEX, TPERMISOSEXDataTableRules); + +end. diff --git a/Source/ApplicationBase/Usuarios/Model/schUsuariosServer_Intf.pas b/Source/ApplicationBase/Usuarios/Model/schUsuariosServer_Intf.pas new file mode 100644 index 00000000..25699bf6 --- /dev/null +++ b/Source/ApplicationBase/Usuarios/Model/schUsuariosServer_Intf.pas @@ -0,0 +1,1715 @@ +unit schUsuariosServer_Intf; + +interface + +uses + Classes, DB, SysUtils, uROClasses, uDADataTable, uDABusinessProcessor, FmtBCD, uROXMLIntf, schUsuariosClient_Intf; + +const + { Delta rules ids + Feel free to change them to something more human readable + but make sure they are unique in the context of your application } + RID_USUARIOSDelta = '{30AE63B9-1580-4117-9B4F-448F309BD6AC}'; + RID_USUARIOS_EVENTOSDelta = '{81DD56BF-BBB5-4311-9AF3-E72EF8B5EC32}'; + RID_USUARIOS_LOGONDelta = '{BE275431-94DF-4C1C-83D0-C09B4E0DA9D9}'; + RID_PERMISOSDelta = '{F99C6E2E-FE0E-4943-9B69-37B2F48AF314}'; + RID_PERMISOSEXDelta = '{43B62FCB-7C4A-4F3A-9F77-85339308E91A}'; + +type + { IUSUARIOSDelta } + IUSUARIOSDelta = interface(IUSUARIOS) + ['{30AE63B9-1580-4117-9B4F-448F309BD6AC}'] + { Property getters and setters } + function GetOldIDValue : Integer; + function GetOldUSERNAMEValue : String; + function GetOldLOGINValue : String; + function GetOldPASSValue : String; + function GetOldPASSEXPIREDValue : DateTime; + function GetOldBLOQUEADOValue : SmallInt; + function GetOldEMAILValue : String; + function GetOldUSERDAYSSUNValue : Integer; + function GetOldPRIVILEGEDValue : Integer; + function GetOldTIPOValue : String; + function GetOldID_PERFILValue : Integer; + function GetOldCHECKSUMValue : String; + + { Properties } + property OldID : Integer read GetOldIDValue; + property OldUSERNAME : String read GetOldUSERNAMEValue; + property OldLOGIN : String read GetOldLOGINValue; + property OldPASS : String read GetOldPASSValue; + property OldPASSEXPIRED : DateTime read GetOldPASSEXPIREDValue; + property OldBLOQUEADO : SmallInt read GetOldBLOQUEADOValue; + property OldEMAIL : String read GetOldEMAILValue; + property OldUSERDAYSSUN : Integer read GetOldUSERDAYSSUNValue; + property OldPRIVILEGED : Integer read GetOldPRIVILEGEDValue; + property OldTIPO : String read GetOldTIPOValue; + property OldID_PERFIL : Integer read GetOldID_PERFILValue; + property OldCHECKSUM : String read GetOldCHECKSUMValue; + end; + + { TUSUARIOSBusinessProcessorRules } + TUSUARIOSBusinessProcessorRules = class(TDABusinessProcessorRules, IUSUARIOS, IUSUARIOSDelta) + private + protected + { Property getters and setters } + function GetIDValue: Integer; virtual; + function GetIDIsNull: Boolean; virtual; + function GetOldIDValue: Integer; virtual; + function GetOldIDIsNull: Boolean; virtual; + procedure SetIDValue(const aValue: Integer); virtual; + procedure SetIDIsNull(const aValue: Boolean); virtual; + function GetUSERNAMEValue: String; virtual; + function GetUSERNAMEIsNull: Boolean; virtual; + function GetOldUSERNAMEValue: String; virtual; + function GetOldUSERNAMEIsNull: Boolean; virtual; + procedure SetUSERNAMEValue(const aValue: String); virtual; + procedure SetUSERNAMEIsNull(const aValue: Boolean); virtual; + function GetLOGINValue: String; virtual; + function GetLOGINIsNull: Boolean; virtual; + function GetOldLOGINValue: String; virtual; + function GetOldLOGINIsNull: Boolean; virtual; + procedure SetLOGINValue(const aValue: String); virtual; + procedure SetLOGINIsNull(const aValue: Boolean); virtual; + function GetPASSValue: String; virtual; + function GetPASSIsNull: Boolean; virtual; + function GetOldPASSValue: String; virtual; + function GetOldPASSIsNull: Boolean; virtual; + procedure SetPASSValue(const aValue: String); virtual; + procedure SetPASSIsNull(const aValue: Boolean); virtual; + function GetPASSEXPIREDValue: DateTime; virtual; + function GetPASSEXPIREDIsNull: Boolean; virtual; + function GetOldPASSEXPIREDValue: DateTime; virtual; + function GetOldPASSEXPIREDIsNull: Boolean; virtual; + procedure SetPASSEXPIREDValue(const aValue: DateTime); virtual; + procedure SetPASSEXPIREDIsNull(const aValue: Boolean); virtual; + function GetBLOQUEADOValue: SmallInt; virtual; + function GetBLOQUEADOIsNull: Boolean; virtual; + function GetOldBLOQUEADOValue: SmallInt; virtual; + function GetOldBLOQUEADOIsNull: Boolean; virtual; + procedure SetBLOQUEADOValue(const aValue: SmallInt); virtual; + procedure SetBLOQUEADOIsNull(const aValue: Boolean); virtual; + function GetEMAILValue: String; virtual; + function GetEMAILIsNull: Boolean; virtual; + function GetOldEMAILValue: String; virtual; + function GetOldEMAILIsNull: Boolean; virtual; + procedure SetEMAILValue(const aValue: String); virtual; + procedure SetEMAILIsNull(const aValue: Boolean); virtual; + function GetUSERDAYSSUNValue: Integer; virtual; + function GetUSERDAYSSUNIsNull: Boolean; virtual; + function GetOldUSERDAYSSUNValue: Integer; virtual; + function GetOldUSERDAYSSUNIsNull: Boolean; virtual; + procedure SetUSERDAYSSUNValue(const aValue: Integer); virtual; + procedure SetUSERDAYSSUNIsNull(const aValue: Boolean); virtual; + function GetPRIVILEGEDValue: Integer; virtual; + function GetPRIVILEGEDIsNull: Boolean; virtual; + function GetOldPRIVILEGEDValue: Integer; virtual; + function GetOldPRIVILEGEDIsNull: Boolean; virtual; + procedure SetPRIVILEGEDValue(const aValue: Integer); virtual; + procedure SetPRIVILEGEDIsNull(const aValue: Boolean); virtual; + function GetTIPOValue: String; virtual; + function GetTIPOIsNull: Boolean; virtual; + function GetOldTIPOValue: String; virtual; + function GetOldTIPOIsNull: Boolean; virtual; + procedure SetTIPOValue(const aValue: String); virtual; + procedure SetTIPOIsNull(const aValue: Boolean); virtual; + function GetID_PERFILValue: Integer; virtual; + function GetID_PERFILIsNull: Boolean; virtual; + function GetOldID_PERFILValue: Integer; virtual; + function GetOldID_PERFILIsNull: Boolean; virtual; + procedure SetID_PERFILValue(const aValue: Integer); virtual; + procedure SetID_PERFILIsNull(const aValue: Boolean); virtual; + function GetCHECKSUMValue: String; virtual; + function GetCHECKSUMIsNull: Boolean; virtual; + function GetOldCHECKSUMValue: String; virtual; + function GetOldCHECKSUMIsNull: Boolean; virtual; + procedure SetCHECKSUMValue(const aValue: String); virtual; + procedure SetCHECKSUMIsNull(const aValue: Boolean); virtual; + + { Properties } + property ID : Integer read GetIDValue write SetIDValue; + property IDIsNull : Boolean read GetIDIsNull write SetIDIsNull; + property OldID : Integer read GetOldIDValue; + property OldIDIsNull : Boolean read GetOldIDIsNull; + property USERNAME : String read GetUSERNAMEValue write SetUSERNAMEValue; + property USERNAMEIsNull : Boolean read GetUSERNAMEIsNull write SetUSERNAMEIsNull; + property OldUSERNAME : String read GetOldUSERNAMEValue; + property OldUSERNAMEIsNull : Boolean read GetOldUSERNAMEIsNull; + property LOGIN : String read GetLOGINValue write SetLOGINValue; + property LOGINIsNull : Boolean read GetLOGINIsNull write SetLOGINIsNull; + property OldLOGIN : String read GetOldLOGINValue; + property OldLOGINIsNull : Boolean read GetOldLOGINIsNull; + property PASS : String read GetPASSValue write SetPASSValue; + property PASSIsNull : Boolean read GetPASSIsNull write SetPASSIsNull; + property OldPASS : String read GetOldPASSValue; + property OldPASSIsNull : Boolean read GetOldPASSIsNull; + property PASSEXPIRED : DateTime read GetPASSEXPIREDValue write SetPASSEXPIREDValue; + property PASSEXPIREDIsNull : Boolean read GetPASSEXPIREDIsNull write SetPASSEXPIREDIsNull; + property OldPASSEXPIRED : DateTime read GetOldPASSEXPIREDValue; + property OldPASSEXPIREDIsNull : Boolean read GetOldPASSEXPIREDIsNull; + property BLOQUEADO : SmallInt read GetBLOQUEADOValue write SetBLOQUEADOValue; + property BLOQUEADOIsNull : Boolean read GetBLOQUEADOIsNull write SetBLOQUEADOIsNull; + property OldBLOQUEADO : SmallInt read GetOldBLOQUEADOValue; + property OldBLOQUEADOIsNull : Boolean read GetOldBLOQUEADOIsNull; + property EMAIL : String read GetEMAILValue write SetEMAILValue; + property EMAILIsNull : Boolean read GetEMAILIsNull write SetEMAILIsNull; + property OldEMAIL : String read GetOldEMAILValue; + property OldEMAILIsNull : Boolean read GetOldEMAILIsNull; + property USERDAYSSUN : Integer read GetUSERDAYSSUNValue write SetUSERDAYSSUNValue; + property USERDAYSSUNIsNull : Boolean read GetUSERDAYSSUNIsNull write SetUSERDAYSSUNIsNull; + property OldUSERDAYSSUN : Integer read GetOldUSERDAYSSUNValue; + property OldUSERDAYSSUNIsNull : Boolean read GetOldUSERDAYSSUNIsNull; + property PRIVILEGED : Integer read GetPRIVILEGEDValue write SetPRIVILEGEDValue; + property PRIVILEGEDIsNull : Boolean read GetPRIVILEGEDIsNull write SetPRIVILEGEDIsNull; + property OldPRIVILEGED : Integer read GetOldPRIVILEGEDValue; + property OldPRIVILEGEDIsNull : Boolean read GetOldPRIVILEGEDIsNull; + property TIPO : String read GetTIPOValue write SetTIPOValue; + property TIPOIsNull : Boolean read GetTIPOIsNull write SetTIPOIsNull; + property OldTIPO : String read GetOldTIPOValue; + property OldTIPOIsNull : Boolean read GetOldTIPOIsNull; + property ID_PERFIL : Integer read GetID_PERFILValue write SetID_PERFILValue; + property ID_PERFILIsNull : Boolean read GetID_PERFILIsNull write SetID_PERFILIsNull; + property OldID_PERFIL : Integer read GetOldID_PERFILValue; + property OldID_PERFILIsNull : Boolean read GetOldID_PERFILIsNull; + property CHECKSUM : String read GetCHECKSUMValue write SetCHECKSUMValue; + property CHECKSUMIsNull : Boolean read GetCHECKSUMIsNull write SetCHECKSUMIsNull; + property OldCHECKSUM : String read GetOldCHECKSUMValue; + property OldCHECKSUMIsNull : Boolean read GetOldCHECKSUMIsNull; + + public + constructor Create(aBusinessProcessor: TDABusinessProcessor); override; + destructor Destroy; override; + + end; + + { IUSUARIOS_EVENTOSDelta } + IUSUARIOS_EVENTOSDelta = interface(IUSUARIOS_EVENTOS) + ['{81DD56BF-BBB5-4311-9AF3-E72EF8B5EC32}'] + { Property getters and setters } + function GetOldAPLICACIONValue : String; + function GetOldID_USUARIOValue : Integer; + function GetOldFECHAValue : String; + function GetOldHORAValue : String; + function GetOldFORMValue : String; + function GetOldTITULO_FORMValue : String; + function GetOldEVENTOValue : String; + function GetOldNOTASValue : IROStrings; + function GetOldTNAMEValue : String; + + { Properties } + property OldAPLICACION : String read GetOldAPLICACIONValue; + property OldID_USUARIO : Integer read GetOldID_USUARIOValue; + property OldFECHA : String read GetOldFECHAValue; + property OldHORA : String read GetOldHORAValue; + property OldFORM : String read GetOldFORMValue; + property OldTITULO_FORM : String read GetOldTITULO_FORMValue; + property OldEVENTO : String read GetOldEVENTOValue; + property OldNOTAS : IROStrings read GetOldNOTASValue; + property OldTNAME : String read GetOldTNAMEValue; + end; + + { TUSUARIOS_EVENTOSBusinessProcessorRules } + TUSUARIOS_EVENTOSBusinessProcessorRules = class(TDABusinessProcessorRules, IUSUARIOS_EVENTOS, IUSUARIOS_EVENTOSDelta) + private + f_NOTAS: IROStrings; + procedure NOTAS_OnChange(Sender: TObject); + protected + { Property getters and setters } + function GetAPLICACIONValue: String; virtual; + function GetAPLICACIONIsNull: Boolean; virtual; + function GetOldAPLICACIONValue: String; virtual; + function GetOldAPLICACIONIsNull: Boolean; virtual; + procedure SetAPLICACIONValue(const aValue: String); virtual; + procedure SetAPLICACIONIsNull(const aValue: Boolean); virtual; + function GetID_USUARIOValue: Integer; virtual; + function GetID_USUARIOIsNull: Boolean; virtual; + function GetOldID_USUARIOValue: Integer; virtual; + function GetOldID_USUARIOIsNull: Boolean; virtual; + procedure SetID_USUARIOValue(const aValue: Integer); virtual; + procedure SetID_USUARIOIsNull(const aValue: Boolean); virtual; + function GetFECHAValue: String; virtual; + function GetFECHAIsNull: Boolean; virtual; + function GetOldFECHAValue: String; virtual; + function GetOldFECHAIsNull: Boolean; virtual; + procedure SetFECHAValue(const aValue: String); virtual; + procedure SetFECHAIsNull(const aValue: Boolean); virtual; + function GetHORAValue: String; virtual; + function GetHORAIsNull: Boolean; virtual; + function GetOldHORAValue: String; virtual; + function GetOldHORAIsNull: Boolean; virtual; + procedure SetHORAValue(const aValue: String); virtual; + procedure SetHORAIsNull(const aValue: Boolean); virtual; + function GetFORMValue: String; virtual; + function GetFORMIsNull: Boolean; virtual; + function GetOldFORMValue: String; virtual; + function GetOldFORMIsNull: Boolean; virtual; + procedure SetFORMValue(const aValue: String); virtual; + procedure SetFORMIsNull(const aValue: Boolean); virtual; + function GetTITULO_FORMValue: String; virtual; + function GetTITULO_FORMIsNull: Boolean; virtual; + function GetOldTITULO_FORMValue: String; virtual; + function GetOldTITULO_FORMIsNull: Boolean; virtual; + procedure SetTITULO_FORMValue(const aValue: String); virtual; + procedure SetTITULO_FORMIsNull(const aValue: Boolean); virtual; + function GetEVENTOValue: String; virtual; + function GetEVENTOIsNull: Boolean; virtual; + function GetOldEVENTOValue: String; virtual; + function GetOldEVENTOIsNull: Boolean; virtual; + procedure SetEVENTOValue(const aValue: String); virtual; + procedure SetEVENTOIsNull(const aValue: Boolean); virtual; + function GetNOTASValue: IROStrings; virtual; + function GetNOTASIsNull: Boolean; virtual; + function GetOldNOTASValue: IROStrings; virtual; + function GetOldNOTASIsNull: Boolean; virtual; + procedure SetNOTASIsNull(const aValue: Boolean); virtual; + function GetTNAMEValue: String; virtual; + function GetTNAMEIsNull: Boolean; virtual; + function GetOldTNAMEValue: String; virtual; + function GetOldTNAMEIsNull: Boolean; virtual; + procedure SetTNAMEValue(const aValue: String); virtual; + procedure SetTNAMEIsNull(const aValue: Boolean); virtual; + + { Properties } + property APLICACION : String read GetAPLICACIONValue write SetAPLICACIONValue; + property APLICACIONIsNull : Boolean read GetAPLICACIONIsNull write SetAPLICACIONIsNull; + property OldAPLICACION : String read GetOldAPLICACIONValue; + property OldAPLICACIONIsNull : Boolean read GetOldAPLICACIONIsNull; + property ID_USUARIO : Integer read GetID_USUARIOValue write SetID_USUARIOValue; + property ID_USUARIOIsNull : Boolean read GetID_USUARIOIsNull write SetID_USUARIOIsNull; + property OldID_USUARIO : Integer read GetOldID_USUARIOValue; + property OldID_USUARIOIsNull : Boolean read GetOldID_USUARIOIsNull; + property FECHA : String read GetFECHAValue write SetFECHAValue; + property FECHAIsNull : Boolean read GetFECHAIsNull write SetFECHAIsNull; + property OldFECHA : String read GetOldFECHAValue; + property OldFECHAIsNull : Boolean read GetOldFECHAIsNull; + property HORA : String read GetHORAValue write SetHORAValue; + property HORAIsNull : Boolean read GetHORAIsNull write SetHORAIsNull; + property OldHORA : String read GetOldHORAValue; + property OldHORAIsNull : Boolean read GetOldHORAIsNull; + property FORM : String read GetFORMValue write SetFORMValue; + property FORMIsNull : Boolean read GetFORMIsNull write SetFORMIsNull; + property OldFORM : String read GetOldFORMValue; + property OldFORMIsNull : Boolean read GetOldFORMIsNull; + property TITULO_FORM : String read GetTITULO_FORMValue write SetTITULO_FORMValue; + property TITULO_FORMIsNull : Boolean read GetTITULO_FORMIsNull write SetTITULO_FORMIsNull; + property OldTITULO_FORM : String read GetOldTITULO_FORMValue; + property OldTITULO_FORMIsNull : Boolean read GetOldTITULO_FORMIsNull; + property EVENTO : String read GetEVENTOValue write SetEVENTOValue; + property EVENTOIsNull : Boolean read GetEVENTOIsNull write SetEVENTOIsNull; + property OldEVENTO : String read GetOldEVENTOValue; + property OldEVENTOIsNull : Boolean read GetOldEVENTOIsNull; + property NOTAS : IROStrings read GetNOTASValue; + property NOTASIsNull : Boolean read GetNOTASIsNull write SetNOTASIsNull; + property OldNOTAS : IROStrings read GetOldNOTASValue; + property OldNOTASIsNull : Boolean read GetOldNOTASIsNull; + property TNAME : String read GetTNAMEValue write SetTNAMEValue; + property TNAMEIsNull : Boolean read GetTNAMEIsNull write SetTNAMEIsNull; + property OldTNAME : String read GetOldTNAMEValue; + property OldTNAMEIsNull : Boolean read GetOldTNAMEIsNull; + + public + constructor Create(aBusinessProcessor: TDABusinessProcessor); override; + destructor Destroy; override; + + end; + + { IUSUARIOS_LOGONDelta } + IUSUARIOS_LOGONDelta = interface(IUSUARIOS_LOGON) + ['{BE275431-94DF-4C1C-83D0-C09B4E0DA9D9}'] + { Property getters and setters } + function GetOldLOGONIDValue : String; + function GetOldID_USUARIOValue : Integer; + function GetOldAPLICACIONValue : String; + function GetOldEQUIPOValue : String; + function GetOldDATAValue : String; + + { Properties } + property OldLOGONID : String read GetOldLOGONIDValue; + property OldID_USUARIO : Integer read GetOldID_USUARIOValue; + property OldAPLICACION : String read GetOldAPLICACIONValue; + property OldEQUIPO : String read GetOldEQUIPOValue; + property OldDATA : String read GetOldDATAValue; + end; + + { TUSUARIOS_LOGONBusinessProcessorRules } + TUSUARIOS_LOGONBusinessProcessorRules = class(TDABusinessProcessorRules, IUSUARIOS_LOGON, IUSUARIOS_LOGONDelta) + private + protected + { Property getters and setters } + function GetLOGONIDValue: String; virtual; + function GetLOGONIDIsNull: Boolean; virtual; + function GetOldLOGONIDValue: String; virtual; + function GetOldLOGONIDIsNull: Boolean; virtual; + procedure SetLOGONIDValue(const aValue: String); virtual; + procedure SetLOGONIDIsNull(const aValue: Boolean); virtual; + function GetID_USUARIOValue: Integer; virtual; + function GetID_USUARIOIsNull: Boolean; virtual; + function GetOldID_USUARIOValue: Integer; virtual; + function GetOldID_USUARIOIsNull: Boolean; virtual; + procedure SetID_USUARIOValue(const aValue: Integer); virtual; + procedure SetID_USUARIOIsNull(const aValue: Boolean); virtual; + function GetAPLICACIONValue: String; virtual; + function GetAPLICACIONIsNull: Boolean; virtual; + function GetOldAPLICACIONValue: String; virtual; + function GetOldAPLICACIONIsNull: Boolean; virtual; + procedure SetAPLICACIONValue(const aValue: String); virtual; + procedure SetAPLICACIONIsNull(const aValue: Boolean); virtual; + function GetEQUIPOValue: String; virtual; + function GetEQUIPOIsNull: Boolean; virtual; + function GetOldEQUIPOValue: String; virtual; + function GetOldEQUIPOIsNull: Boolean; virtual; + procedure SetEQUIPOValue(const aValue: String); virtual; + procedure SetEQUIPOIsNull(const aValue: Boolean); virtual; + function GetDATAValue: String; virtual; + function GetDATAIsNull: Boolean; virtual; + function GetOldDATAValue: String; virtual; + function GetOldDATAIsNull: Boolean; virtual; + procedure SetDATAValue(const aValue: String); virtual; + procedure SetDATAIsNull(const aValue: Boolean); virtual; + + { Properties } + property LOGONID : String read GetLOGONIDValue write SetLOGONIDValue; + property LOGONIDIsNull : Boolean read GetLOGONIDIsNull write SetLOGONIDIsNull; + property OldLOGONID : String read GetOldLOGONIDValue; + property OldLOGONIDIsNull : Boolean read GetOldLOGONIDIsNull; + property ID_USUARIO : Integer read GetID_USUARIOValue write SetID_USUARIOValue; + property ID_USUARIOIsNull : Boolean read GetID_USUARIOIsNull write SetID_USUARIOIsNull; + property OldID_USUARIO : Integer read GetOldID_USUARIOValue; + property OldID_USUARIOIsNull : Boolean read GetOldID_USUARIOIsNull; + property APLICACION : String read GetAPLICACIONValue write SetAPLICACIONValue; + property APLICACIONIsNull : Boolean read GetAPLICACIONIsNull write SetAPLICACIONIsNull; + property OldAPLICACION : String read GetOldAPLICACIONValue; + property OldAPLICACIONIsNull : Boolean read GetOldAPLICACIONIsNull; + property EQUIPO : String read GetEQUIPOValue write SetEQUIPOValue; + property EQUIPOIsNull : Boolean read GetEQUIPOIsNull write SetEQUIPOIsNull; + property OldEQUIPO : String read GetOldEQUIPOValue; + property OldEQUIPOIsNull : Boolean read GetOldEQUIPOIsNull; + property DATA : String read GetDATAValue write SetDATAValue; + property DATAIsNull : Boolean read GetDATAIsNull write SetDATAIsNull; + property OldDATA : String read GetOldDATAValue; + property OldDATAIsNull : Boolean read GetOldDATAIsNull; + + public + constructor Create(aBusinessProcessor: TDABusinessProcessor); override; + destructor Destroy; override; + + end; + + { IPERMISOSDelta } + IPERMISOSDelta = interface(IPERMISOS) + ['{F99C6E2E-FE0E-4943-9B69-37B2F48AF314}'] + { Property getters and setters } + function GetOldID_USUARIOValue : Integer; + function GetOldMODULOValue : String; + function GetOldNOMBRECOMPValue : String; + function GetOldCHECKSUMValue : String; + + { Properties } + property OldID_USUARIO : Integer read GetOldID_USUARIOValue; + property OldMODULO : String read GetOldMODULOValue; + property OldNOMBRECOMP : String read GetOldNOMBRECOMPValue; + property OldCHECKSUM : String read GetOldCHECKSUMValue; + end; + + { TPERMISOSBusinessProcessorRules } + TPERMISOSBusinessProcessorRules = class(TDABusinessProcessorRules, IPERMISOS, IPERMISOSDelta) + private + protected + { Property getters and setters } + function GetID_USUARIOValue: Integer; virtual; + function GetID_USUARIOIsNull: Boolean; virtual; + function GetOldID_USUARIOValue: Integer; virtual; + function GetOldID_USUARIOIsNull: Boolean; virtual; + procedure SetID_USUARIOValue(const aValue: Integer); virtual; + procedure SetID_USUARIOIsNull(const aValue: Boolean); virtual; + function GetMODULOValue: String; virtual; + function GetMODULOIsNull: Boolean; virtual; + function GetOldMODULOValue: String; virtual; + function GetOldMODULOIsNull: Boolean; virtual; + procedure SetMODULOValue(const aValue: String); virtual; + procedure SetMODULOIsNull(const aValue: Boolean); virtual; + function GetNOMBRECOMPValue: String; virtual; + function GetNOMBRECOMPIsNull: Boolean; virtual; + function GetOldNOMBRECOMPValue: String; virtual; + function GetOldNOMBRECOMPIsNull: Boolean; virtual; + procedure SetNOMBRECOMPValue(const aValue: String); virtual; + procedure SetNOMBRECOMPIsNull(const aValue: Boolean); virtual; + function GetCHECKSUMValue: String; virtual; + function GetCHECKSUMIsNull: Boolean; virtual; + function GetOldCHECKSUMValue: String; virtual; + function GetOldCHECKSUMIsNull: Boolean; virtual; + procedure SetCHECKSUMValue(const aValue: String); virtual; + procedure SetCHECKSUMIsNull(const aValue: Boolean); virtual; + + { Properties } + property ID_USUARIO : Integer read GetID_USUARIOValue write SetID_USUARIOValue; + property ID_USUARIOIsNull : Boolean read GetID_USUARIOIsNull write SetID_USUARIOIsNull; + property OldID_USUARIO : Integer read GetOldID_USUARIOValue; + property OldID_USUARIOIsNull : Boolean read GetOldID_USUARIOIsNull; + property MODULO : String read GetMODULOValue write SetMODULOValue; + property MODULOIsNull : Boolean read GetMODULOIsNull write SetMODULOIsNull; + property OldMODULO : String read GetOldMODULOValue; + property OldMODULOIsNull : Boolean read GetOldMODULOIsNull; + property NOMBRECOMP : String read GetNOMBRECOMPValue write SetNOMBRECOMPValue; + property NOMBRECOMPIsNull : Boolean read GetNOMBRECOMPIsNull write SetNOMBRECOMPIsNull; + property OldNOMBRECOMP : String read GetOldNOMBRECOMPValue; + property OldNOMBRECOMPIsNull : Boolean read GetOldNOMBRECOMPIsNull; + property CHECKSUM : String read GetCHECKSUMValue write SetCHECKSUMValue; + property CHECKSUMIsNull : Boolean read GetCHECKSUMIsNull write SetCHECKSUMIsNull; + property OldCHECKSUM : String read GetOldCHECKSUMValue; + property OldCHECKSUMIsNull : Boolean read GetOldCHECKSUMIsNull; + + public + constructor Create(aBusinessProcessor: TDABusinessProcessor); override; + destructor Destroy; override; + + end; + + { IPERMISOSEXDelta } + IPERMISOSEXDelta = interface(IPERMISOSEX) + ['{43B62FCB-7C4A-4F3A-9F77-85339308E91A}'] + { Property getters and setters } + function GetOldID_USUARIOValue : Integer; + function GetOldMODULOValue : String; + function GetOldNOMBRECOMPValue : String; + function GetOldNOMBREFORMValue : String; + function GetOldCHECKSUMValue : String; + + { Properties } + property OldID_USUARIO : Integer read GetOldID_USUARIOValue; + property OldMODULO : String read GetOldMODULOValue; + property OldNOMBRECOMP : String read GetOldNOMBRECOMPValue; + property OldNOMBREFORM : String read GetOldNOMBREFORMValue; + property OldCHECKSUM : String read GetOldCHECKSUMValue; + end; + + { TPERMISOSEXBusinessProcessorRules } + TPERMISOSEXBusinessProcessorRules = class(TDABusinessProcessorRules, IPERMISOSEX, IPERMISOSEXDelta) + private + protected + { Property getters and setters } + function GetID_USUARIOValue: Integer; virtual; + function GetID_USUARIOIsNull: Boolean; virtual; + function GetOldID_USUARIOValue: Integer; virtual; + function GetOldID_USUARIOIsNull: Boolean; virtual; + procedure SetID_USUARIOValue(const aValue: Integer); virtual; + procedure SetID_USUARIOIsNull(const aValue: Boolean); virtual; + function GetMODULOValue: String; virtual; + function GetMODULOIsNull: Boolean; virtual; + function GetOldMODULOValue: String; virtual; + function GetOldMODULOIsNull: Boolean; virtual; + procedure SetMODULOValue(const aValue: String); virtual; + procedure SetMODULOIsNull(const aValue: Boolean); virtual; + function GetNOMBRECOMPValue: String; virtual; + function GetNOMBRECOMPIsNull: Boolean; virtual; + function GetOldNOMBRECOMPValue: String; virtual; + function GetOldNOMBRECOMPIsNull: Boolean; virtual; + procedure SetNOMBRECOMPValue(const aValue: String); virtual; + procedure SetNOMBRECOMPIsNull(const aValue: Boolean); virtual; + function GetNOMBREFORMValue: String; virtual; + function GetNOMBREFORMIsNull: Boolean; virtual; + function GetOldNOMBREFORMValue: String; virtual; + function GetOldNOMBREFORMIsNull: Boolean; virtual; + procedure SetNOMBREFORMValue(const aValue: String); virtual; + procedure SetNOMBREFORMIsNull(const aValue: Boolean); virtual; + function GetCHECKSUMValue: String; virtual; + function GetCHECKSUMIsNull: Boolean; virtual; + function GetOldCHECKSUMValue: String; virtual; + function GetOldCHECKSUMIsNull: Boolean; virtual; + procedure SetCHECKSUMValue(const aValue: String); virtual; + procedure SetCHECKSUMIsNull(const aValue: Boolean); virtual; + + { Properties } + property ID_USUARIO : Integer read GetID_USUARIOValue write SetID_USUARIOValue; + property ID_USUARIOIsNull : Boolean read GetID_USUARIOIsNull write SetID_USUARIOIsNull; + property OldID_USUARIO : Integer read GetOldID_USUARIOValue; + property OldID_USUARIOIsNull : Boolean read GetOldID_USUARIOIsNull; + property MODULO : String read GetMODULOValue write SetMODULOValue; + property MODULOIsNull : Boolean read GetMODULOIsNull write SetMODULOIsNull; + property OldMODULO : String read GetOldMODULOValue; + property OldMODULOIsNull : Boolean read GetOldMODULOIsNull; + property NOMBRECOMP : String read GetNOMBRECOMPValue write SetNOMBRECOMPValue; + property NOMBRECOMPIsNull : Boolean read GetNOMBRECOMPIsNull write SetNOMBRECOMPIsNull; + property OldNOMBRECOMP : String read GetOldNOMBRECOMPValue; + property OldNOMBRECOMPIsNull : Boolean read GetOldNOMBRECOMPIsNull; + property NOMBREFORM : String read GetNOMBREFORMValue write SetNOMBREFORMValue; + property NOMBREFORMIsNull : Boolean read GetNOMBREFORMIsNull write SetNOMBREFORMIsNull; + property OldNOMBREFORM : String read GetOldNOMBREFORMValue; + property OldNOMBREFORMIsNull : Boolean read GetOldNOMBREFORMIsNull; + property CHECKSUM : String read GetCHECKSUMValue write SetCHECKSUMValue; + property CHECKSUMIsNull : Boolean read GetCHECKSUMIsNull write SetCHECKSUMIsNull; + property OldCHECKSUM : String read GetOldCHECKSUMValue; + property OldCHECKSUMIsNull : Boolean read GetOldCHECKSUMIsNull; + + public + constructor Create(aBusinessProcessor: TDABusinessProcessor); override; + destructor Destroy; override; + + end; + +implementation + +uses + Variants, uROBinaryHelpers, uDAInterfaces; + +{ TUSUARIOSBusinessProcessorRules } +constructor TUSUARIOSBusinessProcessorRules.Create(aBusinessProcessor: TDABusinessProcessor); +begin + inherited; +end; + +destructor TUSUARIOSBusinessProcessorRules.Destroy; +begin + inherited; +end; + +function TUSUARIOSBusinessProcessorRules.GetIDValue: Integer; +begin + result := BusinessProcessor.CurrentChange.NewValueByName[fld_USUARIOSID]; +end; + +function TUSUARIOSBusinessProcessorRules.GetIDIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_USUARIOSID]); +end; + +function TUSUARIOSBusinessProcessorRules.GetOldIDValue: Integer; +begin + result := BusinessProcessor.CurrentChange.OldValueByName[fld_USUARIOSID]; +end; + +function TUSUARIOSBusinessProcessorRules.GetOldIDIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_USUARIOSID]); +end; + +procedure TUSUARIOSBusinessProcessorRules.SetIDValue(const aValue: Integer); +begin + BusinessProcessor.CurrentChange.NewValueByName[fld_USUARIOSID] := aValue; +end; + +procedure TUSUARIOSBusinessProcessorRules.SetIDIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_USUARIOSID] := Null; +end; + +function TUSUARIOSBusinessProcessorRules.GetUSERNAMEValue: String; +begin + result := BusinessProcessor.CurrentChange.NewValueByName[fld_USUARIOSUSERNAME]; +end; + +function TUSUARIOSBusinessProcessorRules.GetUSERNAMEIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_USUARIOSUSERNAME]); +end; + +function TUSUARIOSBusinessProcessorRules.GetOldUSERNAMEValue: String; +begin + result := BusinessProcessor.CurrentChange.OldValueByName[fld_USUARIOSUSERNAME]; +end; + +function TUSUARIOSBusinessProcessorRules.GetOldUSERNAMEIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_USUARIOSUSERNAME]); +end; + +procedure TUSUARIOSBusinessProcessorRules.SetUSERNAMEValue(const aValue: String); +begin + BusinessProcessor.CurrentChange.NewValueByName[fld_USUARIOSUSERNAME] := aValue; +end; + +procedure TUSUARIOSBusinessProcessorRules.SetUSERNAMEIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_USUARIOSUSERNAME] := Null; +end; + +function TUSUARIOSBusinessProcessorRules.GetLOGINValue: String; +begin + result := BusinessProcessor.CurrentChange.NewValueByName[fld_USUARIOSLOGIN]; +end; + +function TUSUARIOSBusinessProcessorRules.GetLOGINIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_USUARIOSLOGIN]); +end; + +function TUSUARIOSBusinessProcessorRules.GetOldLOGINValue: String; +begin + result := BusinessProcessor.CurrentChange.OldValueByName[fld_USUARIOSLOGIN]; +end; + +function TUSUARIOSBusinessProcessorRules.GetOldLOGINIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_USUARIOSLOGIN]); +end; + +procedure TUSUARIOSBusinessProcessorRules.SetLOGINValue(const aValue: String); +begin + BusinessProcessor.CurrentChange.NewValueByName[fld_USUARIOSLOGIN] := aValue; +end; + +procedure TUSUARIOSBusinessProcessorRules.SetLOGINIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_USUARIOSLOGIN] := Null; +end; + +function TUSUARIOSBusinessProcessorRules.GetPASSValue: String; +begin + result := BusinessProcessor.CurrentChange.NewValueByName[fld_USUARIOSPASS]; +end; + +function TUSUARIOSBusinessProcessorRules.GetPASSIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_USUARIOSPASS]); +end; + +function TUSUARIOSBusinessProcessorRules.GetOldPASSValue: String; +begin + result := BusinessProcessor.CurrentChange.OldValueByName[fld_USUARIOSPASS]; +end; + +function TUSUARIOSBusinessProcessorRules.GetOldPASSIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_USUARIOSPASS]); +end; + +procedure TUSUARIOSBusinessProcessorRules.SetPASSValue(const aValue: String); +begin + BusinessProcessor.CurrentChange.NewValueByName[fld_USUARIOSPASS] := aValue; +end; + +procedure TUSUARIOSBusinessProcessorRules.SetPASSIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_USUARIOSPASS] := Null; +end; + +function TUSUARIOSBusinessProcessorRules.GetPASSEXPIREDValue: DateTime; +begin + result := BusinessProcessor.CurrentChange.NewValueByName[fld_USUARIOSPASSEXPIRED]; +end; + +function TUSUARIOSBusinessProcessorRules.GetPASSEXPIREDIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_USUARIOSPASSEXPIRED]); +end; + +function TUSUARIOSBusinessProcessorRules.GetOldPASSEXPIREDValue: DateTime; +begin + result := BusinessProcessor.CurrentChange.OldValueByName[fld_USUARIOSPASSEXPIRED]; +end; + +function TUSUARIOSBusinessProcessorRules.GetOldPASSEXPIREDIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_USUARIOSPASSEXPIRED]); +end; + +procedure TUSUARIOSBusinessProcessorRules.SetPASSEXPIREDValue(const aValue: DateTime); +begin + BusinessProcessor.CurrentChange.NewValueByName[fld_USUARIOSPASSEXPIRED] := aValue; +end; + +procedure TUSUARIOSBusinessProcessorRules.SetPASSEXPIREDIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_USUARIOSPASSEXPIRED] := Null; +end; + +function TUSUARIOSBusinessProcessorRules.GetBLOQUEADOValue: SmallInt; +begin + result := BusinessProcessor.CurrentChange.NewValueByName[fld_USUARIOSBLOQUEADO]; +end; + +function TUSUARIOSBusinessProcessorRules.GetBLOQUEADOIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_USUARIOSBLOQUEADO]); +end; + +function TUSUARIOSBusinessProcessorRules.GetOldBLOQUEADOValue: SmallInt; +begin + result := BusinessProcessor.CurrentChange.OldValueByName[fld_USUARIOSBLOQUEADO]; +end; + +function TUSUARIOSBusinessProcessorRules.GetOldBLOQUEADOIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_USUARIOSBLOQUEADO]); +end; + +procedure TUSUARIOSBusinessProcessorRules.SetBLOQUEADOValue(const aValue: SmallInt); +begin + BusinessProcessor.CurrentChange.NewValueByName[fld_USUARIOSBLOQUEADO] := aValue; +end; + +procedure TUSUARIOSBusinessProcessorRules.SetBLOQUEADOIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_USUARIOSBLOQUEADO] := Null; +end; + +function TUSUARIOSBusinessProcessorRules.GetEMAILValue: String; +begin + result := BusinessProcessor.CurrentChange.NewValueByName[fld_USUARIOSEMAIL]; +end; + +function TUSUARIOSBusinessProcessorRules.GetEMAILIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_USUARIOSEMAIL]); +end; + +function TUSUARIOSBusinessProcessorRules.GetOldEMAILValue: String; +begin + result := BusinessProcessor.CurrentChange.OldValueByName[fld_USUARIOSEMAIL]; +end; + +function TUSUARIOSBusinessProcessorRules.GetOldEMAILIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_USUARIOSEMAIL]); +end; + +procedure TUSUARIOSBusinessProcessorRules.SetEMAILValue(const aValue: String); +begin + BusinessProcessor.CurrentChange.NewValueByName[fld_USUARIOSEMAIL] := aValue; +end; + +procedure TUSUARIOSBusinessProcessorRules.SetEMAILIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_USUARIOSEMAIL] := Null; +end; + +function TUSUARIOSBusinessProcessorRules.GetUSERDAYSSUNValue: Integer; +begin + result := BusinessProcessor.CurrentChange.NewValueByName[fld_USUARIOSUSERDAYSSUN]; +end; + +function TUSUARIOSBusinessProcessorRules.GetUSERDAYSSUNIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_USUARIOSUSERDAYSSUN]); +end; + +function TUSUARIOSBusinessProcessorRules.GetOldUSERDAYSSUNValue: Integer; +begin + result := BusinessProcessor.CurrentChange.OldValueByName[fld_USUARIOSUSERDAYSSUN]; +end; + +function TUSUARIOSBusinessProcessorRules.GetOldUSERDAYSSUNIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_USUARIOSUSERDAYSSUN]); +end; + +procedure TUSUARIOSBusinessProcessorRules.SetUSERDAYSSUNValue(const aValue: Integer); +begin + BusinessProcessor.CurrentChange.NewValueByName[fld_USUARIOSUSERDAYSSUN] := aValue; +end; + +procedure TUSUARIOSBusinessProcessorRules.SetUSERDAYSSUNIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_USUARIOSUSERDAYSSUN] := Null; +end; + +function TUSUARIOSBusinessProcessorRules.GetPRIVILEGEDValue: Integer; +begin + result := BusinessProcessor.CurrentChange.NewValueByName[fld_USUARIOSPRIVILEGED]; +end; + +function TUSUARIOSBusinessProcessorRules.GetPRIVILEGEDIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_USUARIOSPRIVILEGED]); +end; + +function TUSUARIOSBusinessProcessorRules.GetOldPRIVILEGEDValue: Integer; +begin + result := BusinessProcessor.CurrentChange.OldValueByName[fld_USUARIOSPRIVILEGED]; +end; + +function TUSUARIOSBusinessProcessorRules.GetOldPRIVILEGEDIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_USUARIOSPRIVILEGED]); +end; + +procedure TUSUARIOSBusinessProcessorRules.SetPRIVILEGEDValue(const aValue: Integer); +begin + BusinessProcessor.CurrentChange.NewValueByName[fld_USUARIOSPRIVILEGED] := aValue; +end; + +procedure TUSUARIOSBusinessProcessorRules.SetPRIVILEGEDIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_USUARIOSPRIVILEGED] := Null; +end; + +function TUSUARIOSBusinessProcessorRules.GetTIPOValue: String; +begin + result := BusinessProcessor.CurrentChange.NewValueByName[fld_USUARIOSTIPO]; +end; + +function TUSUARIOSBusinessProcessorRules.GetTIPOIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_USUARIOSTIPO]); +end; + +function TUSUARIOSBusinessProcessorRules.GetOldTIPOValue: String; +begin + result := BusinessProcessor.CurrentChange.OldValueByName[fld_USUARIOSTIPO]; +end; + +function TUSUARIOSBusinessProcessorRules.GetOldTIPOIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_USUARIOSTIPO]); +end; + +procedure TUSUARIOSBusinessProcessorRules.SetTIPOValue(const aValue: String); +begin + BusinessProcessor.CurrentChange.NewValueByName[fld_USUARIOSTIPO] := aValue; +end; + +procedure TUSUARIOSBusinessProcessorRules.SetTIPOIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_USUARIOSTIPO] := Null; +end; + +function TUSUARIOSBusinessProcessorRules.GetID_PERFILValue: Integer; +begin + result := BusinessProcessor.CurrentChange.NewValueByName[fld_USUARIOSID_PERFIL]; +end; + +function TUSUARIOSBusinessProcessorRules.GetID_PERFILIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_USUARIOSID_PERFIL]); +end; + +function TUSUARIOSBusinessProcessorRules.GetOldID_PERFILValue: Integer; +begin + result := BusinessProcessor.CurrentChange.OldValueByName[fld_USUARIOSID_PERFIL]; +end; + +function TUSUARIOSBusinessProcessorRules.GetOldID_PERFILIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_USUARIOSID_PERFIL]); +end; + +procedure TUSUARIOSBusinessProcessorRules.SetID_PERFILValue(const aValue: Integer); +begin + BusinessProcessor.CurrentChange.NewValueByName[fld_USUARIOSID_PERFIL] := aValue; +end; + +procedure TUSUARIOSBusinessProcessorRules.SetID_PERFILIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_USUARIOSID_PERFIL] := Null; +end; + +function TUSUARIOSBusinessProcessorRules.GetCHECKSUMValue: String; +begin + result := BusinessProcessor.CurrentChange.NewValueByName[fld_USUARIOSCHECKSUM]; +end; + +function TUSUARIOSBusinessProcessorRules.GetCHECKSUMIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_USUARIOSCHECKSUM]); +end; + +function TUSUARIOSBusinessProcessorRules.GetOldCHECKSUMValue: String; +begin + result := BusinessProcessor.CurrentChange.OldValueByName[fld_USUARIOSCHECKSUM]; +end; + +function TUSUARIOSBusinessProcessorRules.GetOldCHECKSUMIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_USUARIOSCHECKSUM]); +end; + +procedure TUSUARIOSBusinessProcessorRules.SetCHECKSUMValue(const aValue: String); +begin + BusinessProcessor.CurrentChange.NewValueByName[fld_USUARIOSCHECKSUM] := aValue; +end; + +procedure TUSUARIOSBusinessProcessorRules.SetCHECKSUMIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_USUARIOSCHECKSUM] := Null; +end; + + +{ TUSUARIOS_EVENTOSBusinessProcessorRules } +constructor TUSUARIOS_EVENTOSBusinessProcessorRules.Create(aBusinessProcessor: TDABusinessProcessor); +var + StrList: TStringList; +begin + inherited; + + StrList := TStringList.Create; + StrList.OnChange := NOTAS_OnChange; + f_NOTAS := NewROStrings(StrList,True); +end; + +destructor TUSUARIOS_EVENTOSBusinessProcessorRules.Destroy; +begin + inherited; +end; + +procedure TUSUARIOS_EVENTOSBusinessProcessorRules.NOTAS_OnChange(Sender: TObject); +begin + BusinessProcessor.CurrentChange.NewValueByName[fld_USUARIOS_EVENTOSNOTAS] := TStringList(Sender).Text; +end; + +function TUSUARIOS_EVENTOSBusinessProcessorRules.GetAPLICACIONValue: String; +begin + result := BusinessProcessor.CurrentChange.NewValueByName[fld_USUARIOS_EVENTOSAPLICACION]; +end; + +function TUSUARIOS_EVENTOSBusinessProcessorRules.GetAPLICACIONIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_USUARIOS_EVENTOSAPLICACION]); +end; + +function TUSUARIOS_EVENTOSBusinessProcessorRules.GetOldAPLICACIONValue: String; +begin + result := BusinessProcessor.CurrentChange.OldValueByName[fld_USUARIOS_EVENTOSAPLICACION]; +end; + +function TUSUARIOS_EVENTOSBusinessProcessorRules.GetOldAPLICACIONIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_USUARIOS_EVENTOSAPLICACION]); +end; + +procedure TUSUARIOS_EVENTOSBusinessProcessorRules.SetAPLICACIONValue(const aValue: String); +begin + BusinessProcessor.CurrentChange.NewValueByName[fld_USUARIOS_EVENTOSAPLICACION] := aValue; +end; + +procedure TUSUARIOS_EVENTOSBusinessProcessorRules.SetAPLICACIONIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_USUARIOS_EVENTOSAPLICACION] := Null; +end; + +function TUSUARIOS_EVENTOSBusinessProcessorRules.GetID_USUARIOValue: Integer; +begin + result := BusinessProcessor.CurrentChange.NewValueByName[fld_USUARIOS_EVENTOSID_USUARIO]; +end; + +function TUSUARIOS_EVENTOSBusinessProcessorRules.GetID_USUARIOIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_USUARIOS_EVENTOSID_USUARIO]); +end; + +function TUSUARIOS_EVENTOSBusinessProcessorRules.GetOldID_USUARIOValue: Integer; +begin + result := BusinessProcessor.CurrentChange.OldValueByName[fld_USUARIOS_EVENTOSID_USUARIO]; +end; + +function TUSUARIOS_EVENTOSBusinessProcessorRules.GetOldID_USUARIOIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_USUARIOS_EVENTOSID_USUARIO]); +end; + +procedure TUSUARIOS_EVENTOSBusinessProcessorRules.SetID_USUARIOValue(const aValue: Integer); +begin + BusinessProcessor.CurrentChange.NewValueByName[fld_USUARIOS_EVENTOSID_USUARIO] := aValue; +end; + +procedure TUSUARIOS_EVENTOSBusinessProcessorRules.SetID_USUARIOIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_USUARIOS_EVENTOSID_USUARIO] := Null; +end; + +function TUSUARIOS_EVENTOSBusinessProcessorRules.GetFECHAValue: String; +begin + result := BusinessProcessor.CurrentChange.NewValueByName[fld_USUARIOS_EVENTOSFECHA]; +end; + +function TUSUARIOS_EVENTOSBusinessProcessorRules.GetFECHAIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_USUARIOS_EVENTOSFECHA]); +end; + +function TUSUARIOS_EVENTOSBusinessProcessorRules.GetOldFECHAValue: String; +begin + result := BusinessProcessor.CurrentChange.OldValueByName[fld_USUARIOS_EVENTOSFECHA]; +end; + +function TUSUARIOS_EVENTOSBusinessProcessorRules.GetOldFECHAIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_USUARIOS_EVENTOSFECHA]); +end; + +procedure TUSUARIOS_EVENTOSBusinessProcessorRules.SetFECHAValue(const aValue: String); +begin + BusinessProcessor.CurrentChange.NewValueByName[fld_USUARIOS_EVENTOSFECHA] := aValue; +end; + +procedure TUSUARIOS_EVENTOSBusinessProcessorRules.SetFECHAIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_USUARIOS_EVENTOSFECHA] := Null; +end; + +function TUSUARIOS_EVENTOSBusinessProcessorRules.GetHORAValue: String; +begin + result := BusinessProcessor.CurrentChange.NewValueByName[fld_USUARIOS_EVENTOSHORA]; +end; + +function TUSUARIOS_EVENTOSBusinessProcessorRules.GetHORAIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_USUARIOS_EVENTOSHORA]); +end; + +function TUSUARIOS_EVENTOSBusinessProcessorRules.GetOldHORAValue: String; +begin + result := BusinessProcessor.CurrentChange.OldValueByName[fld_USUARIOS_EVENTOSHORA]; +end; + +function TUSUARIOS_EVENTOSBusinessProcessorRules.GetOldHORAIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_USUARIOS_EVENTOSHORA]); +end; + +procedure TUSUARIOS_EVENTOSBusinessProcessorRules.SetHORAValue(const aValue: String); +begin + BusinessProcessor.CurrentChange.NewValueByName[fld_USUARIOS_EVENTOSHORA] := aValue; +end; + +procedure TUSUARIOS_EVENTOSBusinessProcessorRules.SetHORAIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_USUARIOS_EVENTOSHORA] := Null; +end; + +function TUSUARIOS_EVENTOSBusinessProcessorRules.GetFORMValue: String; +begin + result := BusinessProcessor.CurrentChange.NewValueByName[fld_USUARIOS_EVENTOSFORM]; +end; + +function TUSUARIOS_EVENTOSBusinessProcessorRules.GetFORMIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_USUARIOS_EVENTOSFORM]); +end; + +function TUSUARIOS_EVENTOSBusinessProcessorRules.GetOldFORMValue: String; +begin + result := BusinessProcessor.CurrentChange.OldValueByName[fld_USUARIOS_EVENTOSFORM]; +end; + +function TUSUARIOS_EVENTOSBusinessProcessorRules.GetOldFORMIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_USUARIOS_EVENTOSFORM]); +end; + +procedure TUSUARIOS_EVENTOSBusinessProcessorRules.SetFORMValue(const aValue: String); +begin + BusinessProcessor.CurrentChange.NewValueByName[fld_USUARIOS_EVENTOSFORM] := aValue; +end; + +procedure TUSUARIOS_EVENTOSBusinessProcessorRules.SetFORMIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_USUARIOS_EVENTOSFORM] := Null; +end; + +function TUSUARIOS_EVENTOSBusinessProcessorRules.GetTITULO_FORMValue: String; +begin + result := BusinessProcessor.CurrentChange.NewValueByName[fld_USUARIOS_EVENTOSTITULO_FORM]; +end; + +function TUSUARIOS_EVENTOSBusinessProcessorRules.GetTITULO_FORMIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_USUARIOS_EVENTOSTITULO_FORM]); +end; + +function TUSUARIOS_EVENTOSBusinessProcessorRules.GetOldTITULO_FORMValue: String; +begin + result := BusinessProcessor.CurrentChange.OldValueByName[fld_USUARIOS_EVENTOSTITULO_FORM]; +end; + +function TUSUARIOS_EVENTOSBusinessProcessorRules.GetOldTITULO_FORMIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_USUARIOS_EVENTOSTITULO_FORM]); +end; + +procedure TUSUARIOS_EVENTOSBusinessProcessorRules.SetTITULO_FORMValue(const aValue: String); +begin + BusinessProcessor.CurrentChange.NewValueByName[fld_USUARIOS_EVENTOSTITULO_FORM] := aValue; +end; + +procedure TUSUARIOS_EVENTOSBusinessProcessorRules.SetTITULO_FORMIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_USUARIOS_EVENTOSTITULO_FORM] := Null; +end; + +function TUSUARIOS_EVENTOSBusinessProcessorRules.GetEVENTOValue: String; +begin + result := BusinessProcessor.CurrentChange.NewValueByName[fld_USUARIOS_EVENTOSEVENTO]; +end; + +function TUSUARIOS_EVENTOSBusinessProcessorRules.GetEVENTOIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_USUARIOS_EVENTOSEVENTO]); +end; + +function TUSUARIOS_EVENTOSBusinessProcessorRules.GetOldEVENTOValue: String; +begin + result := BusinessProcessor.CurrentChange.OldValueByName[fld_USUARIOS_EVENTOSEVENTO]; +end; + +function TUSUARIOS_EVENTOSBusinessProcessorRules.GetOldEVENTOIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_USUARIOS_EVENTOSEVENTO]); +end; + +procedure TUSUARIOS_EVENTOSBusinessProcessorRules.SetEVENTOValue(const aValue: String); +begin + BusinessProcessor.CurrentChange.NewValueByName[fld_USUARIOS_EVENTOSEVENTO] := aValue; +end; + +procedure TUSUARIOS_EVENTOSBusinessProcessorRules.SetEVENTOIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_USUARIOS_EVENTOSEVENTO] := Null; +end; + +function TUSUARIOS_EVENTOSBusinessProcessorRules.GetNOTASValue: IROStrings; +begin + result := f_NOTAS; + result.Text := BusinessProcessor.CurrentChange.NewValueByName[fld_USUARIOS_EVENTOSNOTAS]; +end; + +function TUSUARIOS_EVENTOSBusinessProcessorRules.GetNOTASIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_USUARIOS_EVENTOSNOTAS]); +end; + +function TUSUARIOS_EVENTOSBusinessProcessorRules.GetOldNOTASValue: IROStrings; +begin + result := NewROStrings(); + result.Text := BusinessProcessor.CurrentChange.OldValueByName[fld_USUARIOS_EVENTOSNOTAS]; +end; + +function TUSUARIOS_EVENTOSBusinessProcessorRules.GetOldNOTASIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_USUARIOS_EVENTOSNOTAS]); +end; + +procedure TUSUARIOS_EVENTOSBusinessProcessorRules.SetNOTASIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_USUARIOS_EVENTOSNOTAS] := Null; +end; + +function TUSUARIOS_EVENTOSBusinessProcessorRules.GetTNAMEValue: String; +begin + result := BusinessProcessor.CurrentChange.NewValueByName[fld_USUARIOS_EVENTOSTNAME]; +end; + +function TUSUARIOS_EVENTOSBusinessProcessorRules.GetTNAMEIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_USUARIOS_EVENTOSTNAME]); +end; + +function TUSUARIOS_EVENTOSBusinessProcessorRules.GetOldTNAMEValue: String; +begin + result := BusinessProcessor.CurrentChange.OldValueByName[fld_USUARIOS_EVENTOSTNAME]; +end; + +function TUSUARIOS_EVENTOSBusinessProcessorRules.GetOldTNAMEIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_USUARIOS_EVENTOSTNAME]); +end; + +procedure TUSUARIOS_EVENTOSBusinessProcessorRules.SetTNAMEValue(const aValue: String); +begin + BusinessProcessor.CurrentChange.NewValueByName[fld_USUARIOS_EVENTOSTNAME] := aValue; +end; + +procedure TUSUARIOS_EVENTOSBusinessProcessorRules.SetTNAMEIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_USUARIOS_EVENTOSTNAME] := Null; +end; + + +{ TUSUARIOS_LOGONBusinessProcessorRules } +constructor TUSUARIOS_LOGONBusinessProcessorRules.Create(aBusinessProcessor: TDABusinessProcessor); +begin + inherited; +end; + +destructor TUSUARIOS_LOGONBusinessProcessorRules.Destroy; +begin + inherited; +end; + +function TUSUARIOS_LOGONBusinessProcessorRules.GetLOGONIDValue: String; +begin + result := BusinessProcessor.CurrentChange.NewValueByName[fld_USUARIOS_LOGONLOGONID]; +end; + +function TUSUARIOS_LOGONBusinessProcessorRules.GetLOGONIDIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_USUARIOS_LOGONLOGONID]); +end; + +function TUSUARIOS_LOGONBusinessProcessorRules.GetOldLOGONIDValue: String; +begin + result := BusinessProcessor.CurrentChange.OldValueByName[fld_USUARIOS_LOGONLOGONID]; +end; + +function TUSUARIOS_LOGONBusinessProcessorRules.GetOldLOGONIDIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_USUARIOS_LOGONLOGONID]); +end; + +procedure TUSUARIOS_LOGONBusinessProcessorRules.SetLOGONIDValue(const aValue: String); +begin + BusinessProcessor.CurrentChange.NewValueByName[fld_USUARIOS_LOGONLOGONID] := aValue; +end; + +procedure TUSUARIOS_LOGONBusinessProcessorRules.SetLOGONIDIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_USUARIOS_LOGONLOGONID] := Null; +end; + +function TUSUARIOS_LOGONBusinessProcessorRules.GetID_USUARIOValue: Integer; +begin + result := BusinessProcessor.CurrentChange.NewValueByName[fld_USUARIOS_LOGONID_USUARIO]; +end; + +function TUSUARIOS_LOGONBusinessProcessorRules.GetID_USUARIOIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_USUARIOS_LOGONID_USUARIO]); +end; + +function TUSUARIOS_LOGONBusinessProcessorRules.GetOldID_USUARIOValue: Integer; +begin + result := BusinessProcessor.CurrentChange.OldValueByName[fld_USUARIOS_LOGONID_USUARIO]; +end; + +function TUSUARIOS_LOGONBusinessProcessorRules.GetOldID_USUARIOIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_USUARIOS_LOGONID_USUARIO]); +end; + +procedure TUSUARIOS_LOGONBusinessProcessorRules.SetID_USUARIOValue(const aValue: Integer); +begin + BusinessProcessor.CurrentChange.NewValueByName[fld_USUARIOS_LOGONID_USUARIO] := aValue; +end; + +procedure TUSUARIOS_LOGONBusinessProcessorRules.SetID_USUARIOIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_USUARIOS_LOGONID_USUARIO] := Null; +end; + +function TUSUARIOS_LOGONBusinessProcessorRules.GetAPLICACIONValue: String; +begin + result := BusinessProcessor.CurrentChange.NewValueByName[fld_USUARIOS_LOGONAPLICACION]; +end; + +function TUSUARIOS_LOGONBusinessProcessorRules.GetAPLICACIONIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_USUARIOS_LOGONAPLICACION]); +end; + +function TUSUARIOS_LOGONBusinessProcessorRules.GetOldAPLICACIONValue: String; +begin + result := BusinessProcessor.CurrentChange.OldValueByName[fld_USUARIOS_LOGONAPLICACION]; +end; + +function TUSUARIOS_LOGONBusinessProcessorRules.GetOldAPLICACIONIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_USUARIOS_LOGONAPLICACION]); +end; + +procedure TUSUARIOS_LOGONBusinessProcessorRules.SetAPLICACIONValue(const aValue: String); +begin + BusinessProcessor.CurrentChange.NewValueByName[fld_USUARIOS_LOGONAPLICACION] := aValue; +end; + +procedure TUSUARIOS_LOGONBusinessProcessorRules.SetAPLICACIONIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_USUARIOS_LOGONAPLICACION] := Null; +end; + +function TUSUARIOS_LOGONBusinessProcessorRules.GetEQUIPOValue: String; +begin + result := BusinessProcessor.CurrentChange.NewValueByName[fld_USUARIOS_LOGONEQUIPO]; +end; + +function TUSUARIOS_LOGONBusinessProcessorRules.GetEQUIPOIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_USUARIOS_LOGONEQUIPO]); +end; + +function TUSUARIOS_LOGONBusinessProcessorRules.GetOldEQUIPOValue: String; +begin + result := BusinessProcessor.CurrentChange.OldValueByName[fld_USUARIOS_LOGONEQUIPO]; +end; + +function TUSUARIOS_LOGONBusinessProcessorRules.GetOldEQUIPOIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_USUARIOS_LOGONEQUIPO]); +end; + +procedure TUSUARIOS_LOGONBusinessProcessorRules.SetEQUIPOValue(const aValue: String); +begin + BusinessProcessor.CurrentChange.NewValueByName[fld_USUARIOS_LOGONEQUIPO] := aValue; +end; + +procedure TUSUARIOS_LOGONBusinessProcessorRules.SetEQUIPOIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_USUARIOS_LOGONEQUIPO] := Null; +end; + +function TUSUARIOS_LOGONBusinessProcessorRules.GetDATAValue: String; +begin + result := BusinessProcessor.CurrentChange.NewValueByName[fld_USUARIOS_LOGONDATA]; +end; + +function TUSUARIOS_LOGONBusinessProcessorRules.GetDATAIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_USUARIOS_LOGONDATA]); +end; + +function TUSUARIOS_LOGONBusinessProcessorRules.GetOldDATAValue: String; +begin + result := BusinessProcessor.CurrentChange.OldValueByName[fld_USUARIOS_LOGONDATA]; +end; + +function TUSUARIOS_LOGONBusinessProcessorRules.GetOldDATAIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_USUARIOS_LOGONDATA]); +end; + +procedure TUSUARIOS_LOGONBusinessProcessorRules.SetDATAValue(const aValue: String); +begin + BusinessProcessor.CurrentChange.NewValueByName[fld_USUARIOS_LOGONDATA] := aValue; +end; + +procedure TUSUARIOS_LOGONBusinessProcessorRules.SetDATAIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_USUARIOS_LOGONDATA] := Null; +end; + + +{ TPERMISOSBusinessProcessorRules } +constructor TPERMISOSBusinessProcessorRules.Create(aBusinessProcessor: TDABusinessProcessor); +begin + inherited; +end; + +destructor TPERMISOSBusinessProcessorRules.Destroy; +begin + inherited; +end; + +function TPERMISOSBusinessProcessorRules.GetID_USUARIOValue: Integer; +begin + result := BusinessProcessor.CurrentChange.NewValueByName[fld_PERMISOSID_USUARIO]; +end; + +function TPERMISOSBusinessProcessorRules.GetID_USUARIOIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_PERMISOSID_USUARIO]); +end; + +function TPERMISOSBusinessProcessorRules.GetOldID_USUARIOValue: Integer; +begin + result := BusinessProcessor.CurrentChange.OldValueByName[fld_PERMISOSID_USUARIO]; +end; + +function TPERMISOSBusinessProcessorRules.GetOldID_USUARIOIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_PERMISOSID_USUARIO]); +end; + +procedure TPERMISOSBusinessProcessorRules.SetID_USUARIOValue(const aValue: Integer); +begin + BusinessProcessor.CurrentChange.NewValueByName[fld_PERMISOSID_USUARIO] := aValue; +end; + +procedure TPERMISOSBusinessProcessorRules.SetID_USUARIOIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_PERMISOSID_USUARIO] := Null; +end; + +function TPERMISOSBusinessProcessorRules.GetMODULOValue: String; +begin + result := BusinessProcessor.CurrentChange.NewValueByName[fld_PERMISOSMODULO]; +end; + +function TPERMISOSBusinessProcessorRules.GetMODULOIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_PERMISOSMODULO]); +end; + +function TPERMISOSBusinessProcessorRules.GetOldMODULOValue: String; +begin + result := BusinessProcessor.CurrentChange.OldValueByName[fld_PERMISOSMODULO]; +end; + +function TPERMISOSBusinessProcessorRules.GetOldMODULOIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_PERMISOSMODULO]); +end; + +procedure TPERMISOSBusinessProcessorRules.SetMODULOValue(const aValue: String); +begin + BusinessProcessor.CurrentChange.NewValueByName[fld_PERMISOSMODULO] := aValue; +end; + +procedure TPERMISOSBusinessProcessorRules.SetMODULOIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_PERMISOSMODULO] := Null; +end; + +function TPERMISOSBusinessProcessorRules.GetNOMBRECOMPValue: String; +begin + result := BusinessProcessor.CurrentChange.NewValueByName[fld_PERMISOSNOMBRECOMP]; +end; + +function TPERMISOSBusinessProcessorRules.GetNOMBRECOMPIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_PERMISOSNOMBRECOMP]); +end; + +function TPERMISOSBusinessProcessorRules.GetOldNOMBRECOMPValue: String; +begin + result := BusinessProcessor.CurrentChange.OldValueByName[fld_PERMISOSNOMBRECOMP]; +end; + +function TPERMISOSBusinessProcessorRules.GetOldNOMBRECOMPIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_PERMISOSNOMBRECOMP]); +end; + +procedure TPERMISOSBusinessProcessorRules.SetNOMBRECOMPValue(const aValue: String); +begin + BusinessProcessor.CurrentChange.NewValueByName[fld_PERMISOSNOMBRECOMP] := aValue; +end; + +procedure TPERMISOSBusinessProcessorRules.SetNOMBRECOMPIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_PERMISOSNOMBRECOMP] := Null; +end; + +function TPERMISOSBusinessProcessorRules.GetCHECKSUMValue: String; +begin + result := BusinessProcessor.CurrentChange.NewValueByName[fld_PERMISOSCHECKSUM]; +end; + +function TPERMISOSBusinessProcessorRules.GetCHECKSUMIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_PERMISOSCHECKSUM]); +end; + +function TPERMISOSBusinessProcessorRules.GetOldCHECKSUMValue: String; +begin + result := BusinessProcessor.CurrentChange.OldValueByName[fld_PERMISOSCHECKSUM]; +end; + +function TPERMISOSBusinessProcessorRules.GetOldCHECKSUMIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_PERMISOSCHECKSUM]); +end; + +procedure TPERMISOSBusinessProcessorRules.SetCHECKSUMValue(const aValue: String); +begin + BusinessProcessor.CurrentChange.NewValueByName[fld_PERMISOSCHECKSUM] := aValue; +end; + +procedure TPERMISOSBusinessProcessorRules.SetCHECKSUMIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_PERMISOSCHECKSUM] := Null; +end; + + +{ TPERMISOSEXBusinessProcessorRules } +constructor TPERMISOSEXBusinessProcessorRules.Create(aBusinessProcessor: TDABusinessProcessor); +begin + inherited; +end; + +destructor TPERMISOSEXBusinessProcessorRules.Destroy; +begin + inherited; +end; + +function TPERMISOSEXBusinessProcessorRules.GetID_USUARIOValue: Integer; +begin + result := BusinessProcessor.CurrentChange.NewValueByName[fld_PERMISOSEXID_USUARIO]; +end; + +function TPERMISOSEXBusinessProcessorRules.GetID_USUARIOIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_PERMISOSEXID_USUARIO]); +end; + +function TPERMISOSEXBusinessProcessorRules.GetOldID_USUARIOValue: Integer; +begin + result := BusinessProcessor.CurrentChange.OldValueByName[fld_PERMISOSEXID_USUARIO]; +end; + +function TPERMISOSEXBusinessProcessorRules.GetOldID_USUARIOIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_PERMISOSEXID_USUARIO]); +end; + +procedure TPERMISOSEXBusinessProcessorRules.SetID_USUARIOValue(const aValue: Integer); +begin + BusinessProcessor.CurrentChange.NewValueByName[fld_PERMISOSEXID_USUARIO] := aValue; +end; + +procedure TPERMISOSEXBusinessProcessorRules.SetID_USUARIOIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_PERMISOSEXID_USUARIO] := Null; +end; + +function TPERMISOSEXBusinessProcessorRules.GetMODULOValue: String; +begin + result := BusinessProcessor.CurrentChange.NewValueByName[fld_PERMISOSEXMODULO]; +end; + +function TPERMISOSEXBusinessProcessorRules.GetMODULOIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_PERMISOSEXMODULO]); +end; + +function TPERMISOSEXBusinessProcessorRules.GetOldMODULOValue: String; +begin + result := BusinessProcessor.CurrentChange.OldValueByName[fld_PERMISOSEXMODULO]; +end; + +function TPERMISOSEXBusinessProcessorRules.GetOldMODULOIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_PERMISOSEXMODULO]); +end; + +procedure TPERMISOSEXBusinessProcessorRules.SetMODULOValue(const aValue: String); +begin + BusinessProcessor.CurrentChange.NewValueByName[fld_PERMISOSEXMODULO] := aValue; +end; + +procedure TPERMISOSEXBusinessProcessorRules.SetMODULOIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_PERMISOSEXMODULO] := Null; +end; + +function TPERMISOSEXBusinessProcessorRules.GetNOMBRECOMPValue: String; +begin + result := BusinessProcessor.CurrentChange.NewValueByName[fld_PERMISOSEXNOMBRECOMP]; +end; + +function TPERMISOSEXBusinessProcessorRules.GetNOMBRECOMPIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_PERMISOSEXNOMBRECOMP]); +end; + +function TPERMISOSEXBusinessProcessorRules.GetOldNOMBRECOMPValue: String; +begin + result := BusinessProcessor.CurrentChange.OldValueByName[fld_PERMISOSEXNOMBRECOMP]; +end; + +function TPERMISOSEXBusinessProcessorRules.GetOldNOMBRECOMPIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_PERMISOSEXNOMBRECOMP]); +end; + +procedure TPERMISOSEXBusinessProcessorRules.SetNOMBRECOMPValue(const aValue: String); +begin + BusinessProcessor.CurrentChange.NewValueByName[fld_PERMISOSEXNOMBRECOMP] := aValue; +end; + +procedure TPERMISOSEXBusinessProcessorRules.SetNOMBRECOMPIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_PERMISOSEXNOMBRECOMP] := Null; +end; + +function TPERMISOSEXBusinessProcessorRules.GetNOMBREFORMValue: String; +begin + result := BusinessProcessor.CurrentChange.NewValueByName[fld_PERMISOSEXNOMBREFORM]; +end; + +function TPERMISOSEXBusinessProcessorRules.GetNOMBREFORMIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_PERMISOSEXNOMBREFORM]); +end; + +function TPERMISOSEXBusinessProcessorRules.GetOldNOMBREFORMValue: String; +begin + result := BusinessProcessor.CurrentChange.OldValueByName[fld_PERMISOSEXNOMBREFORM]; +end; + +function TPERMISOSEXBusinessProcessorRules.GetOldNOMBREFORMIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_PERMISOSEXNOMBREFORM]); +end; + +procedure TPERMISOSEXBusinessProcessorRules.SetNOMBREFORMValue(const aValue: String); +begin + BusinessProcessor.CurrentChange.NewValueByName[fld_PERMISOSEXNOMBREFORM] := aValue; +end; + +procedure TPERMISOSEXBusinessProcessorRules.SetNOMBREFORMIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_PERMISOSEXNOMBREFORM] := Null; +end; + +function TPERMISOSEXBusinessProcessorRules.GetCHECKSUMValue: String; +begin + result := BusinessProcessor.CurrentChange.NewValueByName[fld_PERMISOSEXCHECKSUM]; +end; + +function TPERMISOSEXBusinessProcessorRules.GetCHECKSUMIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_PERMISOSEXCHECKSUM]); +end; + +function TPERMISOSEXBusinessProcessorRules.GetOldCHECKSUMValue: String; +begin + result := BusinessProcessor.CurrentChange.OldValueByName[fld_PERMISOSEXCHECKSUM]; +end; + +function TPERMISOSEXBusinessProcessorRules.GetOldCHECKSUMIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_PERMISOSEXCHECKSUM]); +end; + +procedure TPERMISOSEXBusinessProcessorRules.SetCHECKSUMValue(const aValue: String); +begin + BusinessProcessor.CurrentChange.NewValueByName[fld_PERMISOSEXCHECKSUM] := aValue; +end; + +procedure TPERMISOSEXBusinessProcessorRules.SetCHECKSUMIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_PERMISOSEXCHECKSUM] := Null; +end; + + +initialization + RegisterBusinessProcessorRules(RID_USUARIOSDelta, TUSUARIOSBusinessProcessorRules); + RegisterBusinessProcessorRules(RID_USUARIOS_EVENTOSDelta, TUSUARIOS_EVENTOSBusinessProcessorRules); + RegisterBusinessProcessorRules(RID_USUARIOS_LOGONDelta, TUSUARIOS_LOGONBusinessProcessorRules); + RegisterBusinessProcessorRules(RID_PERMISOSDelta, TPERMISOSBusinessProcessorRules); + RegisterBusinessProcessorRules(RID_PERMISOSEXDelta, TPERMISOSEXBusinessProcessorRules); + +end. diff --git a/Source/ApplicationBase/Usuarios/Model/uUsuarios.pas b/Source/ApplicationBase/Usuarios/Model/uUsuarios.pas new file mode 100644 index 00000000..35d8a386 --- /dev/null +++ b/Source/ApplicationBase/Usuarios/Model/uUsuarios.pas @@ -0,0 +1,13 @@ +unit uUsuarios; + +interface + +uses + UCBase; + +type + TUsuario = TUCCurrentUser; + +implementation + +end. diff --git a/Source/ApplicationBase/Usuarios/Servidor/srvUsuarios_Impl.dfm b/Source/ApplicationBase/Usuarios/Servidor/srvUsuarios_Impl.dfm new file mode 100644 index 00000000..f515805d --- /dev/null +++ b/Source/ApplicationBase/Usuarios/Servidor/srvUsuarios_Impl.dfm @@ -0,0 +1,419 @@ +object srvUsuarios: TsrvUsuarios + OldCreateOrder = True + OnCreate = DataAbstractServiceCreate + SessionManager = dmServer.SessionManager + ServiceSchema = schUsuarios + ServiceDataStreamer = Bin2DataStreamer + AllowExecuteSQL = True + AllowWhereSQL = True + ExportedDataTables = <> + BeforeAcquireConnection = DataAbstractServiceBeforeAcquireConnection + Height = 300 + Width = 300 + object Diagrams: TDADiagrams + Left = 150 + Top = 88 + DiagramData = ''#13#10''#13#10 + end + object DataDictionary: TDADataDictionary + Fields = <> + Left = 150 + Top = 24 + end + object schUsuarios: TDASchema + ConnectionManager = dmServer.ConnectionManager + DataDictionary = DataDictionary + Diagrams = Diagrams + Datasets = < + item + Params = <> + Statements = < + item + Connection = 'IBX' + ConnectionType = 'Interbase' + Default = True + TargetTable = 'USUARIOS' + StatementType = stAutoSQL + 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 = datInteger + Required = True + InPrimaryKey = True + end + item + Name = 'USERNAME' + DataType = datString + Size = 30 + end + item + Name = 'LOGIN' + DataType = datString + Size = 30 + end + item + Name = 'PASS' + DataType = datString + Size = 250 + end + item + Name = 'PASSEXPIRED' + DataType = datDateTime + end + item + Name = 'BLOQUEADO' + DataType = datSmallInt + end + item + Name = 'EMAIL' + DataType = datString + Size = 150 + end + item + Name = 'USERDAYSSUN' + DataType = datInteger + end + item + Name = 'PRIVILEGED' + DataType = datInteger + end + item + Name = 'TIPO' + DataType = datString + Size = 1 + end + item + Name = 'ID_PERFIL' + DataType = datInteger + end + item + Name = 'CHECKSUM' + DataType = datString + Size = 250 + end> + end + item + Params = <> + Statements = < + item + Connection = 'IBX' + ConnectionType = 'Interbase' + Default = True + TargetTable = '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 = 'IBX' + ConnectionType = 'Interbase' + Default = True + TargetTable = '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 = 'IBX' + ConnectionType = 'Interbase' + Default = True + TargetTable = 'PERMISOS' + StatementType = stAutoSQL + ColumnMappings = < + 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_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 = 'IBX' + ConnectionType = 'Interbase' + Default = True + TargetTable = 'PERMISOSEX' + StatementType = stAutoSQL + ColumnMappings = < + 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_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 diff --git a/Source/ApplicationBase/Usuarios/Servidor/srvUsuarios_Impl.pas b/Source/ApplicationBase/Usuarios/Servidor/srvUsuarios_Impl.pas new file mode 100644 index 00000000..4007ec6c --- /dev/null +++ b/Source/ApplicationBase/Usuarios/Servidor/srvUsuarios_Impl.pas @@ -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:} FactuGES_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:} FactuGES_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. diff --git a/Source/ApplicationBase/Usuarios/Views/uEditorLogin.dfm b/Source/ApplicationBase/Usuarios/Views/uEditorLogin.dfm new file mode 100644 index 00000000..fb4b5560 --- /dev/null +++ b/Source/ApplicationBase/Usuarios/Views/uEditorLogin.dfm @@ -0,0 +1,1099 @@ +object fEditorLogin: TfEditorLogin + Left = 790 + Top = 387 + ActiveControl = edtUser + BorderStyle = bsDialog + Caption = 'FactuGES' + ClientHeight = 241 + ClientWidth = 385 + 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 + OnShow = FormShow + PixelsPerInch = 96 + TextHeight = 13 + object Label3: TLabel + Left = 24 + Top = 108 + Width = 39 + Height = 13 + Caption = 'Usuario:' + Transparent = False + end + object Label4: TLabel + Left = 24 + Top = 138 + Width = 57 + Height = 13 + Caption = 'Contrase'#241'a:' + Transparent = False + end + object Label1: TLabel + Left = 16 + Top = 72 + Width = 94 + Height = 13 + Caption = 'Inicio de sesi'#243'n:' + Font.Charset = DEFAULT_CHARSET + Font.Color = clMenuHighlight + Font.Height = -11 + Font.Name = 'MS Sans Serif' + Font.Style = [fsBold] + ParentFont = False + end + object JvGradient1: TJvGradient + Left = 0 + Top = 57 + Width = 385 + Height = 4 + Align = alTop + StartColor = 2971346 + EndColor = 4828405 + end + object Panel1: TPanel + Left = 0 + Top = 0 + Width = 385 + Height = 57 + Align = alTop + BevelOuter = bvNone + Color = clWhite + TabOrder = 0 + object Image1: TImage + Left = 0 + Top = 0 + Width = 385 + Height = 57 + Align = alClient + Center = True + Picture.Data = { + 0B544A76474946496D616765F6750000474946383961C201FA00E60000FFFFFF + F5F5F5A92824ECECECEB743DF48545EF7B40DEDEDECD452DEAEAEAD0492EDC5A + 34FAFAFAF2F2F2BC2A26B02724E5E5E5E26236B95B55E1E1E1F8F8F8D95532FC + FCFCF5D6CAD4D4D4F5C8B5D1B5B0F0F0F0E66A39C23428D65131EEEEEEBCBABA + FEFEFEF7B192F49366CB938CD34D30C7726AC63A2AE96E3BC7564CD26958EEB5 + A5F9E9E3D7C5C2C93F2BE46638F8E1D8D2867AC9C5C4E05E35C03027B82725C7 + 453AE79A89B9322ECBA59EF7A47BFCF4F1FCF0EBB93A36D8D5D4B44741BF2D26 + EEE2E0A22925AB3934A7302CFEF8F5FEF9F8C33B33DB5D3DB52724B12E2AD251 + 3AD9CFCDE47D60FEFCFCBC7D75BD2C26EBE9E9D6D6D7FFFEFDF7F1F0FEFBFAFD + FDFDF3F0EFE8DDDCFBF8F7DFDFDFDED7D6D45A43F4F4F4E0E0E0DADADAC94E41 + F9F9F9DF6648EBEBEBF1EBEAE4E4E4D8D8D8EDEDEDD94E2FD95738C53729EFEF + EFFFFFFEF3F3F3E2E2E2EBECEDE8E8E8F7F7F7EFF0F0CDCCCCF1EEEDE7E7E7F1 + F2F3F1E8E5E76035E86B39D1D1D2F2F3F4EEEDEECF3F2AD2D0D0F1F1F12C0000 + 0000C201FA000007FF800582838485868788898A8322173C5300919293949596 + 9798999A9B9C9D9E9FA0A1A2A393560C717F6763670D710C56A4B1B2B3B4B5B1 + 8323B887B982BC05BEC0BABDBBC2BFBF3A193046B6CCCDCECFD0D1A50C011F70 + 1075636B6D71161621E0D2E2B4E02156E7E8E9EAE5E3968BEFF0F1883A8D3BED + F7F8F9FAA2A601677513DC9481A38D5B180BB0F629BC64C502030A7102489C48 + 31401C0A0713EA3336AC23C78FC10C8504590CD808643C16AA5CC9125AC30003 + CA68D1E265421908633E18D4D8529F290A5DFEAC3933A0A8D1A31FFE707BB54F + 9ED3A78B4624EB49B5AAD54DFD621ED8BAD58B9B6C6B5A85796525C4D567211C + 024D05A70E843270FFE3CA850067C0862EDDCAE283CAB76F2F1130CE0A1EDCF3 + A556AE5D05D649F0A141000A0C2C10B665254C805409EA947133C18BE7CF9E27 + 88BEC9F84F808366DBF95DFD54C785296C26CB9E2DAEDF3F2D880FCCD4127031 + ABC7DF688B4A4BA1CD87CC9BBDEC5ECE9CA6CD3A701ABB4A2D8EB5F577272F14 + 7122BCBB77592FCF40505ED38D4037CA0FD88490C02EDEC87ABF33B410A6CB86 + 319A95E35E0E9A79D7E78C75414170D22462006B072A9260010B1E825211B1C9 + 27E18498D8564768742590001C654C3053796580F51E4F1486704A030370881E + 6E5B3967DE8B9C75C6E287E6E1F44737D55DA7E32E52C1C00377140629E44B1F + 5CE8C5408DB5B1C6FF186FA597581DEE0D489D7CE05810C006097488988B37D5 + E1A59710BCB5998C5B0EB4018ED10CB2608387ACA9669B6F1AC2A6200D9E944C + 1542E639615A71AC0107676E24D0401861C4A1247E7079A8DB04741574DA2B53 + D26662351C7AC11588D02530C651638CA1615B6FADC8951603AD110042D0ECA8 + AA21F4C050849EB07AC7E7067FDA344617AF3864E8922A5ACA9B798B49170689 + B3595964194E6AE14686037CB0C6061BFCF107B46B7C4094A76D71C6E2015E45 + 776AA4B53028EE81E48E6B6EB9E89EAB6EBAECAA5B0032F6C42AAF6CE650F047 + 029C95716B59E09862E87DD7ACB8DBB28CB502293B839913C01A00EDC75B8839 + 6DD0461B5D54D445FF1B0D48BBC150F84140E6568C7E100003E0CE42679CE29E + AC72CA2C13E2A69C28BFFC4B062C4032EFCD67D57B6F876524D0C637E5985868 + 5067B4D5A1AF006E13471C631178D5A4D6B871E9570557BCF4D5584B74710319 + 7F304002A1A6A76C1D67E04AAC2CEBA6DDEEDA6AB7CDEE0880155132CE742B64 + 4E180D8CD161A07F8411B4390D3D74D97110B8B15F4D21367B1744929D654535 + 855BAADB57EE5D440146845E0ED1D25A6F3DED0763043CE3047588EC342D32A7 + 1EF3EA2BABDE7A21705FB083CD75D7BED0DD79EF0DC70614F0FB779510357046 + 669CE977A497496D70EA3973EB034E181B5CD8E29170B0C27464D833A03DA161 + 5C1E5144124DDCC0FF50C46F1B72006793E2F6FA6CB7CF3E8376C280A7EDF43B + 5F59DE80C2F147EFBF07AD56000D009D8A6612104611447990499FF318D005BD + 4DAD7AA6699A37B497BDED758F735A9B98508AE6B119B9010E6D600033DC47C2 + F795B05DBF004CBCEAC7C271E82C4B36D1DFB0FAF7B78614AA0DF7A983E166C2 + 2D0336E6348D5B8905FA0410AE7CE50C6D78943796C8C4EC656E7301B818C6A6 + 95A20ECDA80C1FA040F3426100727591415FECA217C70846328AB18C683CA31A + C3C8C60421830555D8620BE7188B17022A017DF31D0DFD770AE3802D39B8395E + 7BFE2020F8C8112DF6FAD37E488744A631511D4C748805A1D805298EAF8A8A52 + 8FA098823A137AF2FF84EF938AEC8044C752D6C28ED4CBE31EFB674343798D43 + 1EA2498D08B28611EDE3710340CFA26C3432F8A80392137448E6302845A1202A + 3D5E80C0194676484E88F199D08CA634A749CD6A5AF3406F7442334DC9CD4CD8 + 312078E4DF2A69D89038D80793DBF20A4E6A09996DD682017FA8038B8E84C791 + 2D9179BF4B47301930CCCE4D917002FBCA1AE2A0C04FACD18C6D7C661ADB5846 + 851E74A1647C1760E2D8CD8A0EE77E7A0BC8EEC4394E1AEAAA0D7F48D15BC8F4 + 1CBB180452D2A8D707CA60C4D201311DE18844D0F4E910615E302295C4D80686 + D7416EE9AB0B418CC535874AD4A256B309B1939B4597FA0913B5610085FBE099 + 80D651720AF3321CFFD4A52C43543057147416698189D474D3B31BF9D27792A8 + E1399648C10B4EA498A0D321D2E0D00092CD62A80DB5665EA3B9D7315ED34E3C + 981F5307EB4D6A14893375182842AADA51FA5C89A7C85A0EC174E2557E35E37E + 7FD28D17C8862B6FA023A6699DE95A9DE8D6286A7028D798408B20B0062DBAF3 + 12468DED350920DB2EC68E07AF252C37ADE4A70EB974B1E5680842F458557F01 + 10A05A7D4E4E4C33A0F8D462880CF350B74CA5BDE15A76126A156E5B6F6A5A9D + 2EA9702C2AC319BA91DB4AD4F6BCE8856613DE958C65E8F6BD941822AD6A643A + 3DD6D4908CED9724E320BC3F1A6F3D1004627931C140A87AC85666F52C5AB12B + 5AE14AB27B10C9A0FF7707A0C3F00E6079B230006D69DBC50D6B588C1CFEB087 + 3DDC611183F8C4252EF1884DCC61418820032B842F7CE5ABA2D2E5858FDD1BCB + 59F36B0E6AFCE1389A91116E7CE89883004D1661F843A5C666BDEA02371CF944 + 075BB7E73D9C8A6F5A458BEC017AD686616538BD6046EFCC5820E332D31858A6 + 7A725A0A15458B60E460F935EEF83A66B84591E60C84F4EA80654AC458226929 + 35C52739D7BA4F7E7A4FC219DB29D814C5B7016578C59066B1A4493CE94A47FA + D21A7E5760CA3CE385C132B1372E87430230C506546C2CC4EDE85A2D631CFCD4 + 994674B10B70F61C02C8E9E7834A73B2A0594968D26ECECA535474E494B5D1A0 + 8A42C5964671A59FFF19624C3B7BD9AED90EA7757B0A3F2156B17AFC09A9B996 + 448BE878B83C1EF5A13453BC992CAB2E7771A47339814B99F83401E9A6A08279 + 4DE8094E929853FCDC31790307C53E5AC3047836A4039E6C81175CD23D8AF1B4 + 2DCADB4F635BB4DB035F4EAD0619AA325698FFFA5A937AB82CB018ECAB94C065 + 9D9309EFF74466DED9AD3705F9595AD3664CDFB0E44D624F250B83DBFCE037C7 + B401EC54B3853315BAB59AB99A67EA0D88943A89154FB5AA1DCB96CDCCC82B8B + 61E7E932D1EE40B227DDDF4679BFA43CE57B5B248A9E839600AD48BA818A3016 + 014FBBDAD7CEF6B6BBFDED708F7BDA33AD0357F97CA90DF7ADC8E0CC4AFA00BB + 62DEAEAED2572938FFCC846DC8109398120BFAB8318CFCEA492494BC7FC9757B + 4F32C219E4DAB4381673D2EDBDE638C739C1731EFAB96F185E7767781CE67BBE + A1E7F3C114907012D5CDE3C059A6BF3A8CA55706D255D4540826EEA6A7D2DEAC + EB5F36F1C1C394F895A935BC20CBDCEC35DFB0DCA74FFDEA4FBF0934A35DEA4B + 69255AF9B66C9149F9EBD90CD23F985ADDBB2E2E35C6879C5806843461111055 + 430EFC4022C93197D3F1C969CA56E473B7BB2FB7316BF03572C56FFE86760067 + 7D6F97806AC780D5E7806EF72E8EA07DDBD74267B62C03D06516471F97835F7C + 14619504786EA63DE9B74A0D113C4BE2162FD2195F511711E40D911207671059 + A4024178917FD813FF49FB847C55F65657B6795E03362B22558E867628A08048 + 9884D6570037A01D15C87D57A222109081A8D12FAC766A7C07380F86535CD300 + 919785E3245C37948280541EECF11B45280914B006E3616E5072176E26793535 + 6592644110F63D60873189B606D522528C465707117D4A388884E8765291124F + 38471738851A185CF5C135155371E0564382536A9168649FC558FE72282AA27B + 93A53C19010EF6822FCAC128091016166139FA775F2BC7723DA87C9A472DD6E2 + 6AE9F1539C440A697784BA4800BB1870BBF88BB9188CC07884BEC88BC6588CC3 + 688CC4788CC6D8042BA00C7B9688F2D17D52380083627182D33912E14816D72F + 86063E60B78D4D33FF78ACC44FA4B60129927B047413E85648FD502407767FDB + 781192D78ADB75875783681AB331D6E25FBAA14CE4258885389085C85E3D278D + F473668C628DA8165C6A614E2FC70D151765B60791D2327B1E585CA660196C01 + 5E1F723CD6C83496315FDC423984348F98638FDC838F5F977989C68F44912D81 + 9458FC5373C97893CA989338B9933AD9933C8902B1333B08693B79B7906DD05C + 35E4585DC06D78713D5AA75F43833114231190B17FE4F83B82A368B9E719BCC1 + 1E1F102DA9504434C11EF13711AAB8924FF48AFE148B02E83588124B811242D1 + 28093FE99376599778799739B9732BC002EE35947BA209D4C0309CC18849874F + A3555A527489DD68FF0EC28479175349DEE67A7B143811114088821EE5E12570 + 902D92432A64A3148077359A539ABF068E79186C02C831FED595E305729C8002 + BA289BBC489BB2799BB6A98CB6899BBB398CBD599BB3199C3AF99B06904D8029 + 2169815296C05BB937850D7098BFE48DA7B094D2E218B4D777A7B06DE68717A1 + 587B9B0864A2F291FA712964A91466499A55C639E09853CBC787D51284CE3736 + BC339774099CF6799BC3299CF8B99FB9E99BFAD99F77999BA2F42AC759155562 + 68E1175FE6F41E30580AABF727CB320609E66043D74ADD6535172178BFF3908B + D994C437898D359214A64BB9911B63A30D5E2899DF9335A8C99E7A382D6D398B + A9B51F7C1306B580FF021C709B392A9B3B8AA3BCF9A33D1AA43FCA9B42CAA33A + 3AA448BAA34D7003198088055A1816B01677E16593C00028E228542A09780343 + 3D038A27F748BED36B6E254553994049F998C056A61919861CC9247556A28861 + 130970061233956679A76F65499AB779EE491442283603D137378AA4848A9B79 + 50A8889AA8B279A885CAA8F80937CA40814F7A0FFA959D21D599224322143083 + 54231D7016066DC024726A2A46765F73F894BA426AD5F985D6954F82439DE699 + 74C515A541E16ADB322A3C444067182D14238216C39E5D282D7CFA01C44A805A + D2225FB17708330A2870A839EAAC43CA017990A3D4EAA3D00AADD55AADD8EAA3 + DA6AADDEFAACDCFAFFAD28600037A04293EA137EB794AF5438FA823E94100709 + 508A5C956B0801AA06D6A58FA25D3785119EF537180776A3498FE1478985B2A0 + 53D990ABA42B44F396255A1E99A42C671816BD9AA72EFAA2FB18A3C31373A3D2 + 2DBFE17BA370A820DBAC3EBAA8221BB2210BAE272BB2E0BAB22A5BB22E6BB2DE + 0AB3204B004D8012E78A0F26B22BE9681E9EE10663E0AE9300AFBBB199DA2020 + 8592371ED3A5EA2649101199DCC82F34A53D11A68718D998A3F510E6346B093B + 9299F9315303266F0A75736A7EBD1A821373B6C17AB1EE692D22F5A61B7B6E9E + 0A9B9630AD79E0ACD3FAAD754BB7752BAD76BBB7758BA3772BADD41AB884EBB7 + 829BB7820BB886ABFFB777DB048DF09737DB0C8E89B5E3566E5C3101FB420901 + 900033627F6F282D5926A7CA137E81137B7A78834DB37F33C54F16E98581F794 + 5562195A3B7E00F40F6E8BABEBC11803F8279F79676B40B667AB87690B2DD4F2 + 9EAAB021E005A72D628ADB604FD7C5097B0BB8D92ABD2DCBB7E17AB8899BBD81 + CBAD843BB879FBB7897BAD742BB848957D91EB0C9B483E2AC8955CA91E991BB4 + 9CFB213CA44E9D89BCE8A1B42453A9B147A695B434B24A7458BB9E80F7BF0EC9 + 4F60080E0FD106CD47A25B22B694456AD63635B19614E6E785E2B3A7305ABC6E + 69349DA1BCA30220783622DBC401824BC2E36BC2D88BA3283CBED34AC22EFCC2 + 307CC2251CC32ECCFFC2D9FBC2742B064CE808F479BED370254C7234E41110E5 + E6B3402B0971300607661E42561E4CAC1CA5C24CAB4B7E2F676A8F6195C6C7BA + AABA9DD7195C30D53FF63A6CB73A39038167F6346AFF20393D341039F12CD539 + BCC5FB9E5F932D99A459EDBB255B856E40D409835BC3348CC37E4CBD33DCBD28 + 2CC8E3CBAD30DCC785ACBD0400A990EBC3A160999791223BE4C45F3252CAF2B3 + 24120703D0195D022A961BA7D91041F855BA10D985185A8F43F73F541B875669 + 82E6D027E361A29BD91E08848D5D10134E529299B20ACE42BC7C48ACD6722D1B + B2BE1F2C10712164251A43212CAB9800C32FE0C2D1FCC2D15CCD1C30CD892CCD + D98CCD896CCDD47CFFCDE0FCCDDC9CC852A17090EC0939DB6A01632900D6C63C + 851E46BCC99D6C8A67C087452357261AA14AD39D930B82C13B954E996D68EA83 + 033CB05EECC5D4201EB72A4B5E699D19690589842C88B17BD840100370066740 + AC185D149E52CC983CD1A4010799A18E25FA30B1868A817809355CCD748BCD2F + 90072F1DD332DCC2D23ACD2DFCD2248CD328ACCD83CCD22B7DCD341DD424EC8C + F273CEA0D00F58D2418BD433CD62C5C22357F1FCAE9D4C39D659BBB0B4CB0F83 + 6E5F18A613B4BF2F679E4E794F90648EF956B5509B898193CBEE7629F7A7675E + 0C347937C666481722AD219FD2166E312658AD5C191D84EBACBC0F132CDC3075 + 9100CED67CD82F70FFD886BDD88ADDD88CFDD88E1DD9906DD88DDC5E46AD09C9 + 197BC2C321CE0117D01131D60914BDE5159A2CD535027E3604C4A06245CBCB7B + 49C19D70B6911171C1002DB020DA63FB7BB6A95CCA95DA402C352A519CD232E5 + 984053195D600D1D52C78B621E7011266112173CABC69A756E110384045838CA + BC25BD911306D1AF9110D3860DD3300DD432CDD2E52DDEE61DDEE75DDE8C3DDE + EB4DDEE81DDF2F8D02632658975D0910DD05BC02480433006E4CB678416A5143 + DA471C099C5C9819787639DB001BE387DA4DDDB916A615E9724C99A193385A18 + 37DB67EB48FDD2DB50F574CAB43C910238CCA32B01C4C1632C9EA2D1195C29D7 + BD51175F099602E8FFA779DDC1B42C1067C85CF90B0089DDE33E5ECD3F1EE442 + 3EE4428E07441EE4467EE43E9EE489CD0162B0A4B273DF94D063A80055020375 + 63A078FE04784F8D2C511DB4B9444FCF6916C411997356800D9C78B06D5D6278 + 99C26AC51FAA6050AB942F277F1D0E38090D01A353077F7076534EE2BD664EE8 + F847CAEDC1266AD204F195C2BAE830BAC1E4369EF9FC6752C2E390EDE3938DD8 + 3D6ED84DDED896FEE38CBDE9950EE48D0DA9042AE5FDA0248B6667BBDA6D5B2E + 116109CFA50DE6F78B47DDF010F6E12C4AA1536DAB5A710A313FB478072ABBFF + 9CCA984874DDA3351C6E0E5B67250ABDBC7CEEE77FEEC5AD74EBF65B3C907EE8 + 5CC22C8ACEE88B2EFF8B03802DE466E313FD4148E465446EE411A0E43E9EEE4C + 9ED8E97EE4EFFE02ECAEEE45DEE3F1EEE36200376466EA96B106C4E37E7441A7 + 162CBCDCD66D61E9E5B18EC4B924BAE1E3EF6132CA6E765CFEB8B1A4E1DFDC09 + 5CDA157BDAB99D93C9E6146AC018DFDBCDBE28A056506F9DAE97143A5E021731 + 021A35F17E5DA22119FD2CC45BF3367FF3FDA882294E3D53C5E3F4FEF3ED6EEF + 4ACEE4F7FEF3F2FEE345FF026240004CBA03F67DBEE5F4D42BA24ED920315696 + 686FDCAB2105D5096FE0613E10FE1D573BB490CF1919470B6447B32D59EDDFF8 + 7756A69C6FAE2BB0BAF6D68829F27A3E3DCA0454F864094949C51B10841E2D26 + 71F1F0D04110190DFF96177BF3C44BB6130152710548131DE2221401949FEE96 + 4FF97860F9F24EF947AFF99EDFF99BFFF9A20FFAA35FFA9C7FF9957FFA2F6000 + 8D805B903C290EBF43E756CFD639DB19FCC6A61614234AE09A1AE61D770DC7DA + 158C6864E6784928FEC15C85672735E7D948A6B53D8E0D165C760FE2542878EB + 165AFA6B5A42E196D8B221F55BD79BD22C347FF3EE59FED0C2F859E3F8A1C3DA + AB7561937FF4E84EFAF21FFFF42FFFA31FFF9A8FFFF06FFFF30F082F11828483 + 2F4D23193046008D8E8F909192939495969798999A92210C011F756E135A5E6E + 75631B017161AC716D1B6B6B1B1B7FB50D0D6D6D7F03A1A563015690140313A5 + 6E65A25E5ACBCA07FF1310630D141656160C14715D7F6B6370651307E107A46E + 1009037F6D710C5621EED50C6171015D6D0DB56D5D01610C16FEFE5602B673F7 + CE5A973310B4842305ED4F1C0AFC0086A05430DE3C7B7F60ADF9F0E18C478F1C + 39C69235ABE4AC912669FDC1A5EA21056CF3B47DF0062EDC843A670230001021 + 029E9E83800A15FA7328D0A246870AFA895450D2A34F813AF549B5E9A11B1958 + 4CDCC4B5ABD7AF6031596170B0CE282F65CCAD51D70F9EAB35673E90ACB532D7 + 065E6E7C017314C2429704CABC286356AE4E9D325E0EA08D368DA0356C0DD60C + 800321AFC28513CAC019B3765F3F6AFEE2050860EF563E5510F97D1618B0E2C1 + 840B17FF6999BAADFFBB4915E58DAE77EB1EDDDFC06BA59C05DCB4BE380F5929 + D7DD6000849ACE20E4B4C0B350A19E53AD4B0D8A9DEA54A14BB907FDAE747CD2 + ECE6C3BF1053002B8F2961E3CB9F4FFF91A733A148693EE390C2E7D0714416D7 + 5CB6D88557290304F0880571AC019B385A9493C007198D5186425E40238D05EF + 30E0E1451B9C91C061A340E886291336A08A87A079A81B3DB9C4881A8BFF0814 + 42357E21741943633884DC8F10D9B61524EFC0130636BB95D61B5DBE05579C69 + A78D06646AAC20D9007E6E8873D3073AF1141550337C09E6984285696604613E + 75669A62AE19159B623471C3053BD467E79D78521407288369B64617FE59139A + 870108281781E9BCFF32462F6EFC124C2771FCE18D388AEDE7D0350D24E00686 + 1AC601DA3FFD30709164245E160E5AE69CB14117AB78F8998B17F9D600ABFE85 + 5A634006E9185B43AAF42A6590D4DCC6C98DA1C913533D31C6D8DBB2CBC6D8C5 + 712D21F7D2B42F2147DA95A168090197D419C566996D0EC5A69B6782DB53B962 + 9E8B6652E86237C20A2C54015F9EF4D61BD68D61487A969F3A718823A801C275 + 2881B770D3CB04094803D94C88693141399BADBACE8D1464BAA962100CD04018 + B70AE48F3C6D70E38D28A64608C16614D24AA30547C2888B3E41BA2A288E64E9 + 3A4E863DFEE82B6DA1B64611B1F1C0E4EBB344174DF46848CF3325B5D52A4DCF + 3D586A59C707EB78FFB9EE0C58839935D6E45E3D66D7E8A6C935D85E8F5B369A + 5B93198118EFC66BEFDB7067D249176324845602A944F40FA86114FAC1000392 + 444BC175E735011C6B34B0C1A21034FC0C1CFCB11A915B7F68AAD0963AFDB777 + B1A4DD35E237A67A91591D906FD0460081F23DCFAFAAC96C6B185D38B723CEB3 + 396DBB4B930F194941D65469ADEDBD02FFE3F0D2BE5425922E678497B6DC0200 + 76516B420F261E664AAF2EB9D2574FF60CD4A3097DF7D1878DE60B2824B28313 + 71A7AFFE820138378A66798726A8FCF234F077E07311DE4B86708C5813397540 + 876770B5390A54EE626E401CEA6CB51A8F89AA0B91E9C6371263A2930D2071AA + D05BEFA8E5AA0E5AFFC3456D90DDAE7236BCE0052F3912A9C48D681634A6C164 + 692E8409D3ACC59B8CC4627936995AD5C6C6C31EFA906B0BF821108548C4221A + D1888398539DD6C744B831E00F6611CCD432C7C25789C67E8013492C6641B8CA + 08E618DF50CC31EA9080CEF48320FF0A8827D600872C69017E0118D407A9E140 + DD6CA31B8D2BD1A9209680C8B50A541D0C64202910C207F1A876D69252D258C7 + 229FE166851F3C5E0C2739496B61A42437CC964DB61547E7F5106D66DA1A1141 + 89441F829294A62C222A45393602ACE0024568A22CE915860F34CC0D09F843EA + 04C5408BFCE16F0308C916556230CB086630285A4BAB3407AAD050A00BA000C7 + 1BC7D00506F2F29AFF4103D119E0D00B4A39CC1490FB833E34B8B750C5C35547 + 6A40DD66D710E2995078C00AD6CF08188F2335AD78337489F19A568F8CA48454 + 59CA21977632C4B105116B072DE80C126AD0853A3488101D22431DDA5084F230 + A2166DE844311AA715C0609620A5CF8D02009852D4610DFDB2E67F44F387338C + 218B0353C90712E0456FDE4463EBA06333551A8F10D621315A38E93A5824485B + 0DCA8E1FA81BE84227A10BAAA856D8FC203A03642176F6285AEFCCEA8F54132C + 611109922EB2E73D8987CF6A8DE6922839090EA3D33C2438D4AD191DA25B8308 + 578ACE60AE0FCDEB46EFCA35BCFE30A11855685C358A3502CC8911214DEC57AC + 90AF3AF0A8019E92FF1F4FE5D1D297C6458B321D515E2074B70D44D6633B2D6A + 002A77A103E012B22B15243683F6B4A4520674E2280504CC91B287341257E6AC + 5F5547E8239D094FABF16C8DEE1A81469A1D8FAC65155A3F35925658AC157304 + 8DA874F54A5D882E60BAD2BD6E7517AA5DEB6277BBDFF5EE7691202718F060B8 + 8A4D2F45EE038152283050AE23AA8B46EB52C05D7624B598694D17528E3354F3 + 5F922DAA6AB2C146706468006D9886548B2AE096E94244A1D02361C82897D34D + 8E9E165167696FC62B9D29F2C33B5B9DB41AE9D5AFE2369B649DE16EEE3192E6 + 3A57936CED6478C14BE319DB58AFDDAD6E8EC51BDE1DCF806D1E8DA57A874C09 + 2B18B08D111A431BFF22A2525EB2D4A563F888306731D36EF257A8D48187933B + B81CDFBD263119E2568019ECBA6265E3979FB34C6CD3B2190CFE51751AB66A6F + 7FA7D53AE34E48E8252E3DC5BAB4D5F106165A1CA65A61BCA5AA5DF7D0884EB4 + A217CDE8463BFAD1908EB4A27F7C0378A18FC8987E84153EF19C0C9D61A84D66 + 60DF2A6BD9CBCA651622AA4CC9CA70D238DEA897E8ECF2713780E4039421014B + 5E2D993DE8220AD0E38E3485EDCD463721D3AD02CEBBE5F0557D6B673B278746 + ED78E4892569D66BD9B0C52E0628F3645C631CDFF8DBDE7EA88FB34BEE70F778 + 011168820E32B0C44C67DA2F0340CC4DD6E0A9A2AE76D4501E807D43826A9A5E + ECCA2865405FB61CFF56E5B83040BC30B0503936E640CA9A155C065195857D33 + 700AB056194EF621DDF9DB8E9FF0D9B699A7719BE6B293607B382F0EA833A6B8 + 93485720D12F6774CC1B3D7345A7610133AFF9A2757E7344BF5CE78A8E799C44 + 004B77BF3B53C540982E172C5F733E790C2FD537480E95EA7F8FC31428F597D3 + EB69F0694D69B4BB3DED3AAAD8E02E37FD1ABF4E6A1DBCC8D4542112321AA71D + 5641BCBA102F5291D2E2EA40F20C80DC200982D76E31CA07ADF267344FD2397F + 34D0612E699C377EF190AE79BA5F2964A3ABF78951BCF5C6984E5427E31BEAFA + B66FE0B6F99C92615D27402B38B55F38BC2ED01AA8D2F92FCD38AFFAE538BC65 + F5904CB0A1438E93FF7D4045C889336F39DE6C8F2B2DEFFF89F6B0E0E16BB49E + 7CF029971AD55A7EDD9F3BBEFA8EB7BEF6B37FE8ED637FFBE0E7BEF7C54FFEF1 + 875FFBE9263A622DAF58066CC0B1CF4030C3ED2D6AFA823EF420B9214DF578F5 + 56FBEBA8AB4756C1134265601370B0010AA66B82F470CAB180BF06619B052137 + 710690552871D76174667CEF94816405715D352C2C431A81E76283A76D9BD43C + 89677DDF477E2B787EDD577EDCD782310883E64783E2D751305005ECA75861B0 + 0617620A1FD0051CB36BB9657F51877F973519A56722AD26705A564F5E477CC7 + F70966310E65A06450554EB4C78010175FD8F060BB4741B6964BFA207CCA3667 + 1AD871BF835CCF06FF1003F108F8F26BCC458225F85C3AB4131590873FA7877C + D8877E88737908887D28887E58887A48888768888A18888B388815D05117A083 + 3B08523DF8832C477BF1F574472875494819FC1721FE472C527524C87577BDB2 + 0109704B5323399A43665C6876BD267123F21CE1804B7F62811B764873677774 + 172D6C986231F381C4C520BA308782067D84B76DD491888CD88C7BF88C82188D + CC088DD3288DCE8888D7588DDA988D798883F332894D544B9B9240018789F1F5 + 799B28751CA1849F787A4E0848A4C86C4E8334A3F14B48162165A40EAD43845C + B71C4CD385B1385AFA951887B31610748124248FC5F78B0CD9861F6801CFB40D + 98858CC361822B37FF7D00D0881AB9911CD99179E8011E19927A485E59B17EE0 + A83EB58418706445F4E721BE466AA117931E8147D0D17F59278AC5F24226448F + 4803418B535A37254EC1032CB0D68F5D472D0D1856CDC746595290F96086BAA8 + 9069D890BF683CB7252AAFB011C7489198F45C9CB48C22199662399664C9876C + 931527C944E2D85929B56B1FF492F916939C884756078A01879339093C3CF92C + 30D25266E1306A810BB7A03245597B47394955828B0E8338A70395B423850B49 + 950C591B1F532873C89515698703050048F091150092A0F999A2199A208906A3 + 799AA4899AAA199AA6599AABF99AA9199BA7D99AAFF988319015DF98966F9392 + 77331BFC28557079FF7F72191767A08496B10C40E86A00E64C3B438F4613236C + 7421110207BF07412F831A49B980B2462D4B032BB1F38378A30F7F8090885477 + E6698AC7279993C90FF2A00DCF87995D49685F0900068004B4299B20E9999E89 + 9FB0599BFDC99F00FA9FAF9906727201EFA19B70B396B7E61043E8962E698431 + 197503E35AAAE6302C87976F59773D5934C9E27AA9A80C98E367CF920FC7C155 + B7E78FDCA94FEC491A55854B42399EB9F898259486BEA89E6CC89DBAF09EF019 + 7D02553524600262900615609AADE901466AA46870A44ABAA44A3A9A46FA994F + 1A9B1E90A44C8A9F557AA5589AA54BCA0505DA6E084A4BB6D49B9EC18F0F0A93 + C3290BBDB101FA85FF0C9AC12D18DA3B896434C8922CBA9070A42054B02282F8 + 90416587A231D40A01808AE3984BF5489E5845A3E969A3C0F8233E29783B1A9F + 85379F1A90034D4000421AA0982AA0991A9AFBA9A99E1AA0041A64B9F9A576A2 + A078B30FE6285FC17984F9B701D7590F9E030770800E63B739A0E26BF4403474 + DA1BB9D052DEB00C6590132CA21BA5112579D7800CF8A7EDC994D3A4226017A3 + ED34A3C557A38A3A3C24D7A8748899165968D4C104931A036280A45A9AA554BA + A4E5AAA4E77AA4E93AAEE2CAAE53AAA5EBEA015C10031EB503A34AAAF3C19BFC + B28F44089709107503323851B262FE244ED3B09C471513749A0BCCA20B49D55E + 63B864AF428A4962FF1CD8A91ADBE942ADD006D1F44608360F302A67BB789E1F + 56AD93A95C8AE3A88FCAA32B476FC1E003DE2A02E0FA91E65AA52550A5F17AA5 + E57AB3EDCAA450AAA43C8BA53B6BB3471AB4430B922AD0362689AFF9FA01E3A8 + 400D4A666F09A1015B17039B9E2D414E9BE392AEB0ABCC720BDBB04D9B72139E + C50EFF62117A9A0E25DA3A198B94A27225A557060856A8D09A9019E86C268B5C + 5128822AFBA8DB9A31D504005F60064CD0021A10030430A4497AB38BEB01416B + A4417BB392FBAE8CEBB8963BB990BBA48F4BB498ABAE96DBB8930BBA97ABB9A3 + EB016930AF1EB5B44C1B1695088A41C8AFAEB8AA558B0BB9C0974A4325F164AB + 7C03234AB22CBF41FF65BFEA69D5341160652C73AA0F7C6A9862F5121FD21C7F + 19ACACF2AC222B955A95B7374A72399AAD5C69912615840C20055FF0053ED002 + 2B30B343FAB9968BAEA43BB9A18BBE9B3BB49BABBEECBBBE94FBAEE25AB9959B + B9F97BA42A50692C7069AB1B1FAD6B0AFE3584B0EB70C1194C5B640BB46BBBB4 + 11332BA5BBEDC9B0BE0B1C54F6A177B3311341409144B1F48871C96A956FEB3E + 68E15FF5988A720699C263BDD78B3C2CA6BD14699100941318E00366E0035B60 + B8E09A068E5B023EFCC33EDCC3920BC4445CC4462CC4420CC4486CC44ACCC43F + 9CC4471CC53EBC04FDCB6E9218C060E17E09117F09E62244D83291211225C1C0 + 0D4C8FC817C1BA8BFF76A5E12474711275937453D40EBA9B9349837146793C5D + 88709D167B208BC2BC35B2E8C9C22DBC3A2FBC95F0699152330018B0C852100E + 3ADC045CB0C4685002933CC98E6BC94F4CC9928BC9419CC9979CC99CBCC9433C + CA92FCC3987CB9981CCA9FBCC469A002AF745E589CC550241857B821E704900B + 380F8A6372C4B1120D8CBCB7CB64D764AB6807784EF24FCEB1298BB131C9C71A + 38B2BCFCFA8ACD4BC2B177C2758B869129C8D65A6D852C387EBB564CC8C81810 + BE3E20031A40024D900668A0004EDCCEEEFCCEF01CCFF23CCF5CA00222C06EB1 + FC15168074A5904BA0C675AE182B3634C650C2975202723B25C11761C1FF9472 + CB306FA8736100B6FF757D6A760CD21CED55C2D18B8AD77CA878ABCDDB2C34DD + BCB2C94829B1B1C8286D06E130072D80CE5C50C94E0CC5F13CC9F37CB9ED4CD3 + F3ACC9335D025CFA4AF69ACF5CE11716F23007F8CFD929607F07B664EC2C7887 + D046B5B56A9C11FE6412282119BF3A0E38711C10BC325A58D1491929162218D5 + 1CA87E7C862ABC8120DD67A331D2248DC8268D017E00D78BFC0507F0057E70CE + 31C00525A0007CFDC3ECFCD7440CD8ED0CD8EC0CC484EDD77B9DD8869DD8828D + D88D7DD890ADD88E5DCF4447057C07D4926001ED831819426FCAEB8A1ECC1B0D + 6BD08C2447CCC439AF50918267D588310E9C742CC89B8550CD60B2F621A425D6 + 5C320F1C3DBD89C4FF8BD40AD25EB7D6DB00C3C8E8D69482D23E80D21800BEE3 + 4BA953FAD88C8DD83E5CD8921DD9D47DD8D31DDDD06DDDDAEDD8DD1DD9D9CDD3 + 4DE0D3008CD99560057B921F9C84ACB008DA7F47C1657CD0C1684DC4EC0AFF84 + 6D233119AD1D549E950DBA50170E99D0B4DD85FE1007B46638ADA6DB65BD71D2 + AA86698D4F843CDC86ACADE06CD25F00D771BDC87A00BE07E0073280CE2A8006 + 7DB0CEDADDD77CCDDD7F6DE2279EE22B0ED92B5EE22DBED72D7EE28C3DE3364E + D82BDED3179005E67D09217064177285090671B5EDA028B61B4653C7C2DC647B + 139126876D5A3400FB87D59E85AB739A347AC353DA49230DF29709940A0ADED1 + D47B3B0F0EE1BA2CFFE1DEBCA3884C0A97E10617AEDC8B6C065FB0057ED00239 + 30022AA0CEDFBDE728CEE77EDEE780FEE7825E0290F8D33D8E1B61D0062DEACF + 41C28064EA3BBD7D34F330DF51B5524E8EDF211112935185FC0DC289640FFA28 + E05BC8550CC227D3D9DF647DCD679DA865BEB7D93BE1DBBB56DF541367E0E6C9 + 1DD7192E0572BE054C900324A0022AB004327EE3C45EECC67EECC89EECCADEE2 + 3D8DCF87CE099EC0275BC28A8E4EA6E8546D664C944D27559C93B21B91E9E02E + E595E1DA08182CCC2782B3B24B99E8703253EA09F14670503B01B0060B2E771E + E6DB65DE670BDDB76A2EEBE5E045F30E0107200518A007CA2D05CC3D071A7003 + 31A002C3BEEC101FFFF1123FF136DED330E004F7FAEC63D1007020D657A5BC47 + CD609E774FB461A295BEBB290BEE1CF1112EC54D6E54071B1006CAD717A22125 + 0C27EA528BDEB6849CFE4C60F51EAD63FEDBC08DBD684ED22C8B16FD93007010 + 028D35F0058FD271CDDCDE7AB8C15E020860EC57CFD759DFE25B7FE35B7FF560 + 6FE35F2FF6271EF65D5FF6CA9EF55C6002AF4405CFBE3B9B5652E4E819AF78C0 + 5F0CE95679F24F0D321299E92C3F93FE46EE32BF15A9D7EE5B4B70AAA5F3D2A9 + 19B5D305D1C9DB5399EF7BCBD62BCBBD81D90000606492E2056650F0C99DDC08 + DFF9857BB8E9FCF061EFF5647FECA7AF0067AFF5588FEC673FF6C4AEE33CFEF6 + 901006B50E9808E6FF1F756FED81D4C149A9F780746670419C2C0F3803D00DD9 + 1254F4D65545E2CC69AC8032A3F83CEF10A4C13029DCE0D5DBEADC5CF46DBD56 + 07D6C58D30166D001852E007B88ED2BAEE03E37BB826F0D27DC0FA0830FF66CF + FAF65FFFF47FFFFA0FF6F30F080A08820883868288878A898C8A85898F8B8B0A + 5C262B1745009A9B9C9D9E9FA0A1A2A3A4A00C1B105E5E6E097F710C61B1B2B3 + 610CB6B7B8B9B916B6B1B7BCB6C00CC216C014010D6B67CBCC03CECE0970106E + 5A5A106701B621DB00DBDE5656C5E2E2BFBAC156716765D565090D71710D6770 + 655E07F75E10637F01F0710100FF0504D8CF9FC18308131AA4C05060833F6B22 + AED940B1A2C58B16FFD70CA8E3E6DE817C03DA5060B06393853803BC489182A1 + A54B295FBE1C6022E3460C1568FA3482246967CF9F3E83027534488150A15C54 + 5CCA52AAA9D3A75045596893C08D970975D6C4A140AB2B2D7360C3F21A3BAC2C + 5906C792395BF6AC6D348EEC06741969C18AB710E0F28EDB6B76D7B093EA0E68 + 2933E65D803F63EAD4F3986FDFC17E90FF299C4C1921430AF002B4812811A367 + 8C1A3932D6F78E018B4C9A2C0480A3E58B143F2E639BF9C2A4C58D265C0AE9DE + CDBBB7EFDFC009F116FE5B3871DFC7811F525042298C2A53A24A9F0E8A9B5374 + 1FE092DEDACBEBD7B0E0FB921DFF975718641ADB0E18C39E7DB469EC0AC3AB75 + 0E6F5E707BC99DFDFF552CC0808E8DFDD1853CD2943141355A4CA00F3FFE44E6 + 6065104E7659669B4934D167186E105A47F86CC740062C1861D21E70B8F10506 + 7AB4E403062BCE465B0B39DC94131ABA25179C728644A29C8DC52157238EC6F1 + C645132BC02022754852875708D785D14002EB9401C71A018C048B77DF85A7CB + 7EE491074B3C1FA8D75E7BEF753458615D00D44517718461817DF7E5A79F7865 + 053006350A8EB1C11F1FD053861B6E4C20A81B0B3E26596411267AD084FF54D8 + 59869F8536C168856523820830EC50456A01AC5186192862009B8A6694CA0413 + 1AC49042097DE0E8AA0BAEEAD6AA72B0CE8AA3ADBFC11AEB6E955CB203934906 + DB5408B030E05408FFAA7D908A820394762596596A295639C100735E03618EB1 + DE98EDC1510704935AD36C005D6CB6411B71BC799F5E721253AD2D5D54A5851B + 758CB10C94135C05A81B7F2E589040900DA4E8C05B35D4286711411AE9461C7E + E4E108226400C31D59301942181B94E1DAA82A62208519F7309103092A7061D4 + AE28A7ACF2CA29DB30E452C2C61C0A5E14B4B14103FD70F5A628C83600872A6E + 4C19402DD076252D785DD20926B76324E0F4D3101828581D1F14A4590373BD09 + 679CEDD2C90B55074AE9343DF608A62FA01024B0C1BF87B64DB0A28C6A86F085 + 0A5FB4A1161D56CA400123E820C2052C44D74D1872D4F1851F29C6E631C83ECC + A1410E2670D16AABFFB52200EBE596675E88AD946BEE79E59863CE79E6A2CBEA + 7921BA22606BE8A49B9E3A022F3F27B8CCB40FDE406275C091C0191BA43B4A08 + AB55039248456379F4B4493310471B1F8CF9F4F3DE5A35F51F6EF6A2B35DDBAC + 8B5FD76315630BD8F3C2117DD91E993D413B541A8AE8DB89C6FD908575833680 + 34933A2CDFDE23F0FD370CA8013095E12B5A51C71667862DC0E8264B50C0E458 + C6C0063AD055B12B49ED6466052741C923F3CA4A1CAC209536B0E61E41A31243 + 8A67B4E36DC96B65595EF312D034E88D0D3E1F4940173868B1BBDC457BE1E0DE + 3818E0C149110A86E5C3E02AE07006AC59AD6D6C631F65260490F73D2A7E15D1 + 4802A691379CEDADFF0058EC9BC48A60310BD8010E0790428A38E6310C98EA71 + 2468C21254D73AD6B9B18D707CA31CE348C739DA918E2E23D2058E3441245981 + 01878112DECA879533B4A14A0C005637D0D28601408052FCB012096561C26905 + 03172A6CA10B75A79803C53000D5B1210E73989F6184E37B0998D4F9A8810F41 + B9D20BD5381F116F4690242A31424C44C6DCA09891F981AB8AAFC022DFF8A603 + 89F16007D1B10205DE700033F8C007645C49A97CD002DBC4C0649DBBA336EBC8 + CD6D7AB39BAD831D91B0C0943E524735F3A8C72031C8AF7AF5CE029BB042A74A + 543FC1D0CB901430CF246751C91392074C9B8CC65B0285B7098C01949FB061F6 + 70D8AEBA14C34970FF085735F041A86F41206A9E1CE2183E60C45BBE2D6E8E4A + 182F29A291120D1224A511A64A21664C3668220E6F3810A812F792D96CA13631 + E2C21AFBE0829E5ACEA7A1E3294F81DA53A1F6F4A83FBDDC5091EA029E5ACEA9 + 4C251D50A17AD4A62AF5A84B2DAA55939A941C5CA09CE67C0AB20270865404F1 + AC07A0D7075EF1C73864679D8C6145EFBAB34F5FF4B31C5E42C61904AABBBE8A + 4F1A5661C719E2B009851A766BECCACF29E3B0818806D10B521AC0199C3186E8 + C5B20CB91BC01A8CB83E8F4AC8607283DF4835C4304806337F59CC623133A589 + 10C4810E3F73A61F02C8A2DA9A01A724CB4D37A11A47A8F2D68DBFAD6370E538 + 5CA0C6D1A7080083FF738CC0C1B096825801C84E3DD15A3E7A0D604F1BD8C874 + 315848E2D5959277F58BB5E2F08779F0F5AFE2FBD6811204813584A1B036EC86 + 61192A8EFBA0A50B652D9B165421258EB6A10DEF4B4CA05C5986B49DE10F87B4 + A5672DD39026EE526122FDC31F367006D1E0434A6BE8421854CAE102AC96629C + 0223A860434633DE1646245B421FB25AD516BBF8C5308EB18C674CE31ABB7809 + 96B880049D3B0A740291BAE54B5081A36620B872571F6B6BD377C11BDE4BF6E2 + 300338EF5FEBF0ADC5ACC21DC66A6D7CB57C43ED8D432FE769EC3AECC92F387C + 402498F94717CA5BA0F50E51B33853F082FDC1C40169E889917A9484295C2276 + D6A18801E83087FDFFB645C12D5363A0EAD88A3EF685C63D4E052A362A516D4C + E9AA26D5D295CEF4A431BD04157895074EE07142C3815FB302F9D4A716DEF9EA + 90800C2B79C94DC68531BAB081CAA237BD54862156B49265C3764294A3144718 + 5488AFFD8A6DA3E8EA0E6634B386CA1679BFF4DADD9E123C67062FDBCEA2C590 + 48F734E10D1D79770D103487B598A94D01E01475686689F5009346A3EA062648 + 41534FA0E97ADBFBDE9556800A6ED002502B52D4DD20EF143D495D23A3BA7C57 + C9D70408E598672D993E77B51605BAD06C6F798BCAB9AB72FD58D1807C7279CB + 1F472CD726FE878D1419B2AD7E08CE0AF698357F20011C59EFAA13006736557B + 21A075E2B6236591FF3DBFFC97F7107266C53DE862EAD8DC0C58C323A1F94CDA + 7ECC99D4D4800914C8E217D31BDF34BE3AD6EFADDC1B64800AE606F8B9375087 + 7C193CE80B27DFC1E3FA27B37BE1CF557A383FC36B1E6263FCEE55969E35B051 + 971AFA3AE422C7CFC45FAE4E63C321C999015840B6020F9BED1586ABC06C023E + C00F39DF12A40F8EDF849BA718F209F9A27520FAB8597A9AD478F00B66800D4D + 4725852D1810725CB0411FE84D7B17D4FEF6B6CF3DEE77AFFBDEF3FEF7BE0F3E + F0876F7B1BA4E0064C6041A8456D8130FCE167059F79D3A6A1F654471BB0780B + 219BE46ED77E8E9740DFC2FBB7027B8009C0817AD83BAC75E4AB7E70288F7926 + F50886E7128634ABFF294D019950B96A0D17B447F666F8576D97B16C21453710 + A60C30576442C42F98257AA31731A7C1245310006FA0127E803802E4313E807A + 3E20031A90462A7602B3277CB97704C1D753B88782BDA78226988224486F2DD8 + 7B3138832FE80231E802CA950319C003FF664E71B006FD87566F07689AD12763 + 866A0952079AF5739372656B3312DC4777681100D93545E2D7497873266D9048 + EA771780274ACDD7057D223DF8403536677FB5544B2DC7668B710FE7A30F1FB0 + 0101C87897C74405688019224551034B70157969E3801D466E3C80741FA005A1 + D2121CF33130511B24106F36700290687B91780247407B952889B407899A6889 + 99B87B974889BB37FF8993F889A3A8899F488A9D0889A8D8752D1022CE750A10 + 70764107016BA5351640017F2048A99627E7D2066BA08B83A13605237711C70B + C4E62D1080777F620FE1D33B34D485D0B850F73586EB242EE8927869988D8B47 + 806B403666B30A10000763B006086679036387DD8667DA363F0A1844D0168E67 + 008882E637170003E564016B30011C382A192805E5474D230369F35683C4377C + 23F87B0749900A5990BA677C37B0022C1076B5435ED08756195435F0144FF1B0 + 5758F858F4A22709D60615563601D20FC41871CA5372C8A88C64A820559348EC + 178DDEF06BBC800CD4E81179E20ACBA68D3C994414470FFC1228FA923B1B558E + E6884B0D612ED916FF29CD430F0417646FA83B1FC06106204C55894557B952AB + 851A0CF0078FC41225E61227F6812A00069B789668898968B9966B89896AC996 + 7019977279966A797C10F92B1334063FF6581AC400CDD55ABC40728E345DE173 + 5DFF95263FC921F302010310490FE770DD271635F98B57B88783E40663D0066E + 22937F575880C47F04157484517987D2933DE90FCCF3344E7959E1A859D43680 + 04D36077485278A821679018ED8841C69636DA3295F228685AA463AD950560B4 + 3117181B8C8601EF1639AAA30673298ACFB9896FF996D1599D72F9962EF39011 + 3941DB15645A90151430935EA8097F845F25A20A43746087542E69928B0D9384 + F8C47DD122166120FF92D2107E1755060A382FAD4001E9C799F1E50D9F493FAA + 202857E60AD8689AA6999414011153044B41176D94774875D8787373213BA721 + 9C477E417615927706096395BFB9522CC5035C040030054662A43826764631A2 + 020AE002CE699D345AA3367AA327600360402499D28349726AF4A21519C9659D + F04736190DBAC33B58532E09861847281884D171F5279F73071EE4B511181735 + 4219A187F70A000A7200704AF3B4188B4965AD667301A3A03C7910F8E78B7A59 + 4F42268E1C9526F0C02895818E7796A15114264EE98E97C56A0310875833A244 + C75230C0031C244F09D04C3EC0121DB31207D06832B0028D287B338AA36B397B + 98BAA9D609063150FF24C8243340F69DBCD65C87255F39742D0DDA000DF05F87 + 79187AE97951DA265C517FB57A9260517F149718C9A8A54F697EBCA6355F6A1D + DB708B54480F27058782EA206AAAA692B115E482184027186F286D145A3006A3 + 10B0B93CE9A8A71A1A659DD7A11E5A2F1F50AE9154005599AEE8BAAEEADAAEEC + 8A45F4C803E449225ED068A2829C1BB8222D902A5C70A99BE89C007B0297AA06 + 044BB0027BB0015BB0086BB09A68B0098BB0070B89012BB110FBB00C6BB1D209 + 06267003C2193316990F6B65313179AAF1A43C02B126AEBA268851076AD70EAE + 30A5B62A9FE0710C253745FAB98C5938445422ACD933ACC80248D8E28DECD00A + 6BA286CD7AB4D8BAFF6CD29A2F8C214BBB538EED83A74B79671F709BD8D7A1ED + 54941236175794952A9595602BA2C2E437875A05DBF0834B171B19582A33912A + 2A900236A0B0131BB115DBB0764BB1189BB775ABB7030BB114FBB77B9BA34DE0 + 5554303B488256F7940DF0058D9C8017E3452E00D6066B16AB83C49FEF00B303 + 78AB8FA90B4598808002A16E9836AEC085DF701F8C5BACC3B6B2D47059678A8D + 8A77B40A8A106B66729E078E7000670591B909C1284AB9731151AEB759264606 + 59F502A250EB26EFEAAECA9BBCEBEA61FB13AA16F0071A4362F74A2ACEB4AF24 + A02A7D50B0DCEBB005DB01DD0BB0DE4BB0E02BBEE41BBE028BBE72FBBDE39BBE + E6AB06E5EBBEE14BFFB047B0A31C8BA8C182566520176160AA3E1B2753C89E93 + 6B6A505A185C91B99721B3B940B3BE64764766486ED277A3148D62BA01038737 + 9095366B70ADA509BB1EFC2F7AE5947CB85FD53AA1B99B668B52A707B3946B50 + B5D050266AC75E9317113863250C10B65829B6CDBBC35E4B6E7869055DF0482C + 729C8BC622FEB805731023296096E17B04F3FBC44E3CBEDD5BBEDC1BC54F7CC5 + 567CC55A3CBF7DA0B11C4B05F97B56B4980D12ECB3DCE0B8689178B743C06722 + A5083C42B86A3DCB935D1CA15FAB903B1FD0053059BADA038D7F347850C28CB2 + 745D74BA6CAFFBC1CD4A6760828CCBE87F728A606C92446FCCADA2F5BB93E51E + E2B38742D40E07C6FFAA88040CCCBBBCA29CBC5A042289A4A807202A34D512EC + 9656480C028D98024E0C041D40C5E45BCBF09BCBB50CBE54CCCBB97CCBBE1CBE + B6ACCBDF8BCB4FECCBBBCCBEDC9BCCBE7C04FB76013C78B867B5BFE84217FF69 + C6A77425353306651064517AC06F9CC0FB640EC730207C82ACF6A4C138B3990B + 35C1BEE6B8714071819CCE6626205693A6888CC899C12767B0A1EB64BB1B752E + DB18CE7293A7544B59EE01C37E662FE5C8159734CA101DCAE83A0225BA034EE0 + 5AE9A638FDC822CFB4AF4F206FBF4CCCC82CD2213DD2E71BCC247DD2254DCCE7 + ABD2BDCCBE28EDCB36D004F76BB85081B8AD46A1117CCD66ECB8C9C2C6DF6CAB + E1ACB9E31C0B9861FFCE0D60C1ACD418A55117A3D4C7BED656D812C8D5605D1B + FC18F99CD504A166AD6A93F404A1EF288E9B45A7758AC0DC9AA71171C94D4326 + 364B3E58B1519B353465110C06A0BC752DD1115D95862A41555081ACAC07ABEC + 315FB00518200339F00465790434A0CBB8BCCB8E0DBF8D1DD9BC2CD9903DD996 + 2DD28E4DD9992DD98D5DD99D9DCC36F0CCF23A1DFA3B255DBD15B5500CE0D0D3 + DF503365554FEDE0C6434DD493B49376F6070FA18B6F27A45DF6D4797158AAA1 + BACC784F0282D55A9DD50D3210F20073759C850BD79A1B6C73657DC0D14AB52E + 9CD0DAB21E30A7770A52CF354C27798DD7E2EDBCD0BC29AA1105AEA107B0D18F + 30E14C8EA3C471DBFF07CCCCD8235DDF986DDF1D7004F85DD9248DCC9FCDDF97 + 6DD226B86F194006CB77D367C50A9B25B95B6D253C3DAC7F741E810142EE00CE + B34DDBD0726DE6B2270FC1CDB0647E1BE09F4BE2DBEBA250E140010D30988384 + 15E3D220877CDC1FEC36F1CC194C988542378E58F3ACA83D6CD856B56ADD1E6E + A1189775BB020D71E381AE775DD7E99AE44CBEE44E8EE44E4E6E54106A0C7027 + 2772AF64542A2F12231210B71D40039B1DE6623EE6645EE6667EE667EECC3100 + 2212D914A5BD59AD9AB226694ABF6DE24F7D43766215C363E1B35D3C0D462E0F + 71671CBEB4E1433DED4CE2A6AB17CA93E2A6C65E8D09C2301EE95B0DE9D16A72 + 04078ED2C6AA0C5EFFA7D19AD6080DE4CDE06C82028FE7D226D45216E19DEACC + DB0414FD37A8410172602219F81204845B2A6003684EE63850E6BB9EEBBECEEB + 65AEE6051E15380DE7FFA5E9F8E7D0A664E7777EC63C749B0C9D33491BCE197E + B20F918E1F3011B85D72E052E85C88E8A6FB0DCD07AB4097418D29DDF82CE9C7 + 8D445CDD27D37AE3CBA0EDD4562161F2E9CFD0CF555B59D3008FE598DA5ED3E4 + 501EF04A2EF0003FF04A5E957FC3023BD01F2AFA1A58DE122C7162B05C9627F0 + E5165FCB608EF1999DF116CFF18E0DE6201FE621FFF1227FE623DFF117BFD929 + F0A941D0E6A3F0E671EEAA87897F727DCDE0BEDAA784C2927CE1704C0BE5BC79 + E51AF40983602557FF7609727EFD7BF3758E17B040850F9A854103682EAEEE54 + 2F309121CF0662C715A53BF632D67676DDEA2159411FBC54268E7268EA97441E + AABEF6CC6BA8857B6E8BBA31C8E9312B712A8F63022A20A31E8FF21CCFF1BB7E + F21A1FF27BAFF124DFEBBB0CF8252FF87CBFF1F9AD02961004074E0AC5DEAA4C + 2AF3C8FEC94EADF4758EAACDC7F308EC1569A10CEC2159FD3CF49BA1E258B101 + 49AFF4D9638CF0778443C451945EF555DF360C21CF55C687677351728A5D2EDC + 16CC80EF69DD4201CD264EF6EF079FFCCABFFCCCDFFC598429AE48014A772263 + 34F731E1032070D82AF0032700043420F838A0F8E2BFF8E30FF2DF4FFEE85FFE + 1D7FFE82CFFEEB9FFFF136F0F8912F0A302FB9327FEC715EC8A9FD9FE00E0821 + 2100008256160C896114718D148F90916193946171017F1F0363630367671F6B + 6B1B7F6D0D0375135A13751B615687B0B2B3B3822116967F6770655E07075A6E + 70670D018D9701C9CACBCCCDCECFD0D1D0718C6D6B1F6709106E5E5ADE5E1365 + 657509A01FD867039E9FE6A1A2679C631F7F5D7161890C8889FAF91606FF000D + 140038F05F418104131A0CA8D0800E111960ECB060A54D1D337E30F8C0C07123 + 0633BF7CC8D04022C69213345276A0B1B225CB972E63C29CD90187CC9B3473E2 + DCA973A60D132B2E382144B468D15F487FB949B0A6419B2E6DA24A9D1AB54B32 + 0AF96869DDBAD582FF57068B1C451A0BA9D2A5066BD27532276A83D35310544D + 80E30A1645AEB442580913608336375A7E791176E68FB1C3C8A4295ECC58DA25 + 645D22EBE235C1173070E3E0AC65D7EE9CBB77EAE6D5BB87A874BED35EFD315C + CDBAB56BD64D46E8C870616296356ECC98F1E191A36F1F5230F86991E3099823 + 2973265FCEBC79F3952A5F3A9FEE1C3AF5EBD157DA48B1224815A3E00124455A + 064ED3A754D337706AD5DEBEBB78E3CB42B4681259B2663169E2E4E95CDBB767 + A4B24A2B14D8259F5DB874B14602654C8054307514664C23873566E185183E46 + A135DAF412183013B801011C09F4E7D967A2A488CD1AF46085DA8BA57DF5DA8C + 34CE58806CB4F160FF01000CBC919B1EC275E49B6E5F30415C0C2AD8909C4BD8 + 353953744E52C76494CCE1201D0D3FAD80C550E111359E524CB1971E55EB5595 + 0C35A45961C8815DF1031623D4DC470125717491C9266BF9B7815BA604C80D2B + 6B14184B7C7AE112C0821058261804096C500F85896128E9A4D34C7849171BA0 + D2CB8321D6A1195B29869A16284D8D06238CA931C0100100B1FA8FAB06C00AEB + 6BB3AE7623442C141102030D9461867019F9C6916EBBCDA1410E49AA41031054 + 360945B3CC3D0BEDB429657981115C86F7E501E59D07D598E04A7555566CCAF7 + D5228CC8F9C82475DEC91F5B7B0258C79F75AC1107457779D515031428A88D83 + BF68E14519097CD0FFC6999426ACB0638C341060191F8258DE18A48A3ACA359F + 3465CC3DFBE0C34FAA0CC451E3C8240744C0AD11F1E044165DC0718014C109C9 + 11CC071429430E26A4801CB3D452CB3373CCFE1CE5CF42370906505850614597 + DB2EE56DB863AEC75E23A4E95B2E57FA542227BBFAC1936728F19AF2012F5E78 + 01C107F75A6DF52C86FE31001CDC041C4E1D036CD0C631152EACF7A489510356 + 1C70A9F2E0381483DDD606A278A6B18BA6359E1A7D01B4D16AAC94B36A79E598 + CB3AF9E5AF6E4EF98D3AD4568513712470C046C10AEB83195FF8606471292C1B + 7472B3A7040510CC3E3B7BEECBD2A0BBEFBDEB8E3BCFBFDFCE7B4AC303CFFBF2 + 40141FFCF329E170FF74504630FD65B762420DB555C66005DFD5B43CAE089C63 + 718D96D7268EC267031F3058F6D971F483202C6B3280C918F3463C010463688C + 77A47B0B20DFECD385F671E343102AC707F6C440C4B1C37F1D6B1C6ACE1500B4 + 94EC821894CD0560C0030654A10110F842CCF4B091126AC40745D2400CB86003 + E4C86E3944EB5DCF902743A0D1AE77459B4E0E9D23B4A3E5E00259D0D6979C96 + 3DED69EF5155FB1EF810343EFC58A2826979979ED637B60699ED0C0148CDFC64 + 9188BE304870C07043841A80A6B03C468068CC903D16E1C5B85826188C3A83FA + F694B88C919171A78A11E4D03280CCF9F17280FCA32039E747038C600410E1C1 + 77BA603A29F8410FFF4012964676D30215E66C670E68DEF036B949E36912779E + 0CE5F03C993C4E9A5276A034E52739494A55D2000C29B8C116AA67946D610F3D + 460C5799DA33278FB1498B6CE3877D247196287E6D147F680054166445086051 + 7E6A430405BCB8A9030C861C0673CF9BF086B0347A331A7E63A35FB6D18D3092 + 438E0CBC063642510C1775EC9DE2E3CBF9C6B01ACDD57346B5AA556B5C558002 + E06A078C904319BE1049497EE40B66785D0C5260031CA83268B8C3A1447737D1 + 894614A218BD282A71A8518A7A74A33C3B420A7EB883A579698861C2652E8FD8 + 1EBF2911418F8B29BE62DA44485CA20D1B409F7F90A94C6B50E68A59D497DAF8 + 85A97F09866006DBFF183ED0F5BFBC7DF3A988B98725DA30B66D54C61B222AC7 + 1CD3E209BBF9CD6379A4201FD531C8B206F2AC66FDE3C91E72813B8421045D08 + 214752373322B92E0724B8A4EF36894ABE96F2A2A7FCEB4307EBD7C00216A37D + E564075210831550E128D7334F11570AB55D06A0973185A94C376B1745D4E789 + 3855CB00764A8A9E32B332CE0C80FC0EE1154B388C6C8B1AC31FE2671ACF3EA2 + A90084AA008F61536B8C010E1028831B54914074220E1D6BB81BC724E8B83DAE + 6113EAD01C5A3B47DDB2766EBA94ABAE21457001165481011B80C0CB4C485E0C + 48C175C7CA590F3A004A87368FA3B973A8F27CE75EE139EFA37FB5EFF34069D1 + DF7D140AF2854207FF6C7083DA9C743C4454296575E994A74CA86AE1DBAC4C59 + EBA6BF45CE98A375476997F9D3D402F32B80D314C0069600323200A69E45179C + 20A5DB34C6891101B0D3077E5B876D3408AB7174C7271678373C32577CD33C1F + 74FB4880221BF9C8483E72AC92BCE4241BB9C94A7E329211998120EC201F1B98 + 407032425798B5CE58C551C1098090492840A1CCEFBD9D9A9B0705256852CD6D + 7EB3261D606636C379CD66CEF39BF3ACE735D319CF727ED69D5FD9581E10C296 + 9255F0828D1899F684616D128E344DA579619D6A3899CBFC2250572B4D87CDAB + 9CC16854FCD4C45A7C8065982BEE668BF556C6695A630009006E8D857BD5FD0D + 23149A388357DD79FF9A77F6C3B9EA08F600D04AECB4165BCA952B7221717401 + 455A600D6538C0AF84151C9899410A66A8240954B0B340A779AF77DEF39FBD2D + E834DBD9CE75C6339FD34DEE76971BC03668EC0EB2D0B4947E6BD1B9949AA3DF + 23E97E3FEE890DF8C3A82AB6610EB9B10C0350ADD5C072285E70AA0E1F50AD2D + 0A55E153DB94C5B95DB585C4729619D7A1C61008B9380EB8BF12B5C3ABCB0D6B + AA2EE12E75A463D84886B29367DE6499CF5CD9373FF28D3290011650A10B5748 + 801BBE3057837EE117DA36C10F68904934A359CF746EBAB8A7BEEEAA5B5DDD57 + BFDDB8FBCCE6A7A71B07F16E010CB610D9A7E17BA596BD442FC945617FD3945F + 37E5EA6879BACC31FF1C7C0C5DE0345FC6E606A49078B616B045DB7B6DDBDB62 + 5CE3927A71BBB2010790873CB8C3F586AD3921C7526893B9BF6E6D1CDA20F097 + BB3CBA99C379B28F2D7ACBE1BCF43547B6E90542659FDB4F0E5A28EF46BCFCE5 + 231D61787F3E3399751FF5DDC3D9EB6676BA9C9DCEFBA9F7DECFBA07F4EF7D3F + 6791DE60054C40A9D9CF7EF6EEEDA3ED6E97293E363F2A6426332A99CADF52DA + 90262B1035400083D019EE96F9499B9A12863F63C6113F8D3935828F0970FCE3 + 836BC555308AF2F4707979F46B2183169A206CC296730AB8800CD88046D6046C + 750701100620740018A007741524C0B1054C80333FD05064E600517766243882 + 4D5782C9878226B8FF7B27B88226A8822C58822C1883BD678222150337D00264 + 471E89766FD48776BBE408CB957D9216329C974C01F707A5D000E10718E3F768 + F9D22FE8173004935C13686A9BF54EF0177FF3477FCDC071153463C0250E65F0 + 78B3365CDD20460AE428B40556F0F41546C8559DB00E09E8804E66737698874D + 003A11910521900563700018182CBDE1653E401C79153B22C88222D888357866 + 22C87B9058838BD8888C688951E7888D98678E28892DA88999F867DB610239C0 + 04470726D3F783F8C63D68C2694448537012634CE8167C247E09407EE4C2701F + 900A4715262D9544DA274C2A760CF2E7855FB846966027D9007264B87FFCC70D + 035307FD138029F7FF63F832551B708008588704800246E68D49068E37278E47 + 268EE4F88DE8188E315700B321115910077CE0051708245D2605ADC304E9A533 + 21088AFCD88FFEF88F001989A1289001098A67D6013F600224D0023EF00BB7E4 + 83AA487D4AF58AFD9608751270A6F05CB6888BF9B27770F30B25B740DF379112 + 46785B488C88618CCA2084C998298DC77FE2E08C90E7066E508605D34E60658D + 202664DB888079F893409973E0B8731740063BE00471151C91D41BE6F50B5B60 + 2C316002C7E18FFBE888558989A0B88F57999558D9749538895CC9956706760A + A98307906010199140C81EDD338414A97D4F940CBE952807300125E63DB0C070 + 6BF09175392297A6FF4CEE51914BC554B8A59262510D2E590764D88CCEB89871 + 849398A7479A670D9ED793C1D68D98E98D9A898E9B59649BF9999C999998E999 + A2D999A5799A10D87359005E13803A0625243E602C24F0043F700435E000B799 + 9BB8D988B72982BAD98FBA199CBBD99BC3B99BBEC99BFC289CCA699CBC09053D + A0020B69060FA9961119190FD67E6F0987E8D2176300317509070DE0229DD570 + 7D674D045331A370308C538483797114E254ABA67817F636B3E698321993D864 + 186BE76BFA205405988D96B98DA4099A043A9A060A9AA439A0079A8E0B9AA0A2 + E94F5A7205DF7506B9E1078F645030C38137B35047E088C4099C0519A222EA8F + 1F8A9CA0789B4760FF0231D00258606FD4A98A65723097558DD909329BC777E1 + 3006E1998B21B3017C3930709061D7C02207A34D1E138C29E69E67D4628F6153 + 32166B30598632B97F9E220F07C331031853AE2577019A8005FAA5A709A6621A + A6644AA006101BA1C302F6F3077520421788A1BAF13A2420014A529CCB79A776 + 9AA778BAA77ADAA77CDA0329F0043A480693F5A28B16A3ACD88AD8992A8CBAA8 + 7F8329BF550E6D80978710327F207482210C42EA1FA5D0525FA5458D7A6AC358 + 98DFC49288B98C8A699F530A0155BA38599A79FC524139D5A5021A9A605A8E65 + 4AA6B8EAA0B71AA688740158700757D005141A33BDB111AC738FF9C874BF99A7 + C7F9ACCC499CD26AFFA27E4AADC209ADD38AAD0E80038C151474D05386FAA2AC + 088C5F1199036891D6C0225D40A91679A9D1060CE5317789C3530D560FEBE97E + 491A7F29E94D65848D63907F221793AB1A7270A0191F500C581A9942D52FD9F8 + 09B4EA939F8902121BB1043AB1167BB1129B9919AB991BABB1183BB1DDF8B104 + 201BD07707F9F0015A705E453724C0C11BE9650364769B49E000495003367BB3 + 385B03339BB3344BB337BBB33A9BB3426BB3335BB3439BB3407BB447CBAD4011 + 048A16AED49776FBC96F84F73139991A7CA10C14305414D000630018E6347788 + A34EA1420A453A09FC063259A3622BD685097398AEB606F813A5523AB0E43000 + 56481A6E3841FAC0FFB0DB5899013AA6829BAB835BB861EA8D28C30271B0031B + 50072F438F32F3115AF0053793333FD0013C7BB3B869B39BAB9C38DBB97EFAB9 + 9A7BA7425BADA37BB34AC0582D10046909B5AA98A86E59AEAFAA47DB84594CD4 + 0603E09D1022B6C775229CAA4CD6C776A18A6A6D0B9F6F2B9FAF3686AA3AA59E + A2191AA3B70A5BA97502A00FDB931B8BB1217BB1D99BBD1FABBD202BB2DFDBBD + D80BB2ACC28E2B00036410320940747390815E96501A000279F5039DABB4F67B + BFF89BBFFA8BBFDCBAA24EEBBA50CB4B1134BBE70A16BF566A5D300010101810 + 220FEA9338E8F04066BB6FDF23BBA21A09A44A2942384D32F65B513AB08F4722 + F280B039892AA9D1FF2FA352BDD6BBBDE1CBB115EBC22C7CBD30FCBD1E1BC333 + ECB17BA803E7CB0259D0066FA005D3568FD87600AF439B1D5ABAA79B9B9C7BBF + A03BB44DBCC450ACC452FCC44AAB04CF190355560A405815004C266C2984036C + AED678A47DEBB5DED9970E4C47EAC419F082695758C1B525AA84D9547CF362F3 + 09B01FBCAA1F47227244C2620C870C0BB82A1C6CE25BC8867CC8889CC8DDCB01 + 286048B3110454100774000152D0BE1988015F2030724AA7F5BBBF44EBC9A01C + CA463BB480BAA249936F4AA84C8DD6C5E9619DD719AA55BBB756AB0897B020E5 + 89C66033B6BEEB193BB64080597ED83798A8C64D6E5B7FF601453416B075ABC7 + 095022791BCB1174FF17218329DA38C808A8C816CBBDD8BCCDDCACBDEC18113B + D00574A005917BACBCE107F8882C0D15CAECDCCEEEFCB9CF4902191005F98638 + DFC7CA47647D624CC0F4D1080A823F82B33F1473311603C19C219256E14E59B8 + B6C384924BBA18AD168600BB98CB2C931F572278CB7EB3FB38282CC8D6AC0E28 + 9007E22BD2164BD2217DB18C2CD22A7DD2129BD228E0D230CDD227BDD28C5CD2 + 337DD3138B3246C9007F500652004916EA1B7E606DF08B3329D00348ABB435BB + D441CBD44C8DB34FFDB34D3DD551FDC94E4DD553ADB9579C0164B03D9C971660 + 73CFABCCCA52E3606D59C2FB1CC770C279BB6819F1BA40635BD0E770D0443A21 + 6B87AF17ACAF0F0DFF4E73C246EC33D1CB6BD155CA636FAC72E732BD1EFDD103 + D0CD236DC826FDD8136BD2D80CD917DB04A9C9023B4081724588E6655EF64849 + 2461023DD0C9417BB4559DD5EFECCEA36CD53500A824700141A0C5ADCCD6F130 + 5A7C32D6F82C158DA6CFFC7C2A4B755B67F0AE9A0AD705AD22BCAC279DAA54ED + 6792277978E0B44641D63EF5C998764B2275A35C594A5317860D8A6DBD22CDC8 + 319D077990D2E37DD32BFDDDE26DDE27CD01E90DD3EDBDDEEAEDD2E27DDEE58D + DE8CEC10DC15047440058118C40665065B7088A17DB9B8B9D44970D5079EE007 + DED40A8ED508EEE00BFEE012AEB3114EE1095E0338009D2CDA6054011539156B + 053BD0F79CDB5E2CFFA353CB9FB2BCB787D0321320D0E859DCA1B2CB6003987D + 7DA4A6D69E5CB892CEC071CAD82181CDBC0930D01A3DCB7CCB70ECD3DD014AD3 + 370DDE2FFDD2E97DDE4BFEDE2B1DD2F21DD2F50DDF50FEDD560EE5ECADE4226D + 48371011B080B2D3A611BE616D2A2B03790506F42BD59FCCDAA31CE76E5EDA58 + FDE6747ED5762EE770DED44A90E1587C0763E2E18C57B09AD11FA55515AD1BAE + 9665D7D5D8DB7A44016E63DBEAB453300EC111CCA98FD28AB09CAFA9967168C2 + 0898B28C740BC27B5C302897DDA9224F5C8AE408D8DEF53DDEB0CEDEB2BEE5B4 + 3EDFE3CD01E0FDE4B03EDF56DEE5E28DEBBAAED2AFFEEBAE4EDEC28EEB2F30B2 + 55460538550729FBFFA65D061222511212000634E0E0165EE1138EE00DBEEDD9 + EEED067EE10A7EE0FDBBBAB3AD0B204EE8CD5C38DF1719243E15AE2C809877E3 + BE0D63C5D4CB956EDC119C31A5B092DEE3DB79DDE93A5E46D3FB36CA0CC266D8 + CC75530F5868D86B8A0EACDE93BE9EEB14FFD2C04EECBFEEE413AFF1F32DEBBB + 5EDE138FEB1AEFE4F61DEB23EFF1BF0EEC2870482BD0738DF001F2A83A9D4D2C + 7E7033464D034A00EED82EE1E3FEE0506DE13B7FE7DACEE7192ECF800EEF9C97 + 0D20FE71A52E0F87FEEE5221B5583AC0F45EF599274F7BF207BD8B221633D70E + 3B774808BCF24E7801EFD067CD176EA3BCD4ADC777BB400C8FEA6235637318F1 + 0888EBC0EEF1B26EFFF77ABFF7B17EF77BCFF779FFF7767FEB82AFF77D8FF785 + 9F076240004D0011C2DA066730014407B9C2C23AE865D43D000544DBF3DFDEF3 + 9EFFF9A0DFF9E32EFAA2EFF945CF0441C0E15081EE844EE8CD1BE49EC022EC81 + DBB9CD3D674DE4568F855F314DC9D0054C880E94DEF5BC0C2F87AEDCB8BF856D + CB928B40553EBEF6F7C9AA412E1A8129CB5A8A09AB4EF7C266F7270FF27F7FF8 + 847FF8776FF281FFF71AEFF783AFFD814FF8DD8FEC2B2F025A72073B4007BEF2 + A6C2E207AC53332231E034CBF9A00F084982493584838583898A8B8C8685888C + 8F87893D2A2417416D9A5D6D7F67090970A2A3A3A109031F1B0D9B9AADAEAFB0 + B1B2B15D01711461FF0C160CBCBDBEBFC0BD616114017F1F671F1F6BCCCDCECE + CAD1CA6B1B7F6DB6B9BADABBBB0CC3C314E1E2E371011B63751065EB10EDEEEF + EE750963677F0114BEDCDBBA16FD0CC61F06081C48B0A0C1830539285CC870E1 + 0B0E0F1F369CE810224585122B4E8C6831E3468D142312687243C4053201EA68 + 31230583CB97307D6CF1A38184891E881E30D2298867129F8D80EE1CDAA8E720 + A1917A98B891E10E2B4FA14891AA5347D4BC33D4FE345835ABABD7595CBBC4B9 + 352C985960FA18946BF0A7ED8635D39E3D93966C9A2AB1B8B6F9EBE6ED9B5F0A + 63396D180047DDBA32F012533DB5C61EBE7DFAFA49F616A041C03108336B2EF8 + 220F45CF10F3741EFF3D113407D3A14F2F342D5A616BD5AE4F8F16FD9A7567D5 + B457AF9648C040C90B777804B852C68C1E3F7E5CFAC0B0DCCC812F7364D80483 + 0352D1EB44B16B5F84B4E803253F4CE4C072A50D27A851A5AA0785799956F35D + 387D9D3FBF96AD5BBDF89EFDA58F58B9005D1C938C5C7249230D350DE0958B64 + 0CEE574E1B1B7C30061CE91C865862F1C833C6070DDCC34B647A4D56CC1F6B9C + B1D9899B75A422472CAEE8E20B30BE28634430C6D8E28D33E6D8190A05307552 + 171B40F0854BC9C184C11766F8E0470B3990F0437535E824E54F544E69659558 + 5EA965965C6EE965964A1CB1D4165150D1C927EAA549CA551FBC47DF9B6FD642 + D67E740213461C10FFC645203406D6D5581B7332E88F361FF2528C656324908E + 61182A764A9B1E122AA9A00C5010A08928668A5044AD714ADA6C9F762AAAA72B + 8E4A1B8BA7A61A2AA8A6AE9A2A07248990010C745001C70466C4F49214CE7DC1 + 444D1250A7445047156B1477C652795D77C41EABEC4FE089D7D499A0A8291555 + 55B1875535ABC4271F9CE0BA62DF2DB864536730DDDCD945036F19B8679F670C + 688D2D79F163811593ED420C408A1A7658A3F1C0718A2A9182C80D83EA463800 + 669A363C508D10472CF1C414576CF1C518675C711E06F8B6020B6AADE1851E18 + 140913AF5FF8300708364930EC9730772973CC34CF5C65B4375C400754D6F66C + 0A668D25E86DB844FF6F621F36E7D2094E65C8D4B5CC9ECD44136F2ADDD2FBA1 + 152184802F2F7732DDAFBFEC00BC182A1D3E66B0BDFEE0B901A60EB73D008E70 + EB38A38D72C76D374474DF4D230A3ACC7AC7151BA894AB72CC31C76B924C3EA1 + C29389F8E478B1533A7BA5E4C93E4EF99692473B1E1D9FA4D7B37A55098C8A2A + 5B156D7A2B72D69B34BA9491484DD450478D8C32D55893BA2E585B51E9836B53 + 0876D88D667B862A718471F6C192DDD9C61A0BBBEDB6C6D0472FFDF4D47746C0 + 084C051107031F1C80C17126632005AF4A6A00C21326FCD083510FB49FA5FB56 + C25FA5FC52C26F7FFDF8CF7CFF4FF0E3A094064140D3E7D44415ABB4272BDD8A + CFE9C035AE72AD0EFF2D6A09007C1A5022A741CD5DCCE0562DF061057C85A132 + C79850852C742180896E0380CA065F5688300996A879CE7358F56648C31A422F + 0F622840DF8240053A4401572E21D9AE306006C469A04912585FE5B0C43E9B5D + CE66316BE2E4A0F5831868000B021BE0E74C71953F0D6D81708A4F00E865AE07 + 0A231CFBF284052F68A068FCC94316B8D33106A0A845FD0B60ED18DB1A525828 + 8335084F2F8CE1F320868717446062878451220D59A34316F2909044E40B0A09 + 3147466C9130A2642323F6C84932529192ECA4239B30821530210864A043190E + D01221EEEA0B4862021390688397BD4F4BFB6B5FFEE2B7CB5CE6727EBBBC5978 + C6632D5368B18070FFA0472ADAC2153032905EE52AE303BBA1B60D589319072A + 90D4A686A06B006830BE031B1E03968054A4F078688B2320CF3006CCC44B909A + A218263F79494646F29E929C67242B29498BE1139FFCFCE7439AD00459D16A00 + 103840920AB79C868ACF0CB39C0E0EA048D19A59B4A25D52420F62D08220A409 + 14201D203205E6CE6E7ED1995E116339C825CDD5E9EB3F1214D01AB539BBA751 + E32DECF41D094B283681D5432C2A840C3FF0A54E089988616C83E7890C190148 + 36B5A9F684EA53997ACFA74E55A057B5271EEEB955AADAD3AB55B5AA58AD0A56 + AA5A15054DD0C10A30F1870DC0E10B7A2059F89893B23934C90412A84194F8A7 + CBBEFAF5AF800DACFF60074BD8C026E10724584119D2D4CE44794E8B06A49A02 + 511AA706B6F48165515E05F5442037466D61A1B0A385C6E98E64A602A8854A6D + 3A3F48C1A42AB561586564274529DBAFE273B6B6CDAD256FABDBDAC656A0B4BD + E7484A9281206C2501B034524BC617CB1668E00936A8C1B080D957BE5617B07C + B5AE2EB3BB5DEC76D797F8C301625B3052920AC4B159146901BBC8CC6652162C + 9B1823192F7B2E6E288F99EDCA2636399B53D19290B455D9D01F808ACEC954AA + 32256AE700DEF9DA4C3575AB0FBEEA56271C010857F8AA1196AA54BB8A61AE5E + 98AA160E71562F9C61129BD8C2207E6A575180BD0C60219575F042AE8EA35C58 + 1E804978ED010EF0FF57D81EFBF8C74056820472C00437AC89610B6B67B5445A + 0A36A9023E937DAF2CC4781FD599B11780B18504D7B660CEC2652E741CE16801 + 6CDA0117AF8F90B9D72EE210A04036B86D61DDB08A9D4A67437258CE510D6B6F + 3F3C56AC4638CF56BDF33FA56AC83CA075042EE60115A2E0BD2239747C664899 + 7349F0841F4C17C898CEB4A675191E531E395E6C432F643F1D342987918C5736 + 0B6BBFDCD9665C134DEDB82399C7D0186C1478326A0BC89B9DD7E75EFBFAD7C0 + 0EB6B0874DEC5FCF200233B8DE0A66150532243488467289737C9038F53960D3 + D8CE3661C3A3812D84EE2AA0C6949297AC5EF32E835B4633F52B9AD94007A65A + 1B87DA0ABBDAE86AFF9C8A9051A46D8769CB969F7E7F08D74012B7405CBB6BCD + CCB9D8084FB8C2175EEC421254042DC00215E2308003808F702D89B419E6C0A4 + E9F052DB20DFB41252F08415789BA4E12EC8B8476D156D510DCAEA9EB29CEE41 + DFD5F9672C4C9B9A9E5E3DA15803AFA702B6B5500FB6353CCDB1E0BC6EEAB197 + FE54A63BBDE95067BAD2914DF5A93FFDD8569F01D6A97E75AE437DEA56F7FAD3 + C33EF63C10E0377738031C14BA9C92C1842510FD550ED237D1C20A00B0776F5F + DE1FB0F7BEEBD2EF7FDD7B6001FF1D0970740B2867F082417DDEC71E93A4EE71 + 6FCCA73C46B294E5DD586E338178AED39F6328C06BE0F7ADD39627A4C790C452 + 8770D72B8C75D507FF5AE97858BAEBADDA7AD9B79EEC5C8F3DB2552FE2AA47BD + EABA1F7BEE59DC379DD1610CDE23D2A3A5F085036CA105E7BB8912424E7D6C8F + 9CA3580037A6C21DEA901EF3DB077C32CC27DF86B0547E2C5636E34B25A80912 + D9C5DE5FF33C3C02CC21380E1D77450FB8E94FAFF5FE8BFDFF5DE77F4ED77F01 + 886C5AC77507388004B8800948800028760EB88008C88048C062117705575007 + 2C116D43C4049376133840787737827FC7772648827A77822A488228B88225C8 + 822698827787031240022DE00651C0789BA1642CD764A39340DF427EE25279E9 + 7765C4100E6A132F379560E1247FEFB06F34A75A2CD44116906BFB174302D880 + 4BA7850678755C28FF815E08860938815DC8805FF8856408865DB886FD474AA6 + 645C01B07652801CD19624D4561395A65DDA26782A587D80A5143980093A6810 + 29075AD5E27804240AF48020A52384AE607E96777957665F6AF30CEC5447F8A6 + 18C9B44701B02043D7206A615457888566588AA6788AA8988AAAB88AACD88AFE + 875637B0023010075700075AD0121CC82B52E08194F62432E88230188CC0388C + C2588CC4C8771A251E4C908304377083B87288D833EE1479E3E788E6215F73F2 + 6EDD9065F3A60CFDE5733C95479B780DF850601D7460F3D68CA38822AED88EEE + F88EF0188F04880704D0373010047750076EF005B858382EC17C07406D39F004 + 499404D3E78731E8FF6307A969E01103E3A1789A9228E9356AA6F083F0618DAF + 903A35875900B10C974815FE327F9BD8219EE847FDE041000191EBD83033B000 + 2DF9922E199330399332599334799336999338B9933AD9933CF9933EB9007820 + 06C485059CE3062D31570FA524B354693D608C50798C51399552898C55D40203 + 100527C27D47855ED1782DEBB588A483919A503A72C25292786596226F6B137F + 3F571503C089E6B242FFE60F1FE4092B2948042893A7E8927BF9925AC7978039 + 98813993A528987E698A89998A36599882F9978BF99262D0622F7606CFE64AFE + 78245E80014824014340582D18782E98827D159A55298CBA448344560728C27D + 03316E5FA926F3B0FF60267552424865E8B7914AB3526CB60609E00E6F090771 + 498EF72719E738226E96976D03930B109440D992CDF99C31199DCE599DCC699D + 41499D34A99D31190162E0865B4006573006D021572713692A030203E9322F78 + 9AEE4995F0B9823D30644C004F2BD783903796649991A886791F12077FE096A5 + 358E67763C82F2416BA38ECA8922D8299D0EDAA010FAA0128A9D5BE586C04106 + 75905C6E5738CC654404890307D977211AA27F37A2A49990225882279AA2A4A9 + 142BE0060EE39A8638913D832D28776E6E126593677ED09496F5A50D008A0E8B + 1230C359A09F381977A96B0BEA3CD7D99CDC499D4EDA934F1AA53949A53539A5 + D7B99D4EDAA456BAFFA5D349A55C0AA5D39906CD3912100703E22924177732CF + F105CE853E96169F72FA9E743A823FF0043718A32A799F14399B58F11EB6799B + 6759844983A0842192B4C64752F86F547897C9B9A40EE3A5560A9D602AA95F4A + A95D7AA95D4AA99C6AA951DAA962FAA99B3AAA934AAA32C93719C0025D400632 + 6624CBD1120DB524BDA804735AAB755A954A7109ACE93C29C783B1F9518F826E + FB893A63844698B516CC134E10A0887BB43DC579A0C6A0A090CAA0996AA51550 + ADD87AADD81AA5DABAADDE9AADDFDA9CDD1AAED54A8FB178012C602910601C6B + FA8F3EF00534D18B3DF08BC528002368AF7C87AFF61A8CFADAAFF7FAAFF90AB0 + FB8A8C43201E58C0FFAB85D858E456A3EBC526A5568DB7797EC6BA9B08860CBF + B90E70B906A865A0220210D32A485F4AAE223BB2245BB2267BB243D923177005 + 0CF007C5D18F0DE5039136131D27013F40AFB76AAB3AFB005759075AF9663CC8 + 725CB4214F16A8824A841BA92E24026A8A82B1B4D60579C1B1A41721D2FAB19B + B100D74AA6598BB55C7BAD5EDBB560FBB562CBB55A0BB6653BB6681BB66A9BB6 + 637BB66B4BB670BBB56DABB664BA0024E16264C0078243246F57443E10514934 + 7D033BB8FEBAAF862BB0877BB8011BB089EBAF8C2B00AAD9513F1B43096B4C90 + 153AC9F4A76E32ACD78896D204180172190B36218AB801504B977D64608064B5 + F024AE4EDAAD63EBFFBAB2CBB5B30BBBAF7BBBB58BBBB4BBBBB1CBBBBA6BBB5F + 9BBBC2EBBBC38B046E8805787206B7F812CB5744BF4202368BB33B3BBDA7C96D + 5B7007F05488497688E56640C9500D46138411BB5256560C9D909C534330466A + 92FD702714A4A4ACEB366FCBB6F35BBFF47BBFF69BBFF8BBBFFA6BBF78D00419 + 700163F01642C2B7E1935C2C63B320DAB88F5BB884ABB80CFCC00DDCB8F84A04 + 771A7157E858BFBA1EECC5B9A8A391861207E958106DB24141C5BE6BD606F01B + BF6EC3BF2EDCBF2F1CC3303CC3329CB6765B4A4CC0023B10076A4A38AF6A065B + F0B747F40429D003B4BA828ECB8249BCC488DBC48B3BB84A50B04CB1ABAFE59A + D0F87D56313ACCE4FFC1830A18AD0543030129E5B81769866BCB03C62CDC3658 + 5B015ECBC66BDCC670CCC66E2CC76F5CC7747CC7729CC778ACC7763CC77E1CC7 + 7B9CC77D0CC76F2CC87AFCC787ECC60BF09D10770701C00765C08F6EE7683EC0 + 7C662003EB19A714BCC99CDCC99EFCC9051B886F26A3DBBBB0D682B97EFA72DE + 22BE93773495A13007B10C1DC20F93622F45B73C559BC69B51C376DCB5730CC3 + 7F1CB6BFECB56980B6C38CB5C54CC3C77CC734FCC6E62A8B77400772C8811870 + 005E7063431CA74FECC04CBCCD4E2CC1E0ACAF166C456540C5196CCA90D5C11E + 5C7EEE97194A78BA648C3CA4B7C2BADC36897CCFF89CCFFABCCFFCDCCFFEFCCF + 007DCF8B7CAE2C40FF0709B581D1A68B1C37909AFCC90EFDD010BDAF43508318 + 5C7032EA95DF972DED21ACE6618D6C41B59BF1018072A42F75C64856CFF61CD0 + 2ABDD22CDDD22E0DD048409426710761B00375E03DE65938332B903160B3FF1A + D1401DD486DB695B607ADA5BCA3DC81E5A0CB131F7D1C8A019F4D00071902FAB + 25C28F8AD20EA3C71E20C75B9DC75BDDD5158006892CD6F90CD6665D015B4DD6 + 689DC8602DD6607DC86DCDD56B7DD66C7CD65F2DD7753DD7727DD779DDD761BD + 001170B730B0037FF0562F6132322BB3186057D0FB034420D4900DD9DC76B0A3 + A878182DB48BB8B98EC82E574D10F4F007CE9A4EBB3022F48CD559FDD26BDDCF + 6F8DD7F8BCDA65CDFFD6FAECDAFCBC04AC7DD7749DDA797CB727710567E00543 + 92D0CCB70572F7A1B41AD9C6EDD04460782D000127BD6B17ADC1344A401ADD65 + C2AAA3EFD5564F9D1998B1019D28DA112420CD6DDA0DA3D7B64DDEE65DDEE87D + DEE4ED01E9DDDEEAEDDEF0FDDEF28DDE1E8006EC3DDF68ED016920066260123B + C0006B3001524063E79924C32D018F6DAF42B0AF0BAEE00CFEE00E1EE102D0E0 + 130EE1152EE1149EE10230D124C004C27985CD286A14696E45CBCA28C5D9D24A + 0F2854A0446501967274E21D43E5EDD7768DDBEE4DE37B2DDF38BEE3E69DD77C + 8DDF330EE47AEDE336BED71E40006B259E7470D3FD98993EF0E46FCA9EC73DE5 + 9CAC043860020094FF97176DB958CC5E8D686A28BE197F7A0F27B96601A76031 + EE3CECBDE66CCEE6F6DDE6701EE772BEE6F93DE76D6EDF62FDE671EED676DEE7 + 7EFEE7807EE76B8E063340942B1004571007DD036D4324054F8EC90499E015BE + E01A4EE9937EE996EEE0969EE917DEE9955EE188559F2B49CA57FC390D5B52E0 + BBCA278E5327B20C6DC041BAC3660A83E669DE36747EEBF7FDD56C5EE7409EEB + 73EDEBF41DECBC7EEBF39DEBC6AEEBC8FEDEC75EE7BB4EECC96EDB317D0317B8 + 0351B0BC98F9E41A2703E7E399C54DE5DE6EB8FF73BDE1BDA012899FA1A0E209 + 4459612EE66D32D5F862295C56EB8214E8F45EEFF67EEFF89EEFFA5EDF683099 + 817807543000CB9BFF1C075C57D1370409FEE99B8EE90CAFE99ECEF00BEFF002 + 30D993ABE53A08DD1B4C210524965A2179A6B3EE27B206DDFDE212E24EB92CEF + 06B1EF2ABFF22CDFF22CBF002A4012E84A0510B0120E75F3527000F16A0243D0 + ED92FEED869BF00F9DDC9750F1A33E88DB1BDD896840B459E2264E1F201FD280 + 22EBD93D7028EF301E500259BFF5F6ADF55E8F065EBFF5613FF6622FF625F0F5 + 649FF6653FF667BFF66EAFF670FFF6721FF75ADFF5737FF7FA6DBCD983816F35 + 871BFA3DCCF705DA4E699FE9F00B7FF8109FF888BFF8973E04786AF4D32A6E22 + 2EB416F9F450CFEAAD690DA278F5F3EEF6EC4DF69F2FF7A11FFA745FF670AEF5 + 6C1EF6A4EFF9AC8FFFFAADBFE6A0BFF5A32FFBB4AFE7AE1FFBAABFE67A9F686D + F006ADEAAA1AB72403D9F386AFF8C6CFF8C80FF1C96D72906FF1BD7AD9A61E96 + A8D04D4513F59AF1BDB36EF59C8FF55EDFF6630FF6737FF6DE0FFE69EFFD590F + F6E6FFFD6C5FFE2500F6E8BFFEE12FFE6FFFFE674FFE77DFFE709FFE72BFDF38 + 0C08645D036E5F18187E8888665F5F3E2D244F434A4202959796999742989D9A + 9F9EA1A09902124F1A5803AAABACADAEAFB0B167B3AD6363090970BABBBCBDBC + B8036B0D6DC4C5C6C7C70D1B6B67B1AE671F1FCDCED4D5D6D7D8B0251EDBDDDC + DFDEE1E0E3E2E5E4E7E6E9E8DC25EAEEECEFF1EBF215624D2B1759716B135289 + 7A3E0E613023C550FF8B1C4F7E0858288408C385A344617A288AA22587A0880C + 9140E2C2986C20B3CD9A762B97AF93BD12046BD005994B64CA98859C49B3A6CD + 55F0DAE9DCA93327CF9F3B7DB6130AB4A8D1A34089225D6A5429539D0AD2DC63 + 42264E17088E30E81198A8A09939087F1091688953D94D684199E5146AAD26B7 + 434CE42813E5A6DD91B406D8C26512651D5D093E7ED8C0B24BCB9788634EA3B6 + 785563BB9023AF0AD70E4DCF1296E171B35C19B367CEE5867ADEDC4D3468D33C + 2D671E7D79B56870AA75828E1D5BF3E7A4A55BA7060ADADE0D265400C41970C0 + DF568152186138F84482C288D0C94A8F9E51420E264124DBCCCBAA24CA5D63CE + 10EE12A07C80C388FF5D2AD6CEBE7DB6A7F0E3CB9F4FBFBEFDFA69C4FCE69185 + 0221337E249208063E980120130839E750276BB1C5D659103E286183694DC8D6 + 0F2668B0857B35E1D5CC5E70F40558786BFCD1451C148411471CE7A5F7D27A1C + C628E364A7C966E34FA0D9E6136CB97516946738DE98DB6CA1F104CE513BB206 + 0F9147EEE6A393A9E9D7020B6184B1070452084420065214F485063990608204 + 435037DD9911B9750911449840021375CC28125EABEC95CB9D2B918762952CB6 + E8224CCB3C26E7A09095A080A188B673E8A13B2D9A28543C395A94A394425AE9 + A59622CA68A49A72BAE94F923EAA68A79B621AEAA7A4768AC40D2D904181050D + B86186565A1E2205FF0820842981040B3AE8EBAFC0062BECB00DFD704A2A84DE + 5452606B9C48C18A1444DB277A7F160363B2D8DA5469A340853AAAA9A266EA6D + AA98723B6EA99D7E1BAEB9DDA6CBA9BAA8B20B2F1A52DE1186707548A1C7715A + E29A6B826556486184035B48B0C0976C745D1D1F655B8D87AAD812DE1F7130C0 + 4095613C3B6DB5C904EAF0C721912B32B8248F6C72C9289FAC72CA2CAF7CF212 + FAAD1004030074518621030AE4EFBFCD0D3116B140072DF40F12685817C8CED0 + C9CA070D0410C6C5D16ACC22B51C5F8BF4D5B12880C6A29C695D6EAAF08AACE8 + D68F6E5B36A4F38E3AF6A55D934B36BA6A9B1CB7D9E8B2CD76CC30EC90451751 + 14B765403BCB90EBFF13098D75968307276EF0E2BF0A40044717C489F535B308 + B367D41A974775B5564FEEB92A0A842EFAE8A4976EFAE9A8A7AEFAEAACB7EEFA + EBB0B38E061731A0B2030014D4F1853F3AEFCC3399870B2DFCF044FC503B1C9F + 3306CD1A6D049022E62B6ACEB1319D278FF42CB12F1ABAA6A593BABDF6A8738F + 72F7A68BFFFDEBE65F4AFEE8DE83CFBEE8E92BC0451322E43D45006F6861C671 + BE8320380891F0195A1007AC8311904207DC44F132842CEBC1A2720DB85CD4A2 + E7A7E9B5A17A0ECCD6484487000E9AAE83AD0321E944383A1192307BAF3B61E8 + 54A80016A2F0851F64DFFC6E70012A848001C4A155FF7616C0E00DEF87C26213 + 47E074B40CB20282FFCECBD804A3B7B93F61D08884A2050CA748C52A5A11755B + BBA2EA66D7041AF2C00914F880160EB14310CC4106609284E180C84661190F15 + 512003141D7306CB3D6F89D2B3E0053D36C76441CC831D0C24205B4848411AB2 + 90883CA42209793A419630918C1C212417F9C8455A7292923421264F78493074 + 31032CB0D81AB4F0851DCA40067368810C22219636BAF257C5AB5D1D54D24724 + DE515A1BD3E313FBE81E0F8D21759A5CA1072BB9C94C42B29191142627597749 + 625E5293941C66323149CC472EA18B176041161870860994F1946794014202F6 + CA720A81682B7043C3E6084109E2328F16DC252F2543A75BC061930878663E0B + B94F43E6F39FFE04FFA8402709507EFE9383FDC4A7400B1AC88532B485FD74E8 + 411B4A51832ED4A20145C035479081203821046D38E50ECF388733B2F267E66C + 63F14880857542D1964AC4E5D4F4B84799CC534623D10B1CEAE0064329F398C5 + 7464249F19D462FEF490472D2A5185BA54A53A95A830BB070CAAC000299CD177 + E09C831FCE08B094AA940824D8C21D78D9CE5B66AE82D393E74DEFF2213840C0 + 0D5A50C11214D00789DAF5AE19C5AB5E2F4A51896274AF800D2844034BD8C222 + 607E2BC0020F0C74D5C0A1720EFB5A654286E05536B6A9050D7C691D9B66560A + 36D1456A5DEB4CE8948BB76AE100311083A1F27A578CFEB5A28A4CA85D13D9DA + BE1A96B5B01DEC43FF6D7BDB81F25601F6C0C7160EF085C6FAEFB125C5C01CD2 + D8CACA12EF141728A211CB1AD3B37E363DA1152D48723A06B7BAC10B07388006 + 622057DDF6F6BCE84DAF7AD7CB5E892256033E68841EE6E02F703E560FA70C0B + 659D2BB4956AA00CB5DC6C12A1C7449A6657BBD8A045774D1BDE032C97044DE0 + C212F06ADE88EE75B0AFB5707BCF5BE1C27678C3B3B5470E348001E22AF794C8 + 2DA98AC549821FF037686C225A0E36C4CECDBAD3BA06E62382B793D3D2C2B5C1 + E17D3079278C001714F9C8F9347292FFA9E4231BF9C94866B240A1DC64805259 + CA576EF295ADECE42E6F39CA5AF63298A73C66282F39CB588EF299BB2C3F15DC + 40034CF8C2017C405B5254DAB9A4F31567E15E1C34633121C0C218301ED15A35 + 1DEF98267859F0774F0B64071F444C5CA82B88274DE94A5B3AB02E58829BE11C + 5E82E499A42A46048B79C567620DE1092D0074043B9BCB781AFAD02151B07719 + 0DE44000003B} + ExplicitWidth = 386 + end + end + object edtPassword: TEdit + Left = 96 + Top = 132 + Width = 278 + Height = 21 + PasswordChar = '*' + TabOrder = 2 + end + object bAceptar: TButton + Left = 208 + Top = 203 + Width = 75 + Height = 25 + Caption = '&Aceptar' + Default = True + TabOrder = 3 + OnClick = bAceptarClick + end + object bCancelar: TButton + Left = 296 + Top = 203 + Width = 75 + Height = 25 + Cancel = True + Caption = '&Salir' + ModalResult = 2 + TabOrder = 4 + end + object edtUser: TEdit + Left = 96 + Top = 104 + Width = 278 + Height = 21 + TabOrder = 1 + end + object Button1: TButton + Left = 16 + Top = 203 + Width = 129 + Height = 25 + Caption = 'C&onfigurar conexi'#243'n...' + TabOrder = 5 + OnClick = ToolButton4Click + end + object Timer1: TTimer + Enabled = False + Interval = 5000 + OnTimer = Timer1Timer + Left = 344 + Top = 64 + end + object JvAppRegistryStorage1: TJvAppRegistryStorage + StorageOptions.BooleanStringTrueValues = 'TRUE, YES, Y' + StorageOptions.BooleanStringFalseValues = 'FALSE, NO, N' + StorageOptions.BooleanAsString = False + Root = 'Software\%APPL_NAME%' + SubStorages = <> + Left = 14 + Top = 168 + end + object JvFormStorage1: TJvFormStorage + AppStorage = JvAppRegistryStorage1 + AppStoragePath = '\' + Options = [] + StoredProps.Strings = ( + 'edtUser.Text' + 'edtPassword.Text') + StoredValues = < + item + Name = 'Ruta' + Value = '' + end> + Left = 48 + Top = 168 + end +end diff --git a/Source/ApplicationBase/Usuarios/Views/uEditorLogin.pas b/Source/ApplicationBase/Usuarios/Views/uEditorLogin.pas new file mode 100644 index 00000000..e1790fc8 --- /dev/null +++ b/Source/ApplicationBase/Usuarios/Views/uEditorLogin.pas @@ -0,0 +1,126 @@ +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); + private + FController : IUsuariosController; + FIntentos : Integer; + function GetController : IUsuariosController; + procedure SetController (const AValue : IUsuariosController); + published + property Controller : IUsuariosController read GetController write SetController; + end; + + +implementation + +uses + uFactuGES_App, uDataModuleConexion; + +{$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 + if Timer1.Enabled then + begin + ATimer := True; + Timer1.Enabled := False; + end; + + dmConexion.ConfigurarConexion; + + if ATimer then + Timer1.Enabled := True; +end; + +procedure TfEditorLogin.FormCreate(Sender: TObject); +begin + FIntentos := 0; +end; + +procedure TfEditorLogin.FormShow(Sender: TObject); +begin + Self.Caption := Self.Caption + ' - ' + AppFactuGES.AppVersion; + 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. diff --git a/Source/Base/Usuarios/uUsuario.dfm b/Source/ApplicationBase/Usuarios/Views/uUsuario.dfm similarity index 100% rename from Source/Base/Usuarios/uUsuario.dfm rename to Source/ApplicationBase/Usuarios/Views/uUsuario.dfm diff --git a/Source/Base/Usuarios/uUsuario.pas b/Source/ApplicationBase/Usuarios/Views/uUsuario.pas similarity index 100% rename from Source/Base/Usuarios/uUsuario.pas rename to Source/ApplicationBase/Usuarios/Views/uUsuario.pas diff --git a/Source/Base/Usuarios/uUsuarios.dfm b/Source/ApplicationBase/Usuarios/Views/uUsuarios.dfm similarity index 94% rename from Source/Base/Usuarios/uUsuarios.dfm rename to Source/ApplicationBase/Usuarios/Views/uUsuarios.dfm index eb18801a..0c3eb30f 100644 --- a/Source/Base/Usuarios/uUsuarios.dfm +++ b/Source/ApplicationBase/Usuarios/Views/uUsuarios.dfm @@ -36,7 +36,7 @@ object fUsuarios: TfUsuarios Align = alTop Caption = 'Panel de control' Font.Charset = DEFAULT_CHARSET - Font.Color = clWhite + Font.Color = clWindow Font.Height = -16 Font.Name = 'Arial' Font.Style = [fsBold] diff --git a/Source/Base/Usuarios/uUsuarios.pas b/Source/ApplicationBase/Usuarios/Views/uUsuarios.pas similarity index 94% rename from Source/Base/Usuarios/uUsuarios.pas rename to Source/ApplicationBase/Usuarios/Views/uUsuarios.pas index 3e6d9d5e..6fb22fd6 100644 --- a/Source/Base/Usuarios/uUsuarios.pas +++ b/Source/ApplicationBase/Usuarios/Views/uUsuarios.pas @@ -6,7 +6,7 @@ uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, DB, uDADataTable, dbcgrids, uDataModuleUsuarios, StdCtrls, DBCtrls, uDataModuleBase, JvExControls, JvComponent, JvNavigationPane, - Grids, DBGrids, ActnList; + Grids, DBGrids, ActnList, uDAInterfaces; type TfUsuarios = class(TForm) diff --git a/Source/ApplicationBase/Usuarios/Views/uUsuariosViewRegister.pas b/Source/ApplicationBase/Usuarios/Views/uUsuariosViewRegister.pas new file mode 100644 index 00000000..99cb4a0c --- /dev/null +++ b/Source/ApplicationBase/Usuarios/Views/uUsuariosViewRegister.pas @@ -0,0 +1,23 @@ +unit uUsuariosViewRegister; + +interface + +procedure RegisterViews; +procedure UnregisterViews; + +implementation + +uses + uEditorRegistryUtils, uEditorLogin; + +procedure RegisterViews; +begin + EditorRegistry.RegisterClass(TfEditorLogin, 'EditorLogin'); +end; + +procedure UnregisterViews; +begin + EditorRegistry.UnRegisterClass(TfEditorLogin); +end; + +end. diff --git a/Source/Base/Usuarios/Usuarios.bdsproj b/Source/ApplicationBase/_Usuarios_/Usuarios.bdsproj similarity index 100% rename from Source/Base/Usuarios/Usuarios.bdsproj rename to Source/ApplicationBase/_Usuarios_/Usuarios.bdsproj diff --git a/Source/Base/Usuarios/Usuarios.dpk b/Source/ApplicationBase/_Usuarios_/Usuarios.dpk similarity index 88% rename from Source/Base/Usuarios/Usuarios.dpk rename to Source/ApplicationBase/_Usuarios_/Usuarios.dpk index f60f5fa0..b5fa2fda 100644 --- a/Source/Base/Usuarios/Usuarios.dpk +++ b/Source/ApplicationBase/_Usuarios_/Usuarios.dpk @@ -23,15 +23,15 @@ package Usuarios; {$MINENUMSIZE 1} {$IMAGEBASE $400000} {$DESCRIPTION 'Gestión de usuarios'} -{$IMPLICITBUILD OFF} +{$IMPLICITBUILD ON} requires vcl, vcldb, - DataAbstract_D10, Base, Empresas_model, - Empresas_controller; + Empresas_controller, + JvMMD11R; contains uDataModuleUsuarios in 'uDataModuleUsuarios.pas' {dmUsuarios: TDAClientDataModule}, diff --git a/Source/ApplicationBase/_Usuarios_/Usuarios.dproj b/Source/ApplicationBase/_Usuarios_/Usuarios.dproj new file mode 100644 index 00000000..062fb034 --- /dev/null +++ b/Source/ApplicationBase/_Usuarios_/Usuarios.dproj @@ -0,0 +1,557 @@ + + + + {0e3d28a9-51af-483b-b478-472a086ee120} + Usuarios.dpk + Debug + AnyCPU + DCC32 + ..\..\..\Output\Debug\Cliente\Usuarios.bpl + + + 7.0 + False + False + 0 + 3 + .\ + .\ + .\ + ..\..\..\Output\Debug\Cliente + ..\..\Lib + ..\..\Lib;..\..\Modulos\Lib + ..\..\Lib;..\..\Modulos\Lib + ..\..\Lib;..\..\Modulos\Lib + ..\..\Lib;..\..\Modulos\Lib + RELEASE + + + 7.0 + 3 + .\ + .\ + .\ + ..\..\..\Output\Debug\Cliente + ..\..\Lib + ..\..\Lib;..\..\Modulos\Lib + ..\..\Lib;..\..\Modulos\Lib + ..\..\Lib;..\..\Modulos\Lib + ..\..\Lib;..\..\Modulos\Lib + + + Delphi.Personality + Package + +FalseTrueFalseGestión de usuariosTrueFalseFalseC:\Archivos de programa\Borland\Delphi7\Bin\TrueFalse1030FalseFalseFalseFalseFalse308212521.0.3.01.0.0.0Usuarios.dpk + + + + + MainSource + + + + + + + + +
fCambiarPassword
+
+ +
dmUsuarios
+
+ +
fLoginForm
+
+ +
fUsuario
+
+ +
fUsuarios
+
+
+
+ diff --git a/Source/ApplicationBase/_Usuarios_/Usuarios.rc b/Source/ApplicationBase/_Usuarios_/Usuarios.rc new file mode 100644 index 00000000..169f9978 --- /dev/null +++ b/Source/ApplicationBase/_Usuarios_/Usuarios.rc @@ -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 diff --git a/Source/ApplicationBase/_Usuarios_/Usuarios.res b/Source/ApplicationBase/_Usuarios_/Usuarios.res new file mode 100644 index 00000000..73fae82f Binary files /dev/null and b/Source/ApplicationBase/_Usuarios_/Usuarios.res differ diff --git a/Source/Base/Usuarios/uCambiarPassword.dfm b/Source/ApplicationBase/_Usuarios_/uCambiarPassword.dfm similarity index 100% rename from Source/Base/Usuarios/uCambiarPassword.dfm rename to Source/ApplicationBase/_Usuarios_/uCambiarPassword.dfm diff --git a/Source/Base/Usuarios/uCambiarPassword.pas b/Source/ApplicationBase/_Usuarios_/uCambiarPassword.pas similarity index 100% rename from Source/Base/Usuarios/uCambiarPassword.pas rename to Source/ApplicationBase/_Usuarios_/uCambiarPassword.pas diff --git a/Source/Base/Usuarios/uDataModuleUsuarios.dfm b/Source/ApplicationBase/_Usuarios_/uDataModuleUsuarios.dfm similarity index 52% rename from Source/Base/Usuarios/uDataModuleUsuarios.dfm rename to Source/ApplicationBase/_Usuarios_/uDataModuleUsuarios.dfm index 3b723c44..ce6d0400 100644 --- a/Source/Base/Usuarios/uDataModuleUsuarios.dfm +++ b/Source/ApplicationBase/_Usuarios_/uDataModuleUsuarios.dfm @@ -1,18 +1,11 @@ object dmUsuarios: TdmUsuarios OldCreateOrder = True OnCreate = DAClientDataModuleCreate - RemoteService = ROLoginService - Adapter = DABINAdapter - SchemaCall.MethodName = 'GetSchemaAsXML' - SchemaCall.Params = < - item - Name = 'Result' - ParamType = fResult - DataType = rtString - end> - Height = 172 + Height = 205 Width = 355 object ROLoginService: TRORemoteService + Message = dmConexion.ROMessage + Channel = dmConexion.ROChannel ServiceName = 'srvLogin' Left = 48 Top = 32 diff --git a/Source/Base/Usuarios/uDataModuleUsuarios.pas b/Source/ApplicationBase/_Usuarios_/uDataModuleUsuarios.pas similarity index 95% rename from Source/Base/Usuarios/uDataModuleUsuarios.pas rename to Source/ApplicationBase/_Usuarios_/uDataModuleUsuarios.pas index 0c01c4e2..369a5f3c 100644 --- a/Source/Base/Usuarios/uDataModuleUsuarios.pas +++ b/Source/ApplicationBase/_Usuarios_/uDataModuleUsuarios.pas @@ -6,7 +6,7 @@ uses {vcl:} SysUtils, Classes, DB, DBClient, {RemObjects:} uDAClientDataModule, uDADataTable, uDABINAdapter, uROServiceComponent, uRORemoteService, uROClient, uROBinMessage, uROWinInetHttpChannel, uDAScriptingProvider, uDACDSDataTable, - FactuGES_Intf, uIntegerListUtils, uBizEmpresas; + FactuGES_Intf, uIntegerListUtils, uBizEmpresas, uDADataStreamer; const PERFIL_ADMINISTRADORES = 'Administradores'; diff --git a/Source/Base/Usuarios/uLoginForm.dfm b/Source/ApplicationBase/_Usuarios_/uLoginForm.dfm similarity index 100% rename from Source/Base/Usuarios/uLoginForm.dfm rename to Source/ApplicationBase/_Usuarios_/uLoginForm.dfm diff --git a/Source/Base/Usuarios/uLoginForm.pas b/Source/ApplicationBase/_Usuarios_/uLoginForm.pas similarity index 100% rename from Source/Base/Usuarios/uLoginForm.pas rename to Source/ApplicationBase/_Usuarios_/uLoginForm.pas diff --git a/Source/ApplicationBase/_Usuarios_/uUsuario.dfm b/Source/ApplicationBase/_Usuarios_/uUsuario.dfm new file mode 100644 index 00000000..93fcc6e1 --- /dev/null +++ b/Source/ApplicationBase/_Usuarios_/uUsuario.dfm @@ -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 diff --git a/Source/ApplicationBase/_Usuarios_/uUsuario.pas b/Source/ApplicationBase/_Usuarios_/uUsuario.pas new file mode 100644 index 00000000..90e722c2 --- /dev/null +++ b/Source/ApplicationBase/_Usuarios_/uUsuario.pas @@ -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. diff --git a/Source/ApplicationBase/_Usuarios_/uUsuarios.dfm b/Source/ApplicationBase/_Usuarios_/uUsuarios.dfm new file mode 100644 index 00000000..0c3eb30f --- /dev/null +++ b/Source/ApplicationBase/_Usuarios_/uUsuarios.dfm @@ -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 diff --git a/Source/ApplicationBase/_Usuarios_/uUsuarios.pas b/Source/ApplicationBase/_Usuarios_/uUsuarios.pas new file mode 100644 index 00000000..6fb22fd6 --- /dev/null +++ b/Source/ApplicationBase/_Usuarios_/uUsuarios.pas @@ -0,0 +1,89 @@ +unit uUsuarios; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, DB, uDADataTable, dbcgrids, uDataModuleUsuarios, StdCtrls, + DBCtrls, uDataModuleBase, 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. diff --git a/Source/ApplicationBase/uFactuGES_App.pas b/Source/ApplicationBase/uFactuGES_App.pas new file mode 100644 index 00000000..3741e919 --- /dev/null +++ b/Source/ApplicationBase/uFactuGES_App.pas @@ -0,0 +1,152 @@ +unit uFactuGES_App; + +interface + +uses + SysUtils, Classes, Forms, uUsuarios, uBizEmpresas, + uEmpresasController, JclFileUtils, uUsuariosController; + +type + TAppFactuGES = class(TObject) + private + FAppInfo : TJclFileVersionInfo; + FEmpresasController : IEmpresasController; + FUsuariosController: IUsuariosController; + FEmpresaActiva: IBizEmpresa; + function GetAppForm: TCustomForm; + function GetEmpresasController: IEmpresasController; + function GetUsuariosController: IUsuariosController; + function GetAppName: String; + function GetAppVersion: String; + function GetUsuarioActivo: TUsuario; + protected + procedure InitializeInstance; virtual; + procedure DestroyInstance; virtual; + public + class function NewInstance: TObject; override; + procedure FreeInstance; override; + class function RefCount: Integer; + procedure CambarEmpresa(const AIDEmpresa : Integer); + property AppVersion : String read GetAppVersion; + property AppName : String read GetAppName; + property AppForm : TCustomForm read GetAppForm; + property EmpresaActiva : IBizEmpresa read FEmpresaActiva; + property UsuarioActivo : TUsuario read GetUsuarioActivo; + property EmpresasController : IEmpresasController read GetEmpresasController; + property UsuariosController : IUsuariosController read GetUsuariosController; + end; + +var + AppFactuGES : TAppFactuGES = nil; + +implementation + +uses + uDataModuleBase, uUsuariosViewRegister, uEmpresasViewRegister; + +var + Ref_Count : Integer = 0; + +procedure TAppFactuGES.CambarEmpresa(const AIDEmpresa: Integer); +var + Aux : IBizEmpresa; +begin + Aux := EmpresasController.Buscar(AIDEmpresa); + if Assigned(Aux) then + begin + Aux.DataTable.Active := True; + if not Aux.IsEmpty then + FEmpresaActiva := Aux; + end; +end; + +procedure TAppFactuGES.DestroyInstance; +begin + FreeAndNIL(FAppInfo); +end; + +procedure TAppFactuGES.FreeInstance; +begin + Dec(Ref_Count); + if (Ref_Count = 0) then + begin + AppFactuGES := NIL; + + // Destroy private variables here + DestroyInstance; + + inherited FreeInstance; + end; +end; + +function TAppFactuGES.GetAppForm: TCustomForm; +begin + Result := Application.MainForm; +end; + +function TAppFactuGES.GetAppName: String; +begin + Result := FAppInfo.ProductName; +end; + +function TAppFactuGES.GetAppVersion: String; +begin + Result := FAppInfo.ProductVersion; +end; + +function TAppFactuGES.GetEmpresasController: IEmpresasController; +begin + Result := FEmpresasController; +end; + +function TAppFactuGES.GetUsuarioActivo: TUsuario; +begin + Result := FUsuariosController.CurrentUser; +end; + +function TAppFactuGES.GetUsuariosController: IUsuariosController; +begin + Result := FUsuariosController; +end; + +procedure TAppFactuGES.InitializeInstance; +begin + FEmpresaActiva := NIL; + FAppInfo := TJclFileVersionInfo.Create(Application.ExeName); + FUsuariosController := TUsuariosController.Create; + FEmpresasController := TEmpresasController.Create; +end; + +class function TAppFactuGES.NewInstance: TObject; +begin + if (not Assigned(AppFactuGES)) then + begin + AppFactuGES := TAppFactuGES(inherited NewInstance); + // Initialize private variables here + AppFactuGES.InitializeInstance; + end; + Result := AppFactuGES; + Inc(Ref_Count); +end; + +class function TAppFactuGES.RefCount: Integer; +begin + Result := Ref_Count; +end; + + +initialization + AppFactuGES := TAppFactuGES.Create; + + // Pongo esto aquí por ahora + uUsuariosViewRegister.RegisterViews; + uEmpresasViewRegister.RegisterViews; + +finalization + FreeAndNIL(AppFactuGES); + + // Pongo esto aquí por ahora + uUsuariosViewRegister.UnregisterViews; + uEmpresasViewRegister.UnregisterViews; + +end. diff --git a/Source/Base/Base.bdsproj b/Source/Base/Base.bdsproj index 2ef9ef74..7ebf9f74 100644 --- a/Source/Base/Base.bdsproj +++ b/Source/Base/Base.bdsproj @@ -3,9 +3,9 @@ - + - + @@ -103,14 +103,23 @@ True True True + True + True + True + True + True + True + True + True + True - 3 + 0 0 False 1 - True + False False False 16384 @@ -123,7 +132,7 @@ .\ ..\..\Output\Debug\Cliente ..\Lib - T:\COMPON~1\jcl\lib\d10\debug;$(BDS)\lib\Debug;$(BDS)\Lib\Debug\Indy9;..\DataAbstract_D10\Lib;.\Lib + @@ -139,11 +148,9 @@ True False - - - $00000000 - - + + False + True False @@ -169,69 +176,35 @@ 1.0.0.0 - - - ExpressCommonLibrary by Developer Express Inc. - ExpressEditors Library 5 by Developer Express Inc. - ExpressDataController by Developer Express Inc. - ExpressExtendedEditors Library 5 by Developer Express Inc. - ExpressQuantumGrid 5 by Developer Express Inc. - ExpressScheduler 2 by Developer Express Inc. - ExpressQuantumTreeList 4 by Developer Express Inc. - ExpressVerticalGrid by Developer Express Inc. - ExpressDocking Library by Developer Express Inc. - ExpressLayout Control by Developer Express Inc. - ExpressNavBar by Developer Express Inc. - ExpressPrinting System by Developer Express Inc. - ExpressSideBar by Developer Express Inc. - JVCL Application and Form Components Runtime Package - JVCL Core Runtime Package - JEDI Code Library RTL package - JEDI Code Library VCL package - JVCL System Runtime Package - JVCL Standard Controls Runtime Package - JVCL Band Objects Runtime Package - JVCL BDE Components Runtime Package - JVCL Controls Runtime Package - JVCL Components Runtime Package - JVCL DotNet Controls Runtime Package - JVCL EDI Components - JVCL Globus Components - JVCL HMI Controls runtime package - JVCL Interpreter Components Runtime Package - JVCL Jans Components - JVCL Managed Threads - runtime package - JVCL Multimedia and Image Components Runtime Package - JVCL Network Components Runtime Package - JVCL Page Style Components Runtime Package - JVCL Plugin Components Runtime Package - JVCL Print Preview Components - JVCL Runtime Design Components Runtime Package - JVCL Time Framework - JVCL Validators and Error Indicator Components - JVCL Wizard Run Time Package - JVCL XP Controls Runtime Package - ExpressGDI+ Library by Developer Express Inc. + + + VCL for the Web Design Package for CodeGear RAD Studio + CodeGear WebSnap Components + CodeGear SOAP Components + Microsoft Office XP Sample Automation Server Wrapper Components + Microsoft Office 2000 Sample Automation Server Wrapper Components + CodeGear C++Builder Office 2000 Servers Package + CodeGear C++Builder Office XP Servers Package - + + + - diff --git a/Source/Base/Base.cfg b/Source/Base/Base.cfg new file mode 100644 index 00000000..5ce9cb53 --- /dev/null +++ b/Source/Base/Base.cfg @@ -0,0 +1,36 @@ +-$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" diff --git a/Source/Base/Base.dpk b/Source/Base/Base.dpk index fe4f96a0..834a1bab 100644 --- a/Source/Base/Base.dpk +++ b/Source/Base/Base.dpk @@ -23,84 +23,83 @@ package Base; {$MINENUMSIZE 1} {$IMAGEBASE $400000} {$DESCRIPTION 'Libreria base de FactuGES'} -{$IMPLICITBUILD OFF} +{$IMPLICITBUILD ON} +{$DEFINE DEBUG} requires rtl, vcl, + TB2k_D10, + GUISDK_D11, + RemObjects_Core_D10, + DataAbstract_Core_D10, + vcljpg, + IndyCore, + IndySystem, + IndyProtocols, cxLibraryD10, dxThemeD10, - dsnap, - dbrtl, - vcldb, - adortl, - DataAbstract_D10, + cxEditorsD10, + cxDataD10, + cxExtEditorsD10, cxGridD10, cxPageControlD10, - cxExtEditorsD10, - cxDataD10, - cxEditorsD10, - vcljpg, - vclx, cxExportD10, + dxPSCoreD10, + PNG_D10, + PngComponentsD10, tbx_d10, - tb2k_d10, + cxIntlPrintSys3D10, cxIntl5D10, + Jcl, + JvCoreD11R, + JvSystemD11R, + JvStdCtrlsD11R, + JvDlgsD11R, + JvNetD11R, + JvPageCompsD11R, + JSDialog100, + dbrtl, + vcldb, + dsnap, + adortl, vclactnband, + vclx, + JclVcl, + JvMMD11R, + JvCtrlsD11R, + pckUCDataConnector, + pckUserControl_RT, + dclIndyCore, designide, xmlrtl, - JvCoreD10R, - Jcl, - JclVcl, - JvPageCompsD10R, - JvStdCtrlsD10R, - JvSystemD10R, - PngComponentsD10, - PNG_D10, - JvMMD10R, - JvCtrlsD10R, - Jv3rdD10R, - dxPSCoreD10, - cxIntlPrintSys3D10, - dxComnD10, - dxPScxCommonD10, - dxPSLnksD10, - vclshlctrls, - dxPScxGridLnkD10, - dclcxLibraryD10, - dxPsPrVwAdvD10, - dxBarExtItemsD10, - dxBarD10, - JvAppFrmD10R, - GUISDK_D10, - ccpack10, - cfpack_d10, - jsDialog100, - indy, - JvDlgsD10R, - JvNetD10R; + VclSmp, + pckMD5, + JvCmpD11R; contains uDataTableUtils in 'Utiles\uDataTableUtils.pas', uDBSelectionListUtils in 'Utiles\uDBSelectionListUtils.pas', uIntegerListUtils in 'Utiles\uIntegerListUtils.pas', uDataModuleBase in 'uDataModuleBase.pas' {dmBase: TDataModule}, - uDataModuleConexion in 'uDataModuleConexion.pas' {dmConexion: TDataModule}, - uConfigurarConexion in 'uConfigurarConexion.pas' {fConfigurarConexion: TForm}, + uDataModuleConexion in 'Conexion\uDataModuleConexion.pas' {dmConexion: TDataModule}, + uConfigurarConexion in 'Conexion\uConfigurarConexion.pas' {fConfigurarConexion: TForm}, uSistemaFunc in 'Utiles\uSistemaFunc.pas', FactuGES_Intf in '..\Servicios\FactuGES_Intf.pas', uGridUtils in 'Utiles\uGridUtils.pas', uDateUtils in 'Utiles\uDateUtils.pas', - uDataModuleConfiguracion in 'uDataModuleConfiguracion.pas' {dmConfiguracion: TDataModule}, - uViewRegistryUtils in 'ClassRegistry\uViewRegistryUtils.pas', - uClassRegistryUtils in 'ClassRegistry\uClassRegistryUtils.pas', - uEditorRegistryUtils in 'ClassRegistry\uEditorRegistryUtils.pas', + uDataModuleConfiguracion in 'Configuracion\uDataModuleConfiguracion.pas' {dmConfiguracion: TDataModule}, + uViewRegistryUtils in 'Utiles\ClassRegistry\uViewRegistryUtils.pas', + uClassRegistryUtils in 'Utiles\ClassRegistry\uClassRegistryUtils.pas', + uEditorRegistryUtils in 'Utiles\ClassRegistry\uEditorRegistryUtils.pas', uDialogUtils in 'Utiles\uDialogUtils.pas', uNumUtils in 'Utiles\uNumUtils.pas', - MD5 in 'Utiles\MD5.pas', + uMD5 in 'Utiles\uMD5.pas', uPasswordUtils in 'Utiles\uPasswordUtils.pas', uInfoProjectUtils in 'Utiles\uInfoProjectUtils.pas', - uActualizacion in 'uActualizacion.pas' {fActualizacion: Form}, - uInformeRegistryUtils in 'ClassRegistry\uInformeRegistryUtils.pas'; + uInformeRegistryUtils in 'Utiles\ClassRegistry\uInformeRegistryUtils.pas', + uControllerDetallesDTO in 'Controladores\uControllerDetallesDTO.pas', + uControllerBase in 'Controladores\uControllerBase.pas', + uControllerDetallesBase in 'Controladores\uControllerDetallesBase.pas'; end. diff --git a/Source/Base/Base.dproj b/Source/Base/Base.dproj new file mode 100644 index 00000000..96f58149 --- /dev/null +++ b/Source/Base/Base.dproj @@ -0,0 +1,626 @@ + + + {70a31e92-41c6-4435-a901-d77c3d82951e} + Base.dpk + Debug + AnyCPU + DCC32 + ..\..\Output\Debug\Cliente\Base.bpl + + + 7.0 + False + False + False + True + 0 + .\ + .\ + .\ + ..\..\Output\Release\Cliente + ..\Lib + RELEASE + + + 7.0 + False + True + .\ + .\ + .\ + ..\..\Output\Debug\Cliente + ..\Lib + DEBUG + + + Delphi.Personality + Package + +FalseTrueFalseLibreria base de FactuGESTrueFalseFalseTrueFalse1000FalseFalseFalseFalseFalse308212521.0.0.01.0.0.0 + + + + + + + + VCL for the Web Design Package for CodeGear RAD Studio + CodeGear WebSnap Components + CodeGear SOAP Components + Microsoft Office XP Sample Automation Server Wrapper Components + Microsoft Office 2000 Sample Automation Server Wrapper Components + CodeGear C++Builder Office 2000 Servers Package + CodeGear C++Builder Office XP Servers Package + Base.dpk + + + + + MainSource + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
fConfigurarConexion
+
+ +
dmConexion
+
+ +
dmConfiguracion
+
+ + + + +
dmBase
+
+ + + + + + + + + + + + + + + +
+
+ diff --git a/Source/Base/Base.drc b/Source/Base/Base.drc index 6038e046..d993392a 100644 --- a/Source/Base/Base.drc +++ b/Source/Base/Base.drc @@ -1,5 +1,5 @@ -/* VER180 - Generated by the Borland Delphi Pascal Compiler +/* VER185 + Generated by the CodeGear Delphi Pascal Compiler because -GD or --drc was supplied to the compiler. This file contains compiler-generated resources that @@ -14,3 +14,10 @@ BEGIN uClassRegistryUtils_eClassnotFound, "Class \"%s\" was not found in the registry." END +/* Conexion\uConfigurarConexion.dfm */ +/* Conexion\uDataModuleConexion.dfm */ +/* Configuracion\uDataModuleConfiguracion.dfm */ +/* uDataModuleBase.DFM */ +/* Actualizacion\uActualizacion.dfm */ +/* C:\Codigo Tecsitel\Source\Base\Base.res */ +/* C:\Codigo Tecsitel\Source\Base\Base.drf */ diff --git a/Source/Base/Base.rc b/Source/Base/Base.rc index e69de29b..153736af 100644 --- a/Source/Base/Base.rc +++ b/Source/Base/Base.rc @@ -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 diff --git a/Source/Base/Base.res b/Source/Base/Base.res index 86c94e6a..1641339f 100644 Binary files a/Source/Base/Base.res and b/Source/Base/Base.res differ diff --git a/Source/Base/uConfigurarConexion.dfm b/Source/Base/Conexion/uConfigurarConexion.dfm similarity index 93% rename from Source/Base/uConfigurarConexion.dfm rename to Source/Base/Conexion/uConfigurarConexion.dfm index 715c6fda..b9e3cb0c 100644 --- a/Source/Base/uConfigurarConexion.dfm +++ b/Source/Base/Conexion/uConfigurarConexion.dfm @@ -91,12 +91,10 @@ object fConfigurarConexion: TfConfigurarConexion TabOrder = 3 end object HTTPChannel: TROWinInetHTTPChannel - ServerLocators = <> - DispatchOptions = [] - ProbeServers = False - ProbeFrequency = 60000 UserAgent = 'AdminPV' TargetURL = 'http://localhost:8099/BIN' + ServerLocators = <> + DispatchOptions = [] Left = 120 Top = 112 end @@ -105,9 +103,9 @@ object fConfigurarConexion: TfConfigurarConexion Top = 112 end object CoService: TRORemoteService - ServiceName = 'srvLogin' Message = ROBinMessage Channel = HTTPChannel + ServiceName = 'srvLogin' Left = 184 Top = 112 end diff --git a/Source/Base/uConfigurarConexion.pas b/Source/Base/Conexion/uConfigurarConexion.pas similarity index 93% rename from Source/Base/uConfigurarConexion.pas rename to Source/Base/Conexion/uConfigurarConexion.pas index 30707b75..d93c9a7e 100644 --- a/Source/Base/uConfigurarConexion.pas +++ b/Source/Base/Conexion/uConfigurarConexion.pas @@ -5,7 +5,7 @@ interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, uROClient, uROWinInetHttpChannel, uRODynamicRequest, - uROServiceComponent, uRORemoteService, uROBinMessage; + uRORemoteService, uROBinMessage; type TfConfigurarConexion = class(TForm) diff --git a/Source/Base/uDataModuleConexion.dfm b/Source/Base/Conexion/uDataModuleConexion.dfm similarity index 52% rename from Source/Base/uDataModuleConexion.dfm rename to Source/Base/Conexion/uDataModuleConexion.dfm index 1219caa2..f858c3e8 100644 --- a/Source/Base/uDataModuleConexion.dfm +++ b/Source/Base/Conexion/uDataModuleConexion.dfm @@ -1,16 +1,15 @@ object dmConexion: TdmConexion OldCreateOrder = False - Height = 264 - Width = 275 + Height = 177 + Width = 121 object ROChannel: TROWinInetHTTPChannel OnFailure = ROChannelFailure - ServerLocators = <> - DispatchOptions = [] - ProbeServers = False - ProbeFrequency = 60000 + OnException = ROChannelFailure UserAgent = 'RemObjects SDK' TargetURL = 'http://localhost:8099/bin' KeepConnection = True + ServerLocators = <> + DispatchOptions = [] Left = 42 Top = 16 end @@ -18,15 +17,4 @@ object dmConexion: TdmConexion Left = 42 Top = 88 end - object DABINAdapter: TDABINAdapter - Left = 136 - Top = 16 - end - object RORemoteService: TRORemoteService - ServiceName = 'srvConfiguracion' - Message = ROMessage - Channel = ROChannel - Left = 136 - Top = 88 - end end diff --git a/Source/Base/uDataModuleConexion.pas b/Source/Base/Conexion/uDataModuleConexion.pas similarity index 92% rename from Source/Base/uDataModuleConexion.pas rename to Source/Base/Conexion/uDataModuleConexion.pas index b1acb031..55043fd7 100644 --- a/Source/Base/uDataModuleConexion.pas +++ b/Source/Base/Conexion/uDataModuleConexion.pas @@ -3,8 +3,9 @@ unit uDataModuleConexion; interface uses - SysUtils, Classes, uROServiceComponent, uRORemoteService, uDADataTable, - uDABINAdapter, uROClient, uROBinMessage, uROWinInetHttpChannel; + SysUtils, Classes, uRORemoteService, uDADataTable, + uDABINAdapter, uROClient, uROBinMessage, uROWinInetHttpChannel, + uDADataStreamer; const SERVER_URL = 'http://localhost:8099/bin'; // Dirección por defecto del servidor @@ -13,8 +14,6 @@ type TdmConexion = class(TDataModule) ROChannel: TROWinInetHTTPChannel; ROMessage: TROBinMessage; - DABINAdapter: TDABINAdapter; - RORemoteService: TRORemoteService; procedure ROChannelFailure(Sender: TROTransportChannel; anException: Exception; var Retry: Boolean); private diff --git a/Source/Base/uDataModuleConfiguracion.dfm b/Source/Base/Configuracion/uDataModuleConfiguracion.dfm similarity index 75% rename from Source/Base/uDataModuleConfiguracion.dfm rename to Source/Base/Configuracion/uDataModuleConfiguracion.dfm index 362d229c..1f45ec7f 100644 --- a/Source/Base/uDataModuleConfiguracion.dfm +++ b/Source/Base/Configuracion/uDataModuleConfiguracion.dfm @@ -1,17 +1,15 @@ object dmConfiguracion: TdmConfiguracion OldCreateOrder = False - Height = 264 - Width = 275 + Height = 160 + Width = 220 object ROChannel: TROWinInetHTTPChannel - ServerLocators = <> - DispatchOptions = [] - ProbeServers = False - ProbeFrequency = 60000 UserAgent = 'RemObjects SDK' TargetURL = 'http://localhost:8099/bin' Login.Username = '123456' Login.Password = 'sa' KeepConnection = True + ServerLocators = <> + DispatchOptions = [] Left = 42 Top = 16 end @@ -19,15 +17,11 @@ object dmConfiguracion: TdmConfiguracion Left = 42 Top = 88 end - object DABINAdapter: TDABINAdapter + object RORemoteService: TRORemoteService + Message = ROMessage + Channel = ROChannel + ServiceName = 'srvConfiguracion' Left = 136 Top = 16 end - object RORemoteService: TRORemoteService - ServiceName = 'srvConfiguracion' - Message = ROMessage - Channel = ROChannel - Left = 136 - Top = 88 - end end diff --git a/Source/Base/uDataModuleConfiguracion.pas b/Source/Base/Configuracion/uDataModuleConfiguracion.pas similarity index 88% rename from Source/Base/uDataModuleConfiguracion.pas rename to Source/Base/Configuracion/uDataModuleConfiguracion.pas index 54d0adc8..f5786008 100644 --- a/Source/Base/uDataModuleConfiguracion.pas +++ b/Source/Base/Configuracion/uDataModuleConfiguracion.pas @@ -3,8 +3,9 @@ unit uDataModuleConfiguracion; interface uses - SysUtils, Classes, uROServiceComponent, uRORemoteService, uDADataTable, - uDABINAdapter, uROClient, uROBinMessage, uROWinInetHttpChannel, IniFiles; + SysUtils, Classes, uRORemoteService, uDADataTable, + uDABINAdapter, uROClient, uROBinMessage, uROWinInetHttpChannel, IniFiles, + uDADataStreamer; const SERVER_URL = 'http://localhost:8099/bin'; @@ -13,7 +14,6 @@ type TdmConfiguracion = class(TDataModule) ROChannel: TROWinInetHTTPChannel; ROMessage: TROBinMessage; - DABINAdapter: TDABINAdapter; RORemoteService: TRORemoteService; private FIniFile : TIniFile; diff --git a/Source/Base/ControllerBase/uControllerBase.pas b/Source/Base/Controladores/uControllerBase.pas similarity index 92% rename from Source/Base/ControllerBase/uControllerBase.pas rename to Source/Base/Controladores/uControllerBase.pas index 0d3f90a6..b710af87 100644 --- a/Source/Base/ControllerBase/uControllerBase.pas +++ b/Source/Base/Controladores/uControllerBase.pas @@ -39,6 +39,9 @@ type destructor Destroy; override; end; + IControllerBase = IObservador; + TControllerBase = TObservador; + implementation uses diff --git a/Source/Base/ControllerBase/uControllerDetallesBase.pas b/Source/Base/Controladores/uControllerDetallesBase.pas similarity index 97% rename from Source/Base/ControllerBase/uControllerDetallesBase.pas rename to Source/Base/Controladores/uControllerDetallesBase.pas index 9b252d98..9b113746 100644 --- a/Source/Base/ControllerBase/uControllerDetallesBase.pas +++ b/Source/Base/Controladores/uControllerDetallesBase.pas @@ -291,6 +291,7 @@ begin try with ADataTable do begin + DeletePosicion := 0; for i := 0 to High(POSICION) do begin DataTable.First; diff --git a/Source/Base/ControllerBase/uControllerDetallesDTO.pas b/Source/Base/Controladores/uControllerDetallesDTO.pas similarity index 95% rename from Source/Base/ControllerBase/uControllerDetallesDTO.pas rename to Source/Base/Controladores/uControllerDetallesDTO.pas index 4f17a21a..63c5ece3 100644 --- a/Source/Base/ControllerBase/uControllerDetallesDTO.pas +++ b/Source/Base/Controladores/uControllerDetallesDTO.pas @@ -34,8 +34,6 @@ function TControllerDetallesDTO.CalcularImporteTotalConcepto(DataTable: TDADataT var ImporteTotal : Double; begin - ImporteTotal := 0; - with DataTable do begin if (VarIsNull(FieldByName(CAMPO_DESCUENTO).AsVariant)) then diff --git a/Source/Base/ControllerBase.drc b/Source/Base/ControllerBase.drc deleted file mode 100644 index 09081cc2..00000000 --- a/Source/Base/ControllerBase.drc +++ /dev/null @@ -1,21 +0,0 @@ -/* VER180 - Generated by the Borland Delphi Pascal Compiler - because -GD or --drc was supplied to the compiler. - - This file contains compiler-generated resources that - were bound to the executable. - If this file is empty, then no compiler-generated - resources were bound to the produced executable. -*/ - -DESCRIPTION RCDATA -BEGIN - "\x4c", "\x00", "\x69", "\x00", "\x62", "\x00", "\x72", "\x00", /* 0000: L.i.b.r. */ - "\x65", "\x00", "\x72", "\x00", "\x69", "\x00", "\x61", "\x00", /* 0008: e.r.i.a. */ - "\x20", "\x00", "\x62", "\x00", "\x61", "\x00", "\x73", "\x00", /* 0010: .b.a.s. */ - "\x65", "\x00", "\x20", "\x00", "\x64", "\x00", "\x65", "\x00", /* 0018: e. .d.e. */ - "\x20", "\x00", "\x46", "\x00", "\x61", "\x00", "\x63", "\x00", /* 0020: .F.a.c. */ - "\x74", "\x00", "\x75", "\x00", "\x47", "\x00", "\x45", "\x00", /* 0028: t.u.G.E. */ - "\x53", "\x00", "\x00", "\x00" /* 0030: S... */ -END - diff --git a/Source/Base/ControllerBase/ControllerBase.bdsproj b/Source/Base/ControllerBase/ControllerBase.bdsproj deleted file mode 100644 index 3d57f918..00000000 --- a/Source/Base/ControllerBase/ControllerBase.bdsproj +++ /dev/null @@ -1,492 +0,0 @@ - - - - - - - - - - - - ControllerBase.dpk - - - 7.0 - - - 8 - 0 - 1 - 1 - 0 - 0 - 1 - 1 - 1 - 0 - 0 - 1 - 0 - 1 - 0 - 1 - 0 - 0 - 0 - 0 - 0 - 1 - 1 - 1 - 1 - 1 - True - True - WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; - - False - - True - True - True - True - True - True - True - True - True - True - True - True - True - True - True - True - True - True - True - True - True - True - True - True - True - True - True - True - True - True - True - True - True - True - True - True - True - True - True - True - True - True - True - True - True - True - False - False - False - True - True - True - True - True - True - - - - 3 - 0 - False - 1 - True - False - False - 16384 - 1048576 - 4194304 - - - - - .\ - ..\..\..\Output\Debug\Cliente - ..\..\Lib - T:\COMPON~1\jcl\lib\d10\debug;$(BDS)\lib\Debug;$(BDS)\Lib\Debug\Indy9;..\..\DataAbstract_D10\Lib;..\Lib - - - - False - - - - - - False - - - True - False - - - - $00000000 - - - - True - False - 1 - 0 - 0 - 0 - False - False - False - False - False - 3082 - 1252 - - - - - 1.0.0.0 - - - - - - 1.0.0.0 - - - - - diff --git a/Source/Base/ControllerBase/ControllerBase.drc b/Source/Base/ControllerBase/ControllerBase.drc deleted file mode 100644 index 7642ac97..00000000 --- a/Source/Base/ControllerBase/ControllerBase.drc +++ /dev/null @@ -1,14 +0,0 @@ -/* VER180 - Generated by the Borland Delphi Pascal Compiler - because -GD or --drc was supplied to the compiler. - - This file contains compiler-generated resources that - were bound to the executable. - If this file is empty, then no compiler-generated - resources were bound to the produced executable. -*/ - -STRINGTABLE -BEGIN -END - diff --git a/Source/Base/ControllerBase/ControllerBase.rc b/Source/Base/ControllerBase/ControllerBase.rc deleted file mode 100644 index e69de29b..00000000 diff --git a/Source/Base/ControllerBase/ControllerBase.res b/Source/Base/ControllerBase/ControllerBase.res deleted file mode 100644 index 36f26e23..00000000 Binary files a/Source/Base/ControllerBase/ControllerBase.res and /dev/null differ diff --git a/Source/Base/GUIBase/GUIBase.rc b/Source/Base/GUIBase/GUIBase.rc deleted file mode 100644 index e69de29b..00000000 diff --git a/Source/Base/GUIBase/GUIBase.res b/Source/Base/GUIBase/GUIBase.res deleted file mode 100644 index 36f26e23..00000000 Binary files a/Source/Base/GUIBase/GUIBase.res and /dev/null differ diff --git a/Source/Base/GUIBase/_uViewGridBase.pas b/Source/Base/GUIBase/_uViewGridBase.pas deleted file mode 100644 index 6151a2a3..00000000 --- a/Source/Base/GUIBase/_uViewGridBase.pas +++ /dev/null @@ -1,345 +0,0 @@ -{*******************************************************} -{ } -{ Administración de puntos de venta } -{ } -{ Copyright (C) 2006 Rodax Software S.L. } -{ } -{*******************************************************} - -unit uViewGridBase; - -interface - -uses - Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, - Dialogs, uViewBase, cxStyles, cxCustomData, cxGraphics, cxFilter, cxData, - cxDataStorage, cxEdit, DB, cxDBData, uDADataTable, cxGridLevel, - cxClasses, cxControls, cxGridCustomView, cxGridCustomTableView, - cxGridTableView, cxGridDBTableView, cxGrid, Menus, ActnList, Grids, - DBGrids, JvComponent, JvFormAutoSize, dxPSGlbl, dxPSUtl, dxPSEngn, - dxPrnPg, dxBkgnd, dxWrap, dxPrnDev, dxPSCompsProvider, dxPSFillPatterns, - dxPSEdgePatterns, dxPSCore, dxPScxCommon, dxPScxGridLnk, dxPrnDlg, - cxIntlPrintSys3, dxPSPrvwAdv, uGridUtils; - -type - IViewGridBase = interface(IViewBase) - ['{D5B9B017-2A2E-44AC-8223-E54664C6BC66}'] - procedure ExpandirTodo; - procedure ContraerTodo; - procedure AjustarAncho; - - procedure Preview; - procedure Print; - procedure PrintSetup; - - function IsEmpty : Boolean; - - procedure SaveGridStatus; - procedure RestoreGridStatus; - - procedure GotoFirst; - procedure GotoLast; - - function GetFocusedView : TcxGridDBTableView; - property _FocusedView : TcxGridDBTableView read GetFocusedView; - - function GetGrid : TcxGrid; - property _Grid : TcxGrid read GetGrid; - - procedure StoreToRegistry (const Path : String); - procedure RestoreFromRegistry (const Path : String); - - procedure SetDblClick(const Value: TNotifyEvent); - function GetDblClick: TNotifyEvent; - property OnDblClick: TNotifyEvent read GetDblClick write SetDblClick; - - procedure SetPopupMenu(const Value: TPopupMenu); - function GetPopupMenu: TPopupMenu; - property PopupMenu: TPopupMenu read GetPopupMenu write SetPopupMenu; - - function GetMultiSelect: Boolean; - procedure SetMultiSelect(const Value: Boolean); - property MultiSelect : Boolean read GetMultiSelect write SetMultiSelect; - - procedure SetFilter(const Value: string); - function GetFilter: string; - property Filter: string read GetFilter write SetFilter; - - function GetFiltered: Boolean; - property Filtered : Boolean read GetFiltered; - end; - - - TfrViewGridBase = class(TfrViewBase, IViewGridBase) - dsDataSource: TDADataSource; - private - FFilter: string; - FOnFilterChanged : TNotifyEvent; - procedure FiltrarGrid(TextoFiltro : String); - protected - FGridStatus : TcxGridStatus; - FOnDblClick: TNotifyEvent; - FPopupMenu: TPopupMenu; - function GetMultiSelect: Boolean; virtual; - procedure SetMultiSelect(const Value: Boolean); virtual; - procedure SetPopupMenu(const Value: TPopupMenu); virtual; - function GetPopupMenu: TPopupMenu; virtual; - procedure SetDblClick(const Value: TNotifyEvent); virtual; - function GetDblClick: TNotifyEvent; virtual; - function GetGrid : TcxGrid; virtual; abstract; - function GetFocusedView : TcxGridDBTableView; virtual; abstract; - procedure SetFilter(const Value: string); virtual; - function GetFilter: string; virtual; - function GetFiltered: Boolean; virtual; - procedure FilterChanged(Sender : TObject); virtual; - public - constructor Create(AOwner: TComponent); override; - - procedure ShowEmbedded(const AParent : TWinControl); override; - - procedure ExpandirTodo; - procedure ContraerTodo; - procedure AjustarAncho; - - procedure Preview; virtual; - procedure Print; virtual; - procedure PrintSetup; virtual; - - function IsEmpty : Boolean; - - procedure SaveGridStatus; - procedure RestoreGridStatus; - - procedure GotoFirst; - procedure GotoLast; - - procedure StoreToRegistry (const Path : String); - procedure RestoreFromRegistry (const Path : String); - - property Filter: string read GetFilter write SetFilter; - property Filtered : Boolean read GetFiltered; - property _FocusedView : TcxGridDBTableView read GetFocusedView; - property _Grid : TcxGrid read GetGrid; - property OnDblClick: TNotifyEvent read GetDblClick write SetDblClick; - property PopupMenu: TPopupMenu read GetPopupMenu write SetPopupMenu; - property MultiSelect : Boolean read GetMultiSelect write SetMultiSelect; - destructor Destroy; override; - end; - -procedure Register; - -implementation - -uses - CCReg, uDataModuleBase, uDBSelectionListUtils; - -{$R *.dfm} - -procedure Register; -begin - RegisterCustomContainer(TfrViewGridBase); -end; - -{ TfrViewGrid } - -procedure TfrViewGridBase.AjustarAncho; -begin - if Assigned(_FocusedView) then - _FocusedView.ApplyBestFit; -end; - -procedure TfrViewGridBase.ContraerTodo; -begin - if Assigned(_FocusedView) then - _FocusedView.ViewData.Collapse(True); -end; - -constructor TfrViewGridBase.Create(AOwner: TComponent); -begin - inherited; - FFilter := ''; - FOnFilterChanged := FilterChanged; - FPopupMenu := nil; - FOnDblClick := nil; - FGridStatus := NIL; -end; - -procedure TfrViewGridBase.ExpandirTodo; -begin - if Assigned(_FocusedView) then - _FocusedView.ViewData.Expand(True); -end; - -function TfrViewGridBase.GetDblClick: TNotifyEvent; -begin - Result := FOnDblClick; -end; - -function TfrViewGridBase.GetFilter: string; -begin - Result := FFilter; -end; - -function TfrViewGridBase.GetFiltered: Boolean; -begin - Result := (_FocusedView.DataController.Filter.Root.Count > 0); -end; - -function TfrViewGridBase.GetMultiSelect: Boolean; -begin - Result := _FocusedView.OptionsSelection.MultiSelect; -end; - -function TfrViewGridBase.GetPopupMenu: TPopupMenu; -begin - Result := FPopupMenu; -end; - -procedure TfrViewGridBase.GotoFirst; -begin - if Assigned(_FocusedView) then - _FocusedView.DataController.GotoFirst; -end; - -procedure TfrViewGridBase.GotoLast; -begin - if Assigned(_FocusedView) then - _FocusedView.DataController.GotoLast; -end; - -function TfrViewGridBase.IsEmpty: Boolean; -begin - Result := (_FocusedView.ViewData.RowCount < 1); -end; - -procedure TfrViewGridBase.Preview; -begin - -end; - -procedure TfrViewGridBase.Print; -begin - -end; - -procedure TfrViewGridBase.PrintSetup; -begin - -end; - -procedure TfrViewGridBase.RestoreFromRegistry(const Path : String); -begin - if Assigned(_FocusedView) then - _FocusedView.RestoreFromRegistry(Path + '\\GridSettings\\' + Self.Name, False, False, []); -end; - -procedure TfrViewGridBase.RestoreGridStatus; -begin - if Assigned(FGridStatus) then - FGridStatus.Restore(_FocusedView); -end; - -procedure TfrViewGridBase.SaveGridStatus; -begin - FreeAndNil(FGridStatus); - FGridStatus := TcxGridStatus.Create(_FocusedView); -end; - -procedure TfrViewGridBase.SetDblClick(const Value: TNotifyEvent); -begin - FOnDblClick := Value; -end; - -procedure TfrViewGridBase.SetFilter(const Value: string); -begin - if FFilter <> Value then - begin - FFilter := Value; - FiltrarGrid(FFilter); - if Assigned(FOnFilterChanged) then - FOnFilterChanged(Self); - end; -end; - -procedure TfrViewGridBase.SetMultiSelect(const Value: Boolean); -begin - _FocusedView.OptionsSelection.MultiSelect := Value; -// _FocusedView..OnSelectionChanged := SelectionChanged; -end; - -procedure TfrViewGridBase.SetPopupMenu(const Value: TPopupMenu); -begin - FPopupMenu := Value; -end; - -procedure TfrViewGridBase.ShowEmbedded(const AParent: TWinControl); -begin - inherited; - - // No activar la tabla ya por si acaso tuviera parámetros -{ if not DADataSource.DataTable.Active then - DADataSource.DataTable.Active := True;} - - GotoFirst; - _FocusedView.Focused := True; - if _FocusedView.ViewData.RecordCount > 0 then - begin - _FocusedView.ViewData.Records[0].Selected := True; - _FocusedView.ViewData.Records[0].Focused := True; - end; -end; - -procedure TfrViewGridBase.StoreToRegistry(const Path : String); -begin - if Assigned(_FocusedView) then - _FocusedView.StoreToRegistry(Path + '\\GridSettings\\' + Self.Name, False, []); -end; - -procedure TfrViewGridBase.FiltrarGrid(TextoFiltro : String); -var - Columna: TcxGridDBColumn; - i: Integer; - AItemList: TcxFilterCriteriaItemList; -begin - with _FocusedView.DataController.Filter do - begin - BeginUpdate; - try - Options := [fcoCaseInsensitive, fcoSoftCompare]; - Root.Clear; - if Length(TextoFiltro) > 0 then - begin - AItemList := Root.AddItemList(fboAnd); - AItemList.BoolOperatorKind := fboOr; - for i:=0 to (_FocusedView as TcxGridDBTableView).ColumnCount - 1 do - begin - Columna := (_FocusedView as TcxGridDBTableView).Columns[i]; - if (Length(Columna.Caption) > 0) and (Columna.Caption <> 'RecID') then - AItemList.AddItem(Columna, foLike, '%'+TextoFiltro+'%', IntToStr(i)); - end; - Active := True; - end - else - Active := False; - finally - EndUpdate; - end; - end; -end; - - -procedure TfrViewGridBase.FilterChanged(Sender: TObject); -begin -// -end; - -destructor TfrViewGridBase.Destroy; -begin - FOnFilterChanged := Nil; - if Assigned(FGridStatus) then - FreeAndNil(FGridStatus); - inherited; -end; - -end. - diff --git a/Source/Base/GUIBase/uBizInformesAware.pas b/Source/Base/GUIBase/uBizInformesAware.pas deleted file mode 100644 index 58ac9c05..00000000 --- a/Source/Base/GUIBase/uBizInformesAware.pas +++ /dev/null @@ -1,14 +0,0 @@ -unit uBizInformesAware; - -interface - -type - IBizInformesAware = interface - ['{98AD6541-199F-4155-B394-ED0316298759}'] - procedure Preview; - procedure Print; - end; - -implementation - -end. diff --git a/Source/Base/Jv3rdD10R.drc b/Source/Base/Jv3rdD10R.drc deleted file mode 100644 index 09081cc2..00000000 --- a/Source/Base/Jv3rdD10R.drc +++ /dev/null @@ -1,21 +0,0 @@ -/* VER180 - Generated by the Borland Delphi Pascal Compiler - because -GD or --drc was supplied to the compiler. - - This file contains compiler-generated resources that - were bound to the executable. - If this file is empty, then no compiler-generated - resources were bound to the produced executable. -*/ - -DESCRIPTION RCDATA -BEGIN - "\x4c", "\x00", "\x69", "\x00", "\x62", "\x00", "\x72", "\x00", /* 0000: L.i.b.r. */ - "\x65", "\x00", "\x72", "\x00", "\x69", "\x00", "\x61", "\x00", /* 0008: e.r.i.a. */ - "\x20", "\x00", "\x62", "\x00", "\x61", "\x00", "\x73", "\x00", /* 0010: .b.a.s. */ - "\x65", "\x00", "\x20", "\x00", "\x64", "\x00", "\x65", "\x00", /* 0018: e. .d.e. */ - "\x20", "\x00", "\x46", "\x00", "\x61", "\x00", "\x63", "\x00", /* 0020: .F.a.c. */ - "\x74", "\x00", "\x75", "\x00", "\x47", "\x00", "\x45", "\x00", /* 0028: t.u.G.E. */ - "\x53", "\x00", "\x00", "\x00" /* 0030: S... */ -END - diff --git a/Source/Base/Usuarios/Usuarios.drc b/Source/Base/Usuarios/Usuarios.drc deleted file mode 100644 index 7642ac97..00000000 --- a/Source/Base/Usuarios/Usuarios.drc +++ /dev/null @@ -1,14 +0,0 @@ -/* VER180 - Generated by the Borland Delphi Pascal Compiler - because -GD or --drc was supplied to the compiler. - - This file contains compiler-generated resources that - were bound to the executable. - If this file is empty, then no compiler-generated - resources were bound to the produced executable. -*/ - -STRINGTABLE -BEGIN -END - diff --git a/Source/Base/Usuarios/Usuarios.rc b/Source/Base/Usuarios/Usuarios.rc deleted file mode 100644 index e69de29b..00000000 diff --git a/Source/Base/Usuarios/Usuarios.res b/Source/Base/Usuarios/Usuarios.res deleted file mode 100644 index 36f26e23..00000000 Binary files a/Source/Base/Usuarios/Usuarios.res and /dev/null differ diff --git a/Source/Base/ClassRegistry/uClassRegistryUtils.pas b/Source/Base/Utiles/ClassRegistry/uClassRegistryUtils.pas similarity index 100% rename from Source/Base/ClassRegistry/uClassRegistryUtils.pas rename to Source/Base/Utiles/ClassRegistry/uClassRegistryUtils.pas diff --git a/Source/Base/ClassRegistry/uEditorRegistryUtils.pas b/Source/Base/Utiles/ClassRegistry/uEditorRegistryUtils.pas similarity index 100% rename from Source/Base/ClassRegistry/uEditorRegistryUtils.pas rename to Source/Base/Utiles/ClassRegistry/uEditorRegistryUtils.pas diff --git a/Source/Base/ClassRegistry/uInformeRegistryUtils.pas b/Source/Base/Utiles/ClassRegistry/uInformeRegistryUtils.pas similarity index 91% rename from Source/Base/ClassRegistry/uInformeRegistryUtils.pas rename to Source/Base/Utiles/ClassRegistry/uInformeRegistryUtils.pas index f8a58c58..72b6e90a 100644 --- a/Source/Base/ClassRegistry/uInformeRegistryUtils.pas +++ b/Source/Base/Utiles/ClassRegistry/uInformeRegistryUtils.pas @@ -44,8 +44,8 @@ end; function TInformeRegistry.CreateInforme(const aClassOrDisplayname: String; aOwner: TComponent): TInterfacedObject; begin - if not Assigned(AOwner) then - AOwner := Application; +{ if not Assigned(AOwner) then + AOwner := Application;} Result := CreateObject( aClassOrDisplayname) as TInterfacedObject; end; diff --git a/Source/Base/ClassRegistry/uViewRegistryUtils.pas b/Source/Base/Utiles/ClassRegistry/uViewRegistryUtils.pas similarity index 100% rename from Source/Base/ClassRegistry/uViewRegistryUtils.pas rename to Source/Base/Utiles/ClassRegistry/uViewRegistryUtils.pas diff --git a/Source/Base/Utiles/uDataTableUtils.pas b/Source/Base/Utiles/uDataTableUtils.pas index 09974386..89be2601 100644 --- a/Source/Base/Utiles/uDataTableUtils.pas +++ b/Source/Base/Utiles/uDataTableUtils.pas @@ -3,7 +3,7 @@ unit uDataTableUtils; interface uses - uDACDSDataTable, uDADataTable, uDAInterfaces; + uDACDSDataTable, uDADataTable, uDAInterfaces, uDADelta, uDAMemDataTable; const ID_NULO = -9000; @@ -19,9 +19,19 @@ function SetFieldNull(ATarget: TDADataTable; const FieldName: String): Boolean; procedure ConectarTabla (ATarget: TDADataTable); procedure DesconectarTabla (ATarget: TDADataTable); +procedure CopyDataTable(ASource : TDADataTable; ATarget: TDADataTable; + const OnlySelectedRows : Boolean = False); + +procedure CopyDataTable2(ASource : TDADataTable; ATarget : TDADataTable; + const OnlySelectedRows : Boolean = False); + procedure CloneDataTable(const ASource : TDACDSDataTable; var ATarget : TDACDSDataTable; - RemoteUpdate: Boolean = True); + RemoteUpdate: Boolean = True); overload; + +function CloneDataTable(const ASource : TDAMemDataTable; + RemoteUpdate: Boolean = True): TDAMemDataTable; overload; + procedure DuplicarRegistro(ASource : TDADataTable; ATarget : TDADataTable; Const WithKey: Boolean = False); @@ -29,9 +39,6 @@ procedure DuplicarRegistros(ASource : TDADataTable; ATarget : TDADataTable; AModo : TModoDuplicarRegistros; APermitirRepetidos: Boolean = True; Const WithDeltas: Boolean = True; Const WithKey: Boolean = False); -procedure CopyDataTable(ASource : TDADataTable; ATarget : TDADataTable; - const OnlySelectedRows : Boolean = False); - procedure DeleteAllTable(const ADataTable : TDADataTable); function DeltaValuesAreDifferent(const aDelta : IDADelta): boolean; @@ -48,7 +55,81 @@ implementation uses Classes, DB, uDAClasses, SysUtils, uDABINAdapter, uROTypes, cxControls, - Dialogs, Variants, uDBSelectionListUtils, uROClasses; + Dialogs, Variants, uDBSelectionListUtils, uROClasses, uDADataStreamer; + + +procedure CopyDataTable(ASource : TDADataTable; + ATarget: TDADataTable; + const OnlySelectedRows : Boolean); +var + AStream : Binary; + AFilter : String; + AFiltered : Boolean; + AObj : ISeleccionable; + i : Integer; +begin + AFilter := ''; + AFiltered := False; + + if not Assigned(ASource) then + raise Exception.Create ('No se ha asignado la tabla de origen (CopyDataTable)'); + + if not Assigned(ATarget) then + raise Exception.Create ('No se ha asignado la tabla de destino (CopyDataTable)'); + + if not ATarget.Active then + ATarget.Active := True; + + if OnlySelectedRows then + begin + if not Supports(ASource, ISeleccionable, aObj) then + raise Exception.Create('El origen de datos no soporta la interfaz ISeleccionable (CopyDataTable)'); + + if ASource.Filtered then + begin + AFiltered := True; + AFilter := ASource.Filter; + ASource.Filtered := False; + end; + + ASource.Filter := ''; + if ASource.Active then + ASource.Close; + + for i := 0 to AObj.SelectedRecords.Count - 1 do + begin + if (i > 0) then + ASource.Filter := ASource.Filter + ' or '; + ASource.Filter := ASource.Filter + '(ID = ' + IntToStr(AObj.SelectedRecords.Items[i]) + ')'; + end; + + ASource.Filtered := True; + end; + + if not ASource.Active then + ASource.Open; + + AStream := Binary.Create; + DesconectarTabla(ATarget); + try + ASource.SaveToStream(AStream); + ShowMessage(AStream.ToReadableString); + ATarget.LoadFromStream(AStream.Clone); + finally + FreeAndNil(AStream); + ConectarTabla(ATarget); + // Dejar el filtro de la tabla origen como estaba + if OnlySelectedRows then + begin + ASource.Filtered := False; + ASource.Filter := AFilter; + if AFiltered then + ASource.Filtered := True; + end; + end; +end; + + function SetFieldNull(ATarget: TDADataTable; const FieldName: String): Boolean; begin @@ -128,6 +209,65 @@ begin ADataTable.ClearRows; 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 + if not Assigned(ASource.RemoteDataAdapter) then + raise Exception.Create('No está asignado RemoteDataAdapter (' + ASource.Name + ')'); + + RemoteDataAdapter := ASource.RemoteDataAdapter; +// RemoteDataAdapter.Assign(ASource.RemoteDataAdapter); + + BusinessRulesID := ASource.BusinessRulesID; + + Randomize; + Name := ASource.Name + '_' + IntToStr(Random(MAXINT)); + LogicalName := ASource.LogicalName; + + Params.AssignParamCollection(ASource.Params); + Fields.AssignFieldCollection(ASource.Fields); // o también ATarget.LoadSchema; + + 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; + + Result := ATarget; +end; + + procedure CloneDataTable(const ASource : TDACDSDataTable; var ATarget : TDACDSDataTable; RemoteUpdate: Boolean); var @@ -135,10 +275,17 @@ var begin with ATarget do begin - RemoteService := ASource.GetRemoteService; - Adapter := ASource.GetAdapter; + // ****** Inicio migración DA 5 + {RemoteService := ASource.GetRemoteService; + Adapter := ASource.GetAdapter;} - //BusinessRulesID := ASource.BusinessRulesID; + if not Assigned(ASource.RemoteDataAdapter) then + raise Exception.Create('No está asignado RemoteDataAdapter (' + ASource.Name + ')'); + + RemoteDataAdapter.Assign(ASource.RemoteDataAdapter); + // ****** Fin migración DA 5 + + BusinessRulesID := ASource.BusinessRulesID; Randomize; Name := ASource.Name + '_' + IntToStr(Random(MAXINT)); LogicalName := ASource.LogicalName; @@ -148,6 +295,8 @@ begin if Assigned(ASource.LocalSchema) then LocalSchema := ASource.LocalSchema else begin + // ****** Inicio migración DA 5 + { with SchemaCall do begin MethodName := ASource.SchemaCall.MethodName; @@ -162,9 +311,13 @@ begin 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 MethodName := ASource.DataUpdateCall.MethodName; @@ -211,6 +364,8 @@ begin end; end; end; + } + // ****** Fin migración DA 5 with MasterParamsMappings do for i := 0 to ASource.MasterParamsMappings.Count - 1 do @@ -239,7 +394,6 @@ begin ATarget.RemoteFetchEnabled := False; end; end; - function DeltaValuesAreDifferent(const aDelta : IDADelta): boolean; var @@ -251,16 +405,7 @@ begin begin for x := 0 to (aDelta.LoggedFieldCount-1) do begin - if aDelta.LoggedFieldTypes[x] <> datBlob then - begin - try - OldNewAreDifferent := (aDelta.Changes[i].OldValues[x] <> aDelta.Changes[i].NewValues[x]); - except - // Capturar cualquier tipo de excepción de conversión de tipos - on E: EVariantTypeCastError do - OldNewAreDifferent := True; - end; - end; + OldNewAreDifferent := (aDelta.Changes[i].OldValues[x] <> aDelta.Changes[i].NewValues[x]); if OldNewAreDifferent then Break; // Abandon iteration at the first difference between old and new. @@ -273,7 +418,7 @@ begin end; -procedure CopyDataTable(ASource : TDADataTable; ATarget : TDADataTable; +procedure CopyDataTable2(ASource : TDADataTable; ATarget : TDADataTable; const OnlySelectedRows : Boolean = False); var DABin: Binary; @@ -461,14 +606,14 @@ begin if Assigned(ADetail) then begin // ¡¡¡¡¡ MUY IMPORTANTE !!!!!!!!!!!!!!!!!! - ADetail.DataTable.DisableEventHandlers; + //ADetail.DataTable.DisableEventHandlers; try ADetail.DataTable.MasterSource := AMasterDataSource; finally { Hay que activar los eventos porque dejan de funcionar las reglas de negocio al establecer la relación maestro-detalle. (Fallo de Data Abstract 3) } - ADetail.DataTable.EnableEventHandlers; + //ADetail.DataTable.EnableEventHandlers; end; end; end; diff --git a/Source/Base/Utiles/MD5.pas b/Source/Base/Utiles/uMD5.pas similarity index 96% rename from Source/Base/Utiles/MD5.pas rename to Source/Base/Utiles/uMD5.pas index 585edb50..9f13d52a 100644 --- a/Source/Base/Utiles/MD5.pas +++ b/Source/Base/Utiles/uMD5.pas @@ -10,7 +10,7 @@ { http://www.faqs.org/rfcs/rfc1321.html } {******************************************************************} -unit md5; +unit uMD5; interface diff --git a/Source/Base/Utiles/uPasswordUtils.pas b/Source/Base/Utiles/uPasswordUtils.pas index 9333b53a..13cae927 100644 --- a/Source/Base/Utiles/uPasswordUtils.pas +++ b/Source/Base/Utiles/uPasswordUtils.pas @@ -3,11 +3,11 @@ unit uPasswordUtils; interface function EncriptarPassword(const password : string): String; -function EncriptarPasswordOSC(const password : string): String; + implementation uses - MD5, SysUtils; + uMD5, SysUtils; function EncriptarPassword(const password : string): String; var @@ -19,33 +19,4 @@ begin Result := LowerCase(pass_encriptada); end; -function EncriptarPasswordOSC(const password : string): String; -var - t : TMD5Digest; - salt : String; - pass_encriptada : String; - i : integer; -begin -// for ($i=0; $i<10; $i++) { -// $password .= tep_rand(); -// } -// -// $salt = substr(md5($password), 0, 2); -// -// $password = md5($salt . $plain) . ':' . $salt; - - pass_encriptada := ''; - Randomize; - for I := 0 to 9 do - pass_encriptada := pass_encriptada + FloatToStr(Random(10000000000)); - - t := MD5String(password); - salt := Copy(MD5DigestToStr(t), 0, 2); - - t := MD5String(salt + password); - pass_encriptada := MD5DigestToStr(t); - Result := LowerCase(pass_encriptada) + ':' + salt; -end; - - end. diff --git a/Source/Base/Utiles/uSistemaFunc.pas b/Source/Base/Utiles/uSistemaFunc.pas index 1839cb51..f47dc7de 100644 --- a/Source/Base/Utiles/uSistemaFunc.pas +++ b/Source/Base/Utiles/uSistemaFunc.pas @@ -43,8 +43,7 @@ procedure Deltree(DirToKill : String; KillChoosenDir : Boolean); implementation uses - SysUtils, Windows, Dialogs, - + SysUtils, Windows, Dialogs, JclFileUtils, Messages, Classes, Graphics, Controls, Forms, StdCtrls; @@ -151,27 +150,14 @@ end; function DarVersionFichero (Executable : String) : String; var - Size, Size2: DWord; - Pt, Pt2: Pointer; + Obj : TJclFileVersionInfo; begin - Size := GetFileVersionInfoSize(PChar (Executable), Size2); - if Size > 0 then - begin - GetMem (Pt, Size); - try - GetFileVersionInfo (PChar (Executable), 0, Size, Pt); - VerQueryValue (Pt, '\', Pt2, Size2); - with TVSFixedFileInfo (Pt2^) do - begin - Result:= IntToStr (HiWord (dwFileVersionMS)) + '.' + - IntToStr (LoWord (dwFileVersionMS)) + '.' + - IntToStr (HiWord (dwFileVersionLS)) + '.' + - IntToStr (LoWord (dwFileVersionLS)); - end; - finally - FreeMem (Pt); - end; - end; + Obj := TJclFileVersionInfo.Create(Application.ExeName); + try + Result := Obj.FileVersion; + finally + FreeAndNil(Obj); + end; end; function DarFechaFichero (Executable : String) : String; diff --git a/Source/Base/dxComnD10.drc b/Source/Base/dxComnD10.drc deleted file mode 100644 index 09081cc2..00000000 --- a/Source/Base/dxComnD10.drc +++ /dev/null @@ -1,21 +0,0 @@ -/* VER180 - Generated by the Borland Delphi Pascal Compiler - because -GD or --drc was supplied to the compiler. - - This file contains compiler-generated resources that - were bound to the executable. - If this file is empty, then no compiler-generated - resources were bound to the produced executable. -*/ - -DESCRIPTION RCDATA -BEGIN - "\x4c", "\x00", "\x69", "\x00", "\x62", "\x00", "\x72", "\x00", /* 0000: L.i.b.r. */ - "\x65", "\x00", "\x72", "\x00", "\x69", "\x00", "\x61", "\x00", /* 0008: e.r.i.a. */ - "\x20", "\x00", "\x62", "\x00", "\x61", "\x00", "\x73", "\x00", /* 0010: .b.a.s. */ - "\x65", "\x00", "\x20", "\x00", "\x64", "\x00", "\x65", "\x00", /* 0018: e. .d.e. */ - "\x20", "\x00", "\x46", "\x00", "\x61", "\x00", "\x63", "\x00", /* 0020: .F.a.c. */ - "\x74", "\x00", "\x75", "\x00", "\x47", "\x00", "\x45", "\x00", /* 0028: t.u.G.E. */ - "\x53", "\x00", "\x00", "\x00" /* 0030: S... */ -END - diff --git a/Source/Base/uDataModuleBase.dfm b/Source/Base/uDataModuleBase.dfm index 3a012e38..202efa5e 100644 --- a/Source/Base/uDataModuleBase.dfm +++ b/Source/Base/uDataModuleBase.dfm @@ -2,8 +2,8 @@ object dmBase: TdmBase OldCreateOrder = True OnCreate = DAClientDataModuleCreate OnDestroy = DataModuleDestroy - Height = 352 - Width = 518 + Height = 153 + Width = 270 object SmallImages: TPngImageList PngImages = < item @@ -1617,7 +1617,7 @@ object dmBase: TdmBase KiloBytes = 'KB' MegaBytes = 'MB' GigaBytes = 'GB' - Left = 224 + Left = 184 Top = 16 end end diff --git a/Source/Base/uDataModuleBase.pas b/Source/Base/uDataModuleBase.pas index 2bd8051f..35ee011f 100644 --- a/Source/Base/uDataModuleBase.pas +++ b/Source/Base/uDataModuleBase.pas @@ -5,7 +5,7 @@ interface uses Controls, PngImageList, JvComponent, JvNavigationPane, TBXSwitcher, TBXOffice2003Theme, Classes, ImgList, - DataAbstract_Intf, uDADataTable, JvAppStorage, JvAppRegistryStorage, cxintl, + DataAbstract4_Intf, uDADataTable, JvAppStorage, JvAppRegistryStorage, cxintl, JvComponentBase, cxIntlPrintSys3; type @@ -24,7 +24,6 @@ type procedure LeerConfiguracion; public procedure SalvarConfiguracion; - function DarVersion : String; property OnThemeChange: TNotifyEvent read FOnThemeChange write FOnThemeChange; end; @@ -98,18 +97,6 @@ begin dmConfiguracion.SalvarConfiguracion; end; -function TdmBase.DarVersion: String; -var - Obj : TJclFileVersionInfo; -begin - Obj := TJclFileVersionInfo.Create(Application.ExeName); - try - Result := 'v' + Obj.FileVersion; - finally - FreeAndNil(Obj); - end; -end; - procedure TdmBase.DataModuleDestroy(Sender: TObject); begin FreeANDNIL(dmConfiguracion); diff --git a/Source/Base/uExceptions.pas b/Source/Base/uExceptions.pas deleted file mode 100644 index d3e6e852..00000000 --- a/Source/Base/uExceptions.pas +++ /dev/null @@ -1,20 +0,0 @@ -unit uExceptions; - -interface - -uses - uDADataTable; - -const - AUF_FKVIOLATION = 'violation of FOREIGN KEY'; - AUF_HAVEVALUE = 'must have a value'; - -type - IApplyUpdateFailedException = interface - ['{B090A762-3D65-405E-A810-14DB4F6E8F82}'] - procedure ShowApplyUpdateFailed (const Error: EDAApplyUpdateFailed); - end; - -implementation - -end. diff --git a/Source/Base_Group.groupproj b/Source/Base_Group.groupproj new file mode 100644 index 00000000..f28fcdfa --- /dev/null +++ b/Source/Base_Group.groupproj @@ -0,0 +1,64 @@ + + + {d51b0489-bd4f-4ed4-a8cc-05ea2af327dd} + + + + + + + + + + Default.Personality + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/Source/ClearFiles.msbuild b/Source/ClearFiles.msbuild deleted file mode 100644 index 30f4b9de..00000000 --- a/Source/ClearFiles.msbuild +++ /dev/null @@ -1,18 +0,0 @@ - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/Source/Base/uActualizacion.dfm b/Source/Cliente/Actualizacion/uActualizacion.dfm similarity index 94% rename from Source/Base/uActualizacion.dfm rename to Source/Cliente/Actualizacion/uActualizacion.dfm index 48022f02..a264311c 100644 --- a/Source/Base/uActualizacion.dfm +++ b/Source/Cliente/Actualizacion/uActualizacion.dfm @@ -255,7 +255,6 @@ object fActualizacion: TfActualizacion CheckFrequency = 0 LocalDirectory = 'update' LocalVersionInfoFileName = 'versioninfo.ini' - LocationHTTP = JvProgramVersionHTTPLocationIndy1 LocationNetwork = JvProgramVersionNetworkLocation1 LocationType = pvltHTTP UserOptions = [uoLocalDirectory, uoAllowedReleaseType, uoLocationType, uoLocationNetwork, uoLocationHTTP] @@ -266,8 +265,8 @@ object fActualizacion: TfActualizacion Left = 208 Top = 48 end - object JvProgramVersionHTTPLocationIndy1: TJvProgramVersionHTTPLocationIndy - Left = 240 + object JvProgramVersionHTTPLocation1: TJvProgramVersionHTTPLocation + Left = 232 Top = 48 end end diff --git a/Source/Base/uActualizacion.pas b/Source/Cliente/Actualizacion/uActualizacion.pas similarity index 89% rename from Source/Base/uActualizacion.pas rename to Source/Cliente/Actualizacion/uActualizacion.pas index c43d9e2f..2001f0a5 100644 --- a/Source/Base/uActualizacion.pas +++ b/Source/Cliente/Actualizacion/uActualizacion.pas @@ -28,10 +28,8 @@ interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, ExtCtrls, ComCtrls, JvComponent, JvAppStorage, - JvAppRegistryStorage, JvFormPlacement, Buttons, JvBaseDlg, JvBrowseFolder, - ActnList, JvProgramVersionCheck, JvPropertyStore, JvAppIniStorage, - IdBaseComponent, IdComponent, IdTCPConnection, IdTCPClient, IdHTTP, - uInfoProjectUtils, JvComponentBase; + JvAppRegistryStorage, JvFormPlacement, JvProgramVersionCheck, JvPropertyStore, + JvBaseDlg, JvBrowseFolder, ActnList, JvComponentBase, Buttons, uInfoProjectUtils; type TfActualizacion = class(TForm) @@ -66,7 +64,6 @@ type Label6: TLabel; edLocation: TEdit; Label7: TLabel; - JvProgramVersionHTTPLocationIndy1: TJvProgramVersionHTTPLocationIndy; procedure bDirectorioClick(Sender: TObject); procedure Action1Update(Sender: TObject); procedure FormActivate(Sender: TObject); @@ -140,7 +137,7 @@ begin end; end else begin - JvProgramVersionCheck1.LocationType := pvltHTTP; + {JvProgramVersionCheck1.LocationType := pvltHTTP; with JvProgramVersionHTTPLocationIndy1 do begin VersionInfoFileName := edFicheroConfig.Text; @@ -148,7 +145,7 @@ begin VersionInfoLocationPathList.Add(edLocation.Text); UserName := edUsuario.Text; Password := edPassword.Text; - end; + end;} end; JvProgramVersionCheck1.LocalVersionInfoFileName := 'versionlocal.ini';//edFicheroConfig.Text; diff --git a/Source/Cliente/ApplicationBase.drc b/Source/Cliente/ApplicationBase.drc new file mode 100644 index 00000000..cdb70b80 --- /dev/null +++ b/Source/Cliente/ApplicationBase.drc @@ -0,0 +1,24 @@ +/* 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:\codigo tecsitel\source\applicationbase\empresas\data\uDataModuleEmpresas.DFM */ +/* c:\codigo tecsitel\source\applicationbase\usuarios\data\uCambiarPassword.dfm */ +/* c:\codigo tecsitel\source\applicationbase\usuarios\data\uLoginForm.dfm */ +/* c:\codigo tecsitel\source\applicationbase\usuarios\data\uDataModuleUsuarios.DFM */ +/* c:\codigo tecsitel\source\applicationbase\empresas\views\uViewEmpresa.dfm */ +/* c:\codigo tecsitel\source\applicationbase\empresas\views\uEditorDatosBancariosEmpresa.dfm */ +/* c:\codigo tecsitel\source\applicationbase\empresas\views\uViewDatosBancarios.dfm */ +/* c:\codigo tecsitel\source\applicationbase\empresas\views\uEditorEmpresa.dfm */ +/* C:\Codigo Tecsitel\Source\ApplicationBase\ApplicationBase.res */ +/* C:\Codigo Tecsitel\Source\ApplicationBase\ApplicationBase.drf */ diff --git a/Source/Cliente/Base.drc b/Source/Cliente/Base.drc new file mode 100644 index 00000000..5a5f211c --- /dev/null +++ b/Source/Cliente/Base.drc @@ -0,0 +1,55 @@ +/* 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. +*/ + +#define JSDialogStrs_StrAssignSourceMustB 65520 +#define JSDialogStrs_StrYouMustAssociateA 65521 +#define JSDialogStrs_sBtnYes 65522 +#define JSDialogStrs_sBtnNo 65523 +#define JSDialogStrs_sBtnOK 65524 +#define JSDialogStrs_sBtnCancel 65525 +#define JSDialogStrs_sBtnHelp 65526 +#define JSDialogStrs_sBtnAbort 65527 +#define JSDialogStrs_sBtnRetry 65528 +#define JSDialogStrs_sBtnIgnore 65529 +#define JSDialogStrs_sBtnAll 65530 +#define JSDialogStrs_sBtnNoToAll 65531 +#define JSDialogStrs_sBtnYesToAll 65532 +#define JSDialogStrs_sBtnClose 65533 +#define JSDialogStrs_StrConfirmation 65534 +#define uClassRegistryUtils_eClassnotFound 65535 +STRINGTABLE +BEGIN + JSDialogStrs_StrAssignSourceMustB, "Assign source must be a TJsDialog" + JSDialogStrs_StrYouMustAssociateA, "You must associate a Help File with your application" + JSDialogStrs_sBtnYes, "&Yes" + JSDialogStrs_sBtnNo, "&No" + JSDialogStrs_sBtnOK, "OK" + JSDialogStrs_sBtnCancel, "Cancel" + JSDialogStrs_sBtnHelp, "&Help" + JSDialogStrs_sBtnAbort, "&Abort" + JSDialogStrs_sBtnRetry, "&Retry" + JSDialogStrs_sBtnIgnore, "&Ignore" + JSDialogStrs_sBtnAll, "&All" + JSDialogStrs_sBtnNoToAll, "N&o to All" + JSDialogStrs_sBtnYesToAll, "Yes to &All" + JSDialogStrs_sBtnClose, "&Close" + JSDialogStrs_StrConfirmation, "Confirmation" + uClassRegistryUtils_eClassnotFound, "Class \"%s\" was not found in the registry." +END + +/* C:\Codigo Tecsitel\Lib\JSDialog\mbimg.res */ +/* C:\Codigo Tecsitel\Lib\JSDialog\vistaimg.res */ +/* ..\Base\uConfigurarConexion.dfm */ +/* ..\Base\uDataModuleConexion.dfm */ +/* ..\Base\uDataModuleConfiguracion.dfm */ +/* ..\Base\uDataModuleBase.DFM */ +/* ..\Base\uActualizacion.dfm */ +/* C:\Codigo Tecsitel\Source\Base\Base.res */ +/* Base.drf */ diff --git a/Source/Base/GUIBase/GUIBase.drc b/Source/Cliente/Contactos_controller.drc similarity index 52% rename from Source/Base/GUIBase/GUIBase.drc rename to Source/Cliente/Contactos_controller.drc index 7642ac97..eeee0c01 100644 --- a/Source/Base/GUIBase/GUIBase.drc +++ b/Source/Cliente/Contactos_controller.drc @@ -1,5 +1,5 @@ -/* VER180 - Generated by the Borland Delphi Pascal Compiler +/* VER185 + Generated by the CodeGear Delphi Pascal Compiler because -GD or --drc was supplied to the compiler. This file contains compiler-generated resources that @@ -12,3 +12,5 @@ STRINGTABLE BEGIN END +/* C:\Codigo Tecsitel\Source\Modulos\Contactos\Controller\Contactos_controller.res */ +/* C:\Codigo Tecsitel\Source\Modulos\Contactos\Controller\Contactos_controller.drf */ diff --git a/Source/Cliente/FactuGES.dpr b/Source/Cliente/FactuGES.dpr index 01cb7fad..ffc937f7 100644 --- a/Source/Cliente/FactuGES.dpr +++ b/Source/Cliente/FactuGES.dpr @@ -1,11 +1,10 @@ program FactuGES; uses - ExceptionLog, Forms, Windows, SysUtils, - uActualizacion, + uFactuGES_App, uPantallaPrincipal in 'uPantallaPrincipal.pas' {fPantallaPrincipal}, uMenuUtils in 'Utiles\uMenuUtils.pas', uSplash in 'uSplash.pas' {SplashScreen}, @@ -15,8 +14,6 @@ uses uMainMenuController in 'uMainMenuController.pas', uClienteUtils in 'Utiles\uClienteUtils.pas'; - - {$R *.res} var @@ -24,16 +21,23 @@ var begin Application.Initialize; - Application.Title := 'FactuGES'; + ReportMemoryLeaksOnShutdown := True; - fActualizacion := TfActualizacion.Create(Application); + // ¡¡¡Fallo en Delphi 2007!!! + // Tengo que ponerlo a false porque si no el formulario principal no se puede poner por encima de los formularios hijos. + // Luego, en el formulario principal cambio los paramátros para obligar a que aparezca el icono en la barra de tareas. + Application.MainFormOnTaskbar := False; + + Application.Title := AppFactuGES.AppName; + +{ fActualizacion := TfActualizacion.Create(Application); try if fActualizacion.HayConfiguracion then fActualizacion.Actualizar; Version := fActualizacion.DarVersion; finally FreeAndNIL(fActualizacion); - end; + end;} Application.CreateForm(TfPantallaPrincipal, fPantallaPrincipal); Application.Run; diff --git a/Source/Cliente/FactuGES.dproj b/Source/Cliente/FactuGES.dproj new file mode 100644 index 00000000..57a9487f --- /dev/null +++ b/Source/Cliente/FactuGES.dproj @@ -0,0 +1,568 @@ + + + + {53016ac3-0937-40b6-917c-48fcd13f2260} + FactuGES.dpr + Debug + AnyCPU + PluginSDK_D10R;GUISDK_D11;Base;GUIBase;ApplicationBase + DCC32 + ..\..\Output\Debug\Cliente\FactuGES.exe + true + + + 7.0 + False + False + False + True + 0 + 3 + ..\..\Output\Release\Cliente + .\ + .\ + .\ + .\ + .\ + ..\Lib;..\Modulos\Lib + ..\Lib;..\Modulos\Lib + ..\Lib;..\Modulos\Lib + ..\Lib;..\Modulos\Lib + RELEASE + + + 7.0 + False + True + 3 + ..\..\Output\Debug\Cliente + .\ + .\ + .\ + .\ + .\ + $(BDS)\lib\Debug;$(BDS)\Lib\Debug\Indy10;T:\COMPON~1\jcl\lib\d11\debug;$(BDSCOMMONDIR)\Dcp;..\Lib;..\Modulos\Lib + $(BDS)\lib\Debug;$(BDS)\Lib\Debug\Indy10;T:\COMPON~1\jcl\lib\d11\debug;$(BDSCOMMONDIR)\Dcp;..\Lib;..\Modulos\Lib + $(BDS)\lib\Debug;$(BDS)\Lib\Debug\Indy10;T:\COMPON~1\jcl\lib\d11\debug;$(BDSCOMMONDIR)\Dcp;..\Lib;..\Modulos\Lib + $(BDS)\lib\Debug;$(BDS)\Lib\Debug\Indy10;T:\COMPON~1\jcl\lib\d11\debug;$(BDSCOMMONDIR)\Dcp;..\Lib;..\Modulos\Lib + DEBUG; + + + Delphi.Personality + VCLApplication + +T:\Codigo (Luis Leon)\Source\Modulos\Pedidos de cliente\Controller\FalseTrueFalseC:\Archivos de programa\Borland\Delphi7\Bin\TrueFalse2220FalseFalseFalseFalseFalse30821252Rodax Software S.L.2.2.2.0FactuGESFactuGES2.1.4 + CodeGear Control Panel Applet Package + CodeGear WebSnap Components + CodeGear SOAP Components + Microsoft Office XP Sample Automation Server Wrapper Components + VCL for the Web Design Package for CodeGear RAD Studio + Microsoft Office 2000 Sample Automation Server Wrapper Components + CodeGear C++Builder Internet Explorer 5 Components Package + Borland Sample Controls Design Time Package + CodeGear C++Builder Office 2000 Servers Package + CodeGear C++Builder Office XP Servers Package + FactuGES.dprFalse + + + + + MainSource + + + + + +
fPantallaPrincipal
+
+ +
SplashScreen
+
+ + + +
+
+ diff --git a/Source/Cliente/FactuGES.drc b/Source/Cliente/FactuGES.drc index 7642ac97..d7f8b7a3 100644 --- a/Source/Cliente/FactuGES.drc +++ b/Source/Cliente/FactuGES.drc @@ -1,5 +1,5 @@ -/* VER180 - Generated by the Borland Delphi Pascal Compiler +/* VER185 + Generated by the CodeGear Delphi Pascal Compiler because -GD or --drc was supplied to the compiler. This file contains compiler-generated resources that @@ -12,3 +12,10 @@ STRINGTABLE BEGIN END +/* c:\archivos de programa\codegear\rad studio\5.0\lib\WindowsXP.res */ +/* C:\Codigo Tecsitel\Lib\jvcl\JvXPCore.res */ +/* C:\Codigo Tecsitel\Source\Cliente\uSplash.dfm */ +/* C:\Codigo Tecsitel\Source\Cliente\uAcercaDe.dfm */ +/* C:\Codigo Tecsitel\Source\Cliente\uPantallaPrincipal.dfm */ +/* C:\Codigo Tecsitel\Source\Cliente\FactuGES.res */ +/* C:\Codigo Tecsitel\Source\Cliente\FactuGES.drf */ diff --git a/Source/Cliente/FactuGES.identcache b/Source/Cliente/FactuGES.identcache new file mode 100644 index 00000000..5e424217 Binary files /dev/null and b/Source/Cliente/FactuGES.identcache differ diff --git a/Source/Cliente/FactuGES.rc b/Source/Cliente/FactuGES.rc index ea1ce68a..9542e8cb 100644 --- a/Source/Cliente/FactuGES.rc +++ b/Source/Cliente/FactuGES.rc @@ -1,4 +1,4 @@ -MAINICON ICON "E:\Codigo (Luis León)\Source\Iconos\Factuges.ico" +MAINICON ICON "C:\Codigo Tecsitel\Resources\Iconos\Factuges.ico" 1 VERSIONINFO FILEVERSION 2,2,2,0 PRODUCTVERSION 2,2,2,0 diff --git a/Source/Cliente/FactuGES.res b/Source/Cliente/FactuGES.res index fbc3c2b3..19ec614f 100644 Binary files a/Source/Cliente/FactuGES.res and b/Source/Cliente/FactuGES.res differ diff --git a/Source/Cliente/FactuGES.rsb b/Source/Cliente/FactuGES.rsb new file mode 100644 index 00000000..19ec614f Binary files /dev/null and b/Source/Cliente/FactuGES.rsb differ diff --git a/Source/Cliente/FormasPago_model.drc b/Source/Cliente/FormasPago_model.drc new file mode 100644 index 00000000..7824d92d --- /dev/null +++ b/Source/Cliente/FormasPago_model.drc @@ -0,0 +1,16 @@ +/* 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. +*/ + +/* C:\Codigo Tecsitel\Lib\jvcl\JvXPCore.res */ +/* c:\archivos de programa\codegear\rad studio\5.0\lib\WindowsXP.res */ +/* Unit1.dfm */ +/* uAcercaDe.dfm */ +/* uSplash.dfm */ +/* uPantallaPrincipal.dfm */ diff --git a/Source/Cliente/JvJansD11R.drc b/Source/Cliente/JvJansD11R.drc new file mode 100644 index 00000000..48f470e0 --- /dev/null +++ b/Source/Cliente/JvJansD11R.drc @@ -0,0 +1,15 @@ +/* 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. +*/ + +/* c:\archivos de programa\codegear\rad studio\5.0\lib\WindowsXP.res */ +/* C:\Codigo Tecsitel\Lib\jvcl\JvXPCore.res */ +/* C:\Codigo Tecsitel\Source\Cliente\uSplash.dfm */ +/* C:\Codigo Tecsitel\Source\Cliente\uAcercaDe.dfm */ +/* C:\Codigo Tecsitel\Source\Cliente\uPantallaPrincipal.dfm */ diff --git a/Source/Cliente/compilar.bat b/Source/Cliente/compilar.bat new file mode 100644 index 00000000..3ddc68a3 --- /dev/null +++ b/Source/Cliente/compilar.bat @@ -0,0 +1,140 @@ +dcc32.exe -B -DDEBUG; -E..\..\Output\Debug\Cliente -GD -I..\Lib;..\Modulos\Lib;"C:\Archiv~1\EurekaLog 6\Delphi11";"c:\Archiv~1\codegear\rad studio\5.0\lib";"C:\Documents and Settings\Usuario\Mis documentos\RADSTU~1\5.0\Imports";"c:\Archiv~1\codegear\rad studio\5.0\Imports";"c:\Archiv~1\codegear\rad studio\5.0\Lib\Indy10";"C:\Documents and Settings\All Users\Documentos\RADSTU~1\5.0\Dcp";"C:\Archiv~1\REMOBJ~1\RemObjects SDK for Delphi\Dcu\D10";"C:\Archiv~1\REMOBJ~1\RemObjects SDK for Delphi\Source";"C:\Archiv~1\REMOBJ~1\Everwood\Bin";"C:\Archiv~1\REMOBJ~1\Data Abstract for Delphi\Dcu\D10";"C:\Archiv~1\REMOBJ~1\Pascal Script for Delphi\Dcu\D10";"C:\CODIGO~2\Lib\DevExpressVCL";"C:\Codigo Tecsitel\Lib\FastReport3";"C:\Codigo Tecsitel\Lib\GUISDK";"C:\Codigo Tecsitel\Lib\PngComponents";"C:\Codigo Tecsitel\Lib\cxIntlPrintSys3";"C:\Codigo Tecsitel\Lib\cxIntl5";"C:\Codigo Tecsitel\Lib\TB2k+TBX";"C:\Archiv~1\REMOBJ~1\RemObjects SDK for Delphi\Source\DataSnap";"C:\Archiv~1\REMOBJ~1\RemObjects SDK for Delphi\Source\CodeGen";"C:\Archiv~1\REMOBJ~1\RemObjects SDK for Delphi\Source\RODEC";"C:\Archiv~1\REMOBJ~1\RemObjects SDK for Delphi\Source\Synapse";"C:\Archiv~1\REMOBJ~1\RemObjects SDK for Delphi\Source\ZLib";"C:\Archiv~1\REMOBJ~1\Data Abstract for Delphi\Source";"C:\Archiv~1\REMOBJ~1\Data Abstract for Delphi\Source\Drivers";"C:\Archiv~1\REMOBJ~1\Data Abstract for Delphi\Source\IDE";"C:\Archiv~1\REMOBJ~1\RemObjects SDK for Delphi\Source\RODX";"C:\Archiv~1\REMOBJ~1\Pascal Script for Delphi\Source";"C:\Codigo Tecsitel\Lib\JCL";"C:\Codigo Tecsitel\Lib\jvcl";"C:\Codigo Tecsitel\Lib\JSDialog" -LE. -LN. -LUPluginSDK_D10R;GUISDK_D11;Base;GUIBase;Usuarios;Contactos_plugin;Empresas_plugin;Empresas_controller;Empresas_model -N0. -NH. -NO. -NS; -O..\Lib;..\Modulos\Lib;"C:\Archiv~1\EurekaLog 6\Delphi11";"c:\Archiv~1\codegear\rad studio\5.0\lib";"C:\Documents and Settings\Usuario\Mis documentos\RADSTU~1\5.0\Imports";"c:\Archiv~1\codegear\rad studio\5.0\Imports";"c:\Archiv~1\codegear\rad studio\5.0\Lib\Indy10";"C:\Documents and Settings\All Users\Documentos\RADSTU~1\5.0\Dcp";"C:\Archiv~1\REMOBJ~1\RemObjects SDK for Delphi\Dcu\D10";"C:\Archiv~1\REMOBJ~1\RemObjects SDK for Delphi\Source";"C:\Archiv~1\REMOBJ~1\Everwood\Bin";"C:\Archiv~1\REMOBJ~1\Data Abstract for Delphi\Dcu\D10";"C:\Archiv~1\REMOBJ~1\Pascal Script for Delphi\Dcu\D10";"C:\Codigo Tecsitel\Lib\DevExpressVCL";"C:\Codigo Tecsitel\Lib\FastReport3";"C:\Codigo Tecsitel\Lib\GUISDK";"C:\Codigo Tecsitel\Lib\PngComponents";"C:\Codigo Tecsitel\Lib\cxIntlPrintSys3";"C:\Codigo Tecsitel\Lib\cxIntl5";"C:\Codigo Tecsitel\Lib\TB2k+TBX";"C:\Archiv~1\REMOBJ~1\RemObjects SDK for Delphi\Source\DataSnap";"C:\Archiv~1\REMOBJ~1\RemObjects SDK for Delphi\Source\CodeGen";"C:\Archiv~1\REMOBJ~1\RemObjects SDK for Delphi\Source\RODEC";"C:\Archiv~1\REMOBJ~1\RemObjects SDK for Delphi\Source\Synapse";"C:\Archiv~1\REMOBJ~1\RemObjects SDK for Delphi\Source\ZLib";"C:\Archiv~1\REMOBJ~1\Data Abstract for Delphi\Source";"C:\Archiv~1\REMOBJ~1\Data Abstract for Delphi\Source\Drivers";"C:\Archiv~1\REMOBJ~1\Data Abstract for Delphi\Source\IDE";"C:\Archiv~1\REMOBJ~1\RemObjects SDK for Delphi\Source\RODX";"C:\Archiv~1\REMOBJ~1\Pascal Script for Delphi\Source";"C:\Codigo Tecsitel\Lib\JCL";"C:\Codigo Tecsitel\Lib\jvcl";"C:\Codigo Tecsitel\Lib\JSDialog";"C:\Archiv~1\EurekaLog 6\Delphi11";"c:\Archiv~1\codegear\rad studio\5.0\lib";"C:\Documents and Settings\Usuario\Mis documentos\RADSTU~1\5.0\Imports";"c:\Archiv~1\codegear\rad studio\5.0\Imports";"c:\Archiv~1\codegear\rad studio\5.0\Lib\Indy10";"C:\Documents and Settings\All Users\Documentos\RADSTU~1\5.0\Dcp";"C:\Archiv~1\REMOBJ~1\RemObjects SDK for Delphi\Dcu\D10";"C:\Archiv~1\REMOBJ~1\RemObjects SDK for Delphi\Source";"C:\Archiv~1\REMOBJ~1\Everwood\Bin";"C:\Archiv~1\REMOBJ~1\Data Abstract for Delphi\Dcu\D10";"C:\Archiv~1\REMOBJ~1\Pascal Script for Delphi\Dcu\D10";"C:\Codigo Tecsitel\Lib\DevExpressVCL";"C:\Codigo Tecsitel\Lib\FastReport3";"C:\Codigo Tecsitel\Lib\GUISDK";"C:\Codigo Tecsitel\Lib\PngComponents";"C:\Codigo Tecsitel\Lib\cxIntlPrintSys3";"C:\Codigo Tecsitel\Lib\cxIntl5";"C:\Codigo Tecsitel\Lib\TB2k+TBX";"C:\Archiv~1\REMOBJ~1\RemObjects SDK for Delphi\Source\DataSnap";"C:\Archiv~1\REMOBJ~1\RemObjects SDK for Delphi\Source\CodeGen";"C:\Archiv~1\REMOBJ~1\RemObjects SDK for Delphi\Source\RODEC";"C:\Archiv~1\REMOBJ~1\RemObjects SDK for Delphi\Source\Synapse";"C:\Archiv~1\REMOBJ~1\RemObjects SDK for Delphi\Source\ZLib";"C:\Archiv~1\REMOBJ~1\Data Abstract for Delphi\Source";"C:\Archiv~1\REMOBJ~1\Data Abstract for Delphi\Source\Drivers";"C:\Archiv~1\REMOBJ~1\Data Abstract for Delphi\Source\IDE";"C:\Archiv~1\REMOBJ~1\RemObjects SDK for Delphi\Source\RODX";"C:\Archiv~1\REMOBJ~1\Pascal Script for Delphi\Source";"C:\Codigo Tecsitel\Lib\JCL";"C:\Codigo Tecsitel\Lib\jvcl";"C:\Codigo Tecsitel\Lib\JSDialog" -R..\Lib;..\Modulos\Lib;"C:\Archiv~1\EurekaLog 6\Delphi11";"c:\Archiv~1\codegear\rad studio\5.0\lib";"C:\Documents and Settings\Usuario\Mis documentos\RADSTU~1\5.0\Imports";"c:\Archiv~1\codegear\rad studio\5.0\Imports";"c:\Archiv~1\codegear\rad studio\5.0\Lib\Indy10";"C:\Documents and Settings\All Users\Documentos\RADSTU~1\5.0\Dcp";"C:\Archiv~1\REMOBJ~1\RemObjects SDK for Delphi\Dcu\D10";"C:\Archiv~1\REMOBJ~1\RemObjects SDK for Delphi\Source";"C:\Archiv~1\REMOBJ~1\Everwood\Bin";"C:\Archiv~1\REMOBJ~1\Data Abstract for Delphi\Dcu\D10";"C:\Archiv~1\REMOBJ~1\Pascal Script for Delphi\Dcu\D10";"C:\Codigo Tecsitel\Lib\DevExpressVCL";"C:\Codigo Tecsitel\Lib\FastReport3";"C:\Codigo Tecsitel\Lib\GUISDK";"C:\Codigo Tecsitel\Lib\PngComponents";"C:\Codigo Tecsitel\Lib\cxIntlPrintSys3";"C:\Codigo Tecsitel\Lib\cxIntl5";"C:\Codigo Tecsitel\Lib\TB2k+TBX";"C:\Archiv~1\REMOBJ~1\RemObjects SDK for Delphi\Source\DataSnap";"C:\Archiv~1\REMOBJ~1\RemObjects SDK for Delphi\Source\CodeGen";"C:\Archiv~1\REMOBJ~1\RemObjects SDK for Delphi\Source\RODEC";"C:\Archiv~1\REMOBJ~1\RemObjects SDK for Delphi\Source\Synapse";"C:\Archiv~1\REMOBJ~1\RemObjects SDK for Delphi\Source\ZLib";"C:\Archiv~1\REMOBJ~1\Data Abstract for Delphi\Source";"C:\Archiv~1\REMOBJ~1\Data Abstract for Delphi\Source\Drivers";"C:\Archiv~1\REMOBJ~1\Data Abstract for Delphi\Source\IDE";"C:\Archiv~1\REMOBJ~1\RemObjects SDK for Delphi\Source\RODX";"C:\Archiv~1\REMOBJ~1\Pascal Script for Delphi\Source";"C:\Codigo Tecsitel\Lib\JCL";"C:\Codigo Tecsitel\Lib\jvcl";"C:\Codigo Tecsitel\Lib\JSDialog" -U..\Lib;..\Modulos\Lib;"C:\Archiv~1\EurekaLog 6\Delphi11";"c:\Archiv~1\codegear\rad studio\5.0\lib";"C:\Documents and Settings\Usuario\Mis documentos\RADSTU~1\5.0\Imports";"c:\Archiv~1\codegear\rad studio\5.0\Imports";"c:\Archiv~1\codegear\rad studio\5.0\Lib\Indy10";"C:\Documents and Settings\All Users\Documentos\RADSTU~1\5.0\Dcp";"C:\Archiv~1\REMOBJ~1\RemObjects SDK for Delphi\Dcu\D10";"C:\Archiv~1\REMOBJ~1\RemObjects SDK for Delphi\Source";"C:\Archiv~1\REMOBJ~1\Everwood\Bin";"C:\Archiv~1\REMOBJ~1\Data Abstract for Delphi\Dcu\D10";"C:\Archiv~1\REMOBJ~1\Pascal Script for Delphi\Dcu\D10";"C:\Codigo Tecsitel\Lib\DevExpressVCL";"C:\Codigo Tecsitel\Lib\FastReport3";"C:\Codigo Tecsitel\Lib\GUISDK";"C:\Codigo Tecsitel\Lib\PngComponents";"C:\Codigo Tecsitel\Lib\cxIntlPrintSys3";"C:\Codigo Tecsitel\Lib\cxIntl5";"C:\Codigo Tecsitel\Lib\TB2k+TBX";"C:\Archiv~1\REMOBJ~1\RemObjects SDK for Delphi\Source\DataSnap";"C:\Archiv~1\REMOBJ~1\RemObjects SDK for Delphi\Source\CodeGen";"C:\Archiv~1\REMOBJ~1\RemObjects SDK for Delphi\Source\RODEC";"C:\Archiv~1\REMOBJ~1\RemObjects SDK for Delphi\Source\Synapse";"C:\Archiv~1\REMOBJ~1\RemObjects SDK for Delphi\Source\ZLib";"C:\Archiv~1\REMOBJ~1\Data Abstract for Delphi\Source";"C:\Archiv~1\REMOBJ~1\Data Abstract for Delphi\Source\Drivers";"C:\Archiv~1\REMOBJ~1\Data Abstract for Delphi\Source\IDE";"C:\Archiv~1\REMOBJ~1\RemObjects SDK for Delphi\Source\RODX";"C:\Archiv~1\REMOBJ~1\Pascal Script for Delphi\Source";"C:\Codigo Tecsitel\Lib\JCL";"C:\Codigo Tecsitel\Lib\jvcl";"C:\Codigo Tecsitel\Lib\JSDialog" --no-config -$O- -$W+ FactuGES.dpr + + +GOTO EXIT + +REM dcc32.exe -B -DDEBUG; -E..\..\Output\Debug\Cliente -GD -IC:\Archiv~1\CodeGear\RADSTU~1\5.0\Lib;C:\Archiv~1\CodeGear\RADSTU~1\5.0\Imports;C:\Archiv~1\CodeGear\RADSTU~1\5.0\Lib\Indy10;C:\CODIGO~2\Lib;C:\CODIGO~2\Lib\RemObjects\RemObjects_SDK;C:\CODIGO~2\Lib\RemObjects\Data_Abstract;C:\CODIGO~2\Lib\CCPack;C:\CODIGO~2\Lib\CFPack;C:\CODIGO~2\Lib\GUISDK;C:\CODIGO~2\Lib\PluginSDK;C:\CODIGO~2\Lib\DevExpressVCL;C:\CODIGO~2\Lib\FastReport3;C:\CODIGO~2\Lib\JCL;C:\CODIGO~2\Lib\JVCL;C:\CODIGO~2\Lib\PngComponents;C:\CODIGO~2\Lib\cxIntl5;C:\CODIGO~2\Lib\cxIntlPrintSys3;C:\CODIGO~2\Lib\TB2k+TBX;C:\CODIGO~2\Lib\Mustangpeak\MPCommonLib;C:\CODIGO~2\Lib\Mustangpeak\EasyListview;C:\CODIGO~2\Lib\JSDialog;;C:\CODIGO~2\Source\Lib -LE. -LN. -N0. -NH. -NO. -NS; -OC:\Archiv~1\CodeGear\RADSTU~1\5.0\Lib;C:\Archiv~1\CodeGear\RADSTU~1\5.0\Imports;C:\Archiv~1\CodeGear\RADSTU~1\5.0\Lib\Indy10;C:\CODIGO~2\Lib;C:\CODIGO~2\Lib\RemObjects\RemObjects_SDK;C:\CODIGO~2\Lib\RemObjects\Data_Abstract;C:\CODIGO~2\Lib\CCPack;C:\CODIGO~2\Lib\CFPack;C:\CODIGO~2\Lib\GUISDK;C:\CODIGO~2\Lib\PluginSDK;C:\CODIGO~2\Lib\DevExpressVCL;C:\CODIGO~2\Lib\FastReport3;C:\CODIGO~2\Lib\JCL;C:\CODIGO~2\Lib\JVCL;C:\CODIGO~2\Lib\PngComponents;C:\CODIGO~2\Lib\cxIntl5;C:\CODIGO~2\Lib\cxIntlPrintSys3;C:\CODIGO~2\Lib\TB2k+TBX;C:\CODIGO~2\Lib\Mustangpeak\MPCommonLib;C:\CODIGO~2\Lib\Mustangpeak\EasyListview;C:\CODIGO~2\Lib\JSDialog;;C:\CODIGO~2\Source\Lib-RC:\Archiv~1\CodeGear\RADSTU~1\5.0\Lib;C:\Archiv~1\CodeGear\RADSTU~1\5.0\Imports;C:\Archiv~1\CodeGear\RADSTU~1\5.0\Lib\Indy10;C:\CODIGO~2\Lib;C:\CODIGO~2\Lib\RemObjects\RemObjects_SDK;C:\CODIGO~2\Lib\RemObjects\Data_Abstract;C:\CODIGO~2\Lib\CCPack;C:\CODIGO~2\Lib\CFPack;C:\CODIGO~2\Lib\GUISDK;C:\CODIGO~2\Lib\PluginSDK;C:\CODIGO~2\Lib\DevExpressVCL;C:\CODIGO~2\Lib\FastReport3;C:\CODIGO~2\Lib\JCL;C:\CODIGO~2\Lib\JVCL;C:\CODIGO~2\Lib\PngComponents;C:\CODIGO~2\Lib\cxIntl5;C:\CODIGO~2\Lib\cxIntlPrintSys3;C:\CODIGO~2\Lib\TB2k+TBX;C:\CODIGO~2\Lib\Mustangpeak\MPCommonLib;C:\CODIGO~2\Lib\Mustangpeak\EasyListview;C:\CODIGO~2\Lib\JSDialog;;C:\CODIGO~2\Source\Lib -UC:\Archiv~1\CodeGear\RADSTU~1\5.0\Lib;C:\Archiv~1\CodeGear\RADSTU~1\5.0\Imports;C:\Archiv~1\CodeGear\RADSTU~1\5.0\Lib\Indy10;C:\CODIGO~2\Lib;C:\CODIGO~2\Lib\RemObjects\RemObjects_SDK;C:\CODIGO~2\Lib\RemObjects\Data_Abstract;C:\CODIGO~2\Lib\CCPack;C:\CODIGO~2\Lib\CFPack;C:\CODIGO~2\Lib\GUISDK;C:\CODIGO~2\Lib\PluginSDK;C:\CODIGO~2\Lib\DevExpressVCL;C:\CODIGO~2\Lib\FastReport3;C:\CODIGO~2\Lib\JCL;C:\CODIGO~2\Lib\JVCL;C:\CODIGO~2\Lib\PngComponents;C:\CODIGO~2\Lib\cxIntl5;C:\CODIGO~2\Lib\cxIntlPrintSys3;C:\CODIGO~2\Lib\TB2k+TBX;C:\CODIGO~2\Lib\Mustangpeak\MPCommonLib;C:\CODIGO~2\Lib\Mustangpeak\EasyListview;C:\CODIGO~2\Lib\JSDialog;;C:\CODIGO~2\Source\Lib --no-config -$O- -$W+ FactuGES.dpr + + +dcc32.exe +-B +-DDEBUG; +-E..\..\Output\Debug\Cliente +-GD +-I..\Lib;..\Modulos\Lib;"C:\Archiv~1\EurekaLog 6\Delphi11";"c:\Archiv~1\codegear\rad studio\5.0\lib";"C:\Documents and Settings\Usuario\Mis documentos\RADSTU~1\5.0\Imports";"c:\Archiv~1\codegear\rad studio\5.0\Imports";"c:\Archiv~1\codegear\rad studio\5.0\Lib\Indy10";"C:\Documents and Settings\All Users\Documentos\RADSTU~1\5.0\Dcp";"C:\Archiv~1\REMOBJ~1\RemObjects SDK for Delphi\Dcu\D10";"C:\Archiv~1\REMOBJ~1\RemObjects SDK for Delphi\Source";"C:\Archiv~1\REMOBJ~1\Everwood\Bin";"C:\Archiv~1\REMOBJ~1\Data Abstract for Delphi\Dcu\D10";"C:\Archiv~1\REMOBJ~1\Pascal Script for Delphi\Dcu\D10";"C:\Codigo~2\Lib\DevExpressVCL";"C:\Codigo~2\Lib\FastReport3";"C:\Codigo~2\Lib\GUISDK";"C:\Codigo~2\Lib\PngComponents";"C:\Codigo~2\Lib\cxIntlPrintSys3";"C:\Codigo~2\Lib\cxIntl5";"C:\Codigo~2\Lib\TB2k+TBX";"C:\Archiv~1\REMOBJ~1\RemObjects SDK for Delphi\Source\DataSnap";"C:\Archiv~1\REMOBJ~1\RemObjects SDK for Delphi\Source\CodeGen";"C:\Archiv~1\REMOBJ~1\RemObjects SDK for Delphi\Source\RODEC";"C:\Archiv~1\REMOBJ~1\RemObjects SDK for Delphi\Source\Synapse";"C:\Archiv~1\REMOBJ~1\RemObjects SDK for Delphi\Source\ZLib";"C:\Archiv~1\REMOBJ~1\Data Abstract for Delphi\Source";"C:\Archiv~1\REMOBJ~1\Data Abstract for Delphi\Source\Drivers";"C:\Archiv~1\REMOBJ~1\Data Abstract for Delphi\Source\IDE";"C:\Archiv~1\REMOBJ~1\RemObjects SDK for Delphi\Source\RODX";"C:\Archiv~1\REMOBJ~1\Pascal Script for Delphi\Source";"C:\Codigo~2\Lib\JCL";"C:\Codigo~2\Lib\jvcl";"C:\Codigo~2\Lib\JSDialog" +-LE. +-LN. +-N0. +-NH. +-NO. +-NS; +-OC:\Archiv~1\CodeGear\RADSTU~1\5.0\Lib;C:\Archiv~1\CodeGear\RADSTU~1\5.0\Imports;C:\Archiv~1\CodeGear\RADSTU~1\5.0\Lib\Indy10;C:\CODIGO~2\Lib;C:\CODIGO~2\Lib\RemObjects\RemObjects_SDK;C:\CODIGO~2\Lib\RemObjects\Data_Abstract;C:\CODIGO~2\Lib\CCPack;C:\CODIGO~2\Lib\CFPack;C:\CODIGO~2\Lib\GUISDK;C:\CODIGO~2\Lib\PluginSDK;C:\CODIGO~2\Lib\DevExpressVCL;C:\CODIGO~2\Lib\FastReport3;C:\CODIGO~2\Lib\JCL;C:\CODIGO~2\Lib\JVCL;C:\CODIGO~2\Lib\PngComponents;C:\CODIGO~2\Lib\cxIntl5;C:\CODIGO~2\Lib\cxIntlPrintSys3;C:\CODIGO~2\Lib\TB2k+TBX;C:\CODIGO~2\Lib\Mustangpeak\MPCommonLib;C:\CODIGO~2\Lib\Mustangpeak\EasyListview;C:\CODIGO~2\Lib\JSDialog;;C:\CODIGO~2\Source\Lib-RC:\Archiv~1\CodeGear\RADSTU~1\5.0\Lib;C:\Archiv~1\CodeGear\RADSTU~1\5.0\Imports;C:\Archiv~1\CodeGear\RADSTU~1\5.0\Lib\Indy10;C:\CODIGO~2\Lib;C:\CODIGO~2\Lib\RemObjects\RemObjects_SDK;C:\CODIGO~2\Lib\RemObjects\Data_Abstract;C:\CODIGO~2\Lib\CCPack;C:\CODIGO~2\Lib\CFPack;C:\CODIGO~2\Lib\GUISDK;C:\CODIGO~2\Lib\PluginSDK;C:\CODIGO~2\Lib\DevExpressVCL;C:\CODIGO~2\Lib\FastReport3;C:\CODIGO~2\Lib\JCL;C:\CODIGO~2\Lib\JVCL;C:\CODIGO~2\Lib\PngComponents;C:\CODIGO~2\Lib\cxIntl5;C:\CODIGO~2\Lib\cxIntlPrintSys3;C:\CODIGO~2\Lib\TB2k+TBX;C:\CODIGO~2\Lib\Mustangpeak\MPCommonLib;C:\CODIGO~2\Lib\Mustangpeak\EasyListview;C:\CODIGO~2\Lib\JSDialog;;C:\CODIGO~2\Source\Lib +-UC:\Archiv~1\CodeGear\RADSTU~1\5.0\Lib;C:\Archiv~1\CodeGear\RADSTU~1\5.0\Imports;C:\Archiv~1\CodeGear\RADSTU~1\5.0\Lib\Indy10;C:\CODIGO~2\Lib;C:\CODIGO~2\Lib\RemObjects\RemObjects_SDK;C:\CODIGO~2\Lib\RemObjects\Data_Abstract;C:\CODIGO~2\Lib\CCPack;C:\CODIGO~2\Lib\CFPack;C:\CODIGO~2\Lib\GUISDK;C:\CODIGO~2\Lib\PluginSDK;C:\CODIGO~2\Lib\DevExpressVCL;C:\CODIGO~2\Lib\FastReport3;C:\CODIGO~2\Lib\JCL;C:\CODIGO~2\Lib\JVCL;C:\CODIGO~2\Lib\PngComponents;C:\CODIGO~2\Lib\cxIntl5;C:\CODIGO~2\Lib\cxIntlPrintSys3;C:\CODIGO~2\Lib\TB2k+TBX;C:\CODIGO~2\Lib\Mustangpeak\MPCommonLib;C:\CODIGO~2\Lib\Mustangpeak\EasyListview;C:\CODIGO~2\Lib\JSDialog;;C:\CODIGO~2\Source\Lib +--no-config +-$O- +-$W+ FactuGES.dpr + + + +goto exit + + +CodeGear Delphi for Win32 compiler version 18.5 +Copyright (c) 1983,2007 CodeGear + +Syntax: dcc32 [options] filename [options] + + -A= = Set unit alias + -B = Build all units + -CC = Console target + -CG = GUI target + -D = Define conditionals + -E = EXE/DLL output directory + -F = Find error + -GD = Detailed map file + -GP = Map file with publics + -GS = Map file with segments + -H = Output hint messages + -I = Include directories + -J = Generate .obj file + -JPHNE = Generate C++ .obj file, .hpp file, in namespace, export all + -JL = Generate package .lib, .bpi, and all .hpp files for C++ + -K = Set image base addr + -LE = package .bpl output directory + -LN = package .dcp output directory + -LU = Use package + -M = Make modified units + -N0 = unit .dcu output directory + -NH = unit .hpp output directory + -NO = unit .obj output directory + -NB = unit .bpi output directory + -NS = Namespace search path + -O = Object directories + -P = look for 8.3 file names also + -Q = Quiet compile + -R = Resource directories + -U = Unit directories + -V = Debug information in EXE + -VR = Generate remote debug (RSM) + -W[+|-][warn_id] = Output warning messages + -Z = Output 'never build' DCPs + -$ = Compiler directive + --help = Show this help screen + --version = Show name and version + --codepage: = specify source file encoding + --default-namespace: = set namespace + --depends = output unit dependency information + --doc = output XML documentation + --drc = output resource string .drc file + --no-config = do not load default DCC32.CFG file + --description: = set executable description +Compiler switches: -$ (defaults are shown below) + A8 Aligned record fields + B- Full boolean Evaluation + C+ Evaluate assertions at runtime + D+ Debug information + G+ Use imported data references + H+ Use long strings by default + I+ I/O checking + J- Writeable structured consts + L+ Local debug symbols + M- Runtime type info + O+ Optimization + P+ Open string params + Q- Integer overflow checking + R- Range checking + T- Typed @ operator + U- Pentium(tm)-safe divide + V+ Strict var-strings + W- Generate stack frames + X+ Extended syntax + Y+ Symbol reference info + Z1 Minimum size of enum types + +base_dcp_path = C:\CODIGO~2\Source\Lib +library_3rdparty_path = C:\Archiv~1\CodeGear\RADSTU~1\5.0\Lib\Indy10;C:\CODIGO~2\Lib;C:\CODIGO~2\Lib\RemObjects\RemObjects_SDK;C:\CODIGO~2\Lib\RemObjects\Data_Abstract;C:\CODIGO~2\Lib\CCPack;C:\CODIGO~2\Lib\CFPack;C:\CODIGO~2\Lib\GUISDK;C:\CODIGO~2\Lib\PluginSDK;C:\CODIGO~2\Lib\DevExpressVCL;C:\CODIGO~2\Lib\FastReport3;C:\CODIGO~2\Lib\JCL;C:\CODIGO~2\Lib\JVCL;C:\CODIGO~2\Lib\PngComponents;C:\CODIGO~2\Lib\cxIntl5;C:\CODIGO~2\Lib\cxIntlPrintSys3;C:\CODIGO~2\Lib\TB2k+TBX;C:\CODIGO~2\Lib\Mustangpeak\MPCommonLib;C:\CODIGO~2\Lib\Mustangpeak\EasyListview;C:\CODIGO~2\Lib\JSDialog; +library_path = C:\Archiv~1\CodeGear\RADSTU~1\5.0\Lib;C:\Archiv~1\CodeGear\RADSTU~1\5.0\Imports;C:\Archiv~1\CodeGear\RADSTU~1\5.0\Lib\Indy10;C:\CODIGO~2\Lib;C:\CODIGO~2\Lib\RemObjects\RemObjects_SDK;C:\CODIGO~2\Lib\RemObjects\Data_Abstract;C:\CODIGO~2\Lib\CCPack;C:\CODIGO~2\Lib\CFPack;C:\CODIGO~2\Lib\GUISDK;C:\CODIGO~2\Lib\PluginSDK;C:\CODIGO~2\Lib\DevExpressVCL;C:\CODIGO~2\Lib\FastReport3;C:\CODIGO~2\Lib\JCL;C:\CODIGO~2\Lib\JVCL;C:\CODIGO~2\Lib\PngComponents;C:\CODIGO~2\Lib\cxIntl5;C:\CODIGO~2\Lib\cxIntlPrintSys3;C:\CODIGO~2\Lib\TB2k+TBX;C:\CODIGO~2\Lib\Mustangpeak\MPCommonLib;C:\CODIGO~2\Lib\Mustangpeak\EasyListview;C:\CODIGO~2\Lib\JSDialog;;C:\CODIGO~2\Source\Lib +modules_dcp_path = C:\CODIGO~2\Source\Modulos\Lib +output_path = C:\CODIGO~2\Output\Debug +package_path = C:\CODIGO~2\Output\Debug\Cliente +project_path = C:\CODIGO~2 +source_path = C:\CODIGO~2\Source + + + +:hola + +dcc32.exe +-B +-DDEBUG; +-E..\..\Output\Debug\Cliente +-GD +-I..\Lib;..\Modulos\Lib;"C:\Archiv~1\EurekaLog 6\Delphi11";"c:\Archiv~1\codegear\rad studio\5.0\lib";"C:\Documents and Settings\Usuario\Mis documentos\RADSTU~1\5.0\Imports";"c:\Archiv~1\codegear\rad studio\5.0\Imports";"c:\Archiv~1\codegear\rad studio\5.0\Lib\Indy10";"C:\Documents and Settings\All Users\Documentos\RADSTU~1\5.0\Dcp";"C:\Archiv~1\REMOBJ~1\RemObjects SDK for Delphi\Dcu\D10";"C:\Archiv~1\REMOBJ~1\RemObjects SDK for Delphi\Source";"C:\Archiv~1\REMOBJ~1\Everwood\Bin";"C:\Archiv~1\REMOBJ~1\Data Abstract for Delphi\Dcu\D10";"C:\Archiv~1\REMOBJ~1\Pascal Script for Delphi\Dcu\D10";"C:\Codigo~2\Lib\DevExpressVCL";"C:\Codigo~2\Lib\FastReport3";"C:\Codigo~2\Lib\GUISDK";"C:\Codigo~2\Lib\PngComponents";"C:\Codigo~2\Lib\cxIntlPrintSys3";"C:\Codigo~2\Lib\cxIntl5";"C:\Codigo~2\Lib\TB2k+TBX";"C:\Archiv~1\REMOBJ~1\RemObjects SDK for Delphi\Source\DataSnap";"C:\Archiv~1\REMOBJ~1\RemObjects SDK for Delphi\Source\CodeGen";"C:\Archiv~1\REMOBJ~1\RemObjects SDK for Delphi\Source\RODEC";"C:\Archiv~1\REMOBJ~1\RemObjects SDK for Delphi\Source\Synapse";"C:\Archiv~1\REMOBJ~1\RemObjects SDK for Delphi\Source\ZLib";"C:\Archiv~1\REMOBJ~1\Data Abstract for Delphi\Source";"C:\Archiv~1\REMOBJ~1\Data Abstract for Delphi\Source\Drivers";"C:\Archiv~1\REMOBJ~1\Data Abstract for Delphi\Source\IDE";"C:\Archiv~1\REMOBJ~1\RemObjects SDK for Delphi\Source\RODX";"C:\Archiv~1\REMOBJ~1\Pascal Script for Delphi\Source";"C:\Codigo~2\Lib\JCL";"C:\Codigo~2\Lib\jvcl";"C:\Codigo~2\Lib\JSDialog" +-LE. +-LN. +-LUPluginSDK_D10R;GUISDK_D11;Base;GUIBase;Usuarios;Contactos_plugin;Empresas_plugin;Empresas_controller;Empresas_model +-N0. +-NH. +-NO. +-NS; +-O..\Lib;..\Modulos\Lib;"C:\Archiv~1\EurekaLog 6\Delphi11";"c:\Archiv~1\codegear\rad studio\5.0\lib";"C:\Documents and Settings\Usuario\Mis documentos\RADSTU~1\5.0\Imports";"c:\Archiv~1\codegear\rad studio\5.0\Imports";"c:\Archiv~1\codegear\rad studio\5.0\Lib\Indy10";"C:\Documents and Settings\All Users\Documentos\RADSTU~1\5.0\Dcp";"C:\Archiv~1\REMOBJ~1\RemObjects SDK for Delphi\Dcu\D10";"C:\Archiv~1\REMOBJ~1\RemObjects SDK for Delphi\Source";"C:\Archiv~1\REMOBJ~1\Everwood\Bin";"C:\Archiv~1\REMOBJ~1\Data Abstract for Delphi\Dcu\D10";"C:\Archiv~1\REMOBJ~1\Pascal Script for Delphi\Dcu\D10";"C:\Codigo~2\Lib\DevExpressVCL";"C:\Codigo~2\Lib\FastReport3";"C:\Codigo~2\Lib\GUISDK";"C:\Codigo~2\Lib\PngComponents";"C:\Codigo~2\Lib\cxIntlPrintSys3";"C:\Codigo~2\Lib\cxIntl5";"C:\Codigo~2\Lib\TB2k+TBX";"C:\Archiv~1\REMOBJ~1\RemObjects SDK for Delphi\Source\DataSnap";"C:\Archiv~1\REMOBJ~1\RemObjects SDK for Delphi\Source\CodeGen";"C:\Archiv~1\REMOBJ~1\RemObjects SDK for Delphi\Source\RODEC";"C:\Archiv~1\REMOBJ~1\RemObjects SDK for Delphi\Source\Synapse";"C:\Archiv~1\REMOBJ~1\RemObjects SDK for Delphi\Source\ZLib";"C:\Archiv~1\REMOBJ~1\Data Abstract for Delphi\Source";"C:\Archiv~1\REMOBJ~1\Data Abstract for Delphi\Source\Drivers";"C:\Archiv~1\REMOBJ~1\Data Abstract for Delphi\Source\IDE";"C:\Archiv~1\REMOBJ~1\RemObjects SDK for Delphi\Source\RODX";"C:\Archiv~1\REMOBJ~1\Pascal Script for Delphi\Source";"C:\Codigo~2\Lib\JCL";"C:\Codigo~2\Lib\jvcl";"C:\Codigo~2\Lib\JSDialog";"C:\Archiv~1\EurekaLog 6\Delphi11";"c:\Archiv~1\codegear\rad studio\5.0\lib";"C:\Documents and Settings\Usuario\Mis documentos\RADSTU~1\5.0\Imports";"c:\Archiv~1\codegear\rad studio\5.0\Imports";"c:\Archiv~1\codegear\rad studio\5.0\Lib\Indy10";"C:\Documents and Settings\All Users\Documentos\RADSTU~1\5.0\Dcp";"C:\Archiv~1\REMOBJ~1\RemObjects SDK for Delphi\Dcu\D10";"C:\Archiv~1\REMOBJ~1\RemObjects SDK for Delphi\Source";"C:\Archiv~1\REMOBJ~1\Everwood\Bin";"C:\Archiv~1\REMOBJ~1\Data Abstract for Delphi\Dcu\D10";"C:\Archiv~1\REMOBJ~1\Pascal Script for Delphi\Dcu\D10";"C:\Codigo~2\Lib\DevExpressVCL";"C:\Codigo~2\Lib\FastReport3";"C:\Codigo~2\Lib\GUISDK";"C:\Codigo~2\Lib\PngComponents";"C:\Codigo~2\Lib\cxIntlPrintSys3";"C:\Codigo~2\Lib\cxIntl5";"C:\Codigo~2\Lib\TB2k+TBX";"C:\Archiv~1\REMOBJ~1\RemObjects SDK for Delphi\Source\DataSnap";"C:\Archiv~1\REMOBJ~1\RemObjects SDK for Delphi\Source\CodeGen";"C:\Archiv~1\REMOBJ~1\RemObjects SDK for Delphi\Source\RODEC";"C:\Archiv~1\REMOBJ~1\RemObjects SDK for Delphi\Source\Synapse";"C:\Archiv~1\REMOBJ~1\RemObjects SDK for Delphi\Source\ZLib";"C:\Archiv~1\REMOBJ~1\Data Abstract for Delphi\Source";"C:\Archiv~1\REMOBJ~1\Data Abstract for Delphi\Source\Drivers";"C:\Archiv~1\REMOBJ~1\Data Abstract for Delphi\Source\IDE";"C:\Archiv~1\REMOBJ~1\RemObjects SDK for Delphi\Source\RODX";"C:\Archiv~1\REMOBJ~1\Pascal Script for Delphi\Source";"C:\Codigo~2\Lib\JCL";"C:\Codigo~2\Lib\jvcl";"C:\Codigo~2\Lib\JSDialog" +-R..\Lib;..\Modulos\Lib;"C:\Archiv~1\EurekaLog 6\Delphi11";"c:\Archiv~1\codegear\rad studio\5.0\lib";"C:\Documents and Settings\Usuario\Mis documentos\RADSTU~1\5.0\Imports";"c:\Archiv~1\codegear\rad studio\5.0\Imports";"c:\Archiv~1\codegear\rad studio\5.0\Lib\Indy10";"C:\Documents and Settings\All Users\Documentos\RADSTU~1\5.0\Dcp";"C:\Archiv~1\REMOBJ~1\RemObjects SDK for Delphi\Dcu\D10";"C:\Archiv~1\REMOBJ~1\RemObjects SDK for Delphi\Source";"C:\Archiv~1\REMOBJ~1\Everwood\Bin";"C:\Archiv~1\REMOBJ~1\Data Abstract for Delphi\Dcu\D10";"C:\Archiv~1\REMOBJ~1\Pascal Script for Delphi\Dcu\D10";"C:\Codigo~2\Lib\DevExpressVCL";"C:\Codigo~2\Lib\FastReport3";"C:\Codigo~2\Lib\GUISDK";"C:\Codigo~2\Lib\PngComponents";"C:\Codigo~2\Lib\cxIntlPrintSys3";"C:\Codigo~2\Lib\cxIntl5";"C:\Codigo~2\Lib\TB2k+TBX";"C:\Archiv~1\REMOBJ~1\RemObjects SDK for Delphi\Source\DataSnap";"C:\Archiv~1\REMOBJ~1\RemObjects SDK for Delphi\Source\CodeGen";"C:\Archiv~1\REMOBJ~1\RemObjects SDK for Delphi\Source\RODEC";"C:\Archiv~1\REMOBJ~1\RemObjects SDK for Delphi\Source\Synapse";"C:\Archiv~1\REMOBJ~1\RemObjects SDK for Delphi\Source\ZLib";"C:\Archiv~1\REMOBJ~1\Data Abstract for Delphi\Source";"C:\Archiv~1\REMOBJ~1\Data Abstract for Delphi\Source\Drivers";"C:\Archiv~1\REMOBJ~1\Data Abstract for Delphi\Source\IDE";"C:\Archiv~1\REMOBJ~1\RemObjects SDK for Delphi\Source\RODX";"C:\Archiv~1\REMOBJ~1\Pascal Script for Delphi\Source";"C:\Codigo~2\Lib\JCL";"C:\Codigo~2\Lib\jvcl";"C:\Codigo~2\Lib\JSDialog" +-U..\Lib;..\Modulos\Lib;"C:\Archiv~1\EurekaLog 6\Delphi11";"c:\Archiv~1\codegear\rad studio\5.0\lib";"C:\Documents and Settings\Usuario\Mis documentos\RADSTU~1\5.0\Imports";"c:\Archiv~1\codegear\rad studio\5.0\Imports";"c:\Archiv~1\codegear\rad studio\5.0\Lib\Indy10";"C:\Documents and Settings\All Users\Documentos\RADSTU~1\5.0\Dcp";"C:\Archiv~1\REMOBJ~1\RemObjects SDK for Delphi\Dcu\D10";"C:\Archiv~1\REMOBJ~1\RemObjects SDK for Delphi\Source";"C:\Archiv~1\REMOBJ~1\Everwood\Bin";"C:\Archiv~1\REMOBJ~1\Data Abstract for Delphi\Dcu\D10";"C:\Archiv~1\REMOBJ~1\Pascal Script for Delphi\Dcu\D10";"C:\Codigo~2\Lib\DevExpressVCL";"C:\Codigo~2\Lib\FastReport3";"C:\Codigo~2\Lib\GUISDK";"C:\Codigo~2\Lib\PngComponents";"C:\Codigo~2\Lib\cxIntlPrintSys3";"C:\Codigo~2\Lib\cxIntl5";"C:\Codigo~2\Lib\TB2k+TBX";"C:\Archiv~1\REMOBJ~1\RemObjects SDK for Delphi\Source\DataSnap";"C:\Archiv~1\REMOBJ~1\RemObjects SDK for Delphi\Source\CodeGen";"C:\Archiv~1\REMOBJ~1\RemObjects SDK for Delphi\Source\RODEC";"C:\Archiv~1\REMOBJ~1\RemObjects SDK for Delphi\Source\Synapse";"C:\Archiv~1\REMOBJ~1\RemObjects SDK for Delphi\Source\ZLib";"C:\Archiv~1\REMOBJ~1\Data Abstract for Delphi\Source";"C:\Archiv~1\REMOBJ~1\Data Abstract for Delphi\Source\Drivers";"C:\Archiv~1\REMOBJ~1\Data Abstract for Delphi\Source\IDE";"C:\Archiv~1\REMOBJ~1\RemObjects SDK for Delphi\Source\RODX";"C:\Archiv~1\REMOBJ~1\Pascal Script for Delphi\Source";"C:\Codigo~2\Lib\JCL";"C:\Codigo~2\Lib\jvcl";"C:\Codigo~2\Lib\JSDialog" +--no-config +-$O- +-$W+ FactuGES.dpr + +:exit + + + diff --git a/Source/Cliente/mainicon.ico b/Source/Cliente/mainicon.ico new file mode 100644 index 00000000..ccc92276 Binary files /dev/null and b/Source/Cliente/mainicon.ico differ diff --git a/Source/Cliente/uMainMenuController.pas b/Source/Cliente/uMainMenuController.pas index 45381c1d..777d50a4 100644 --- a/Source/Cliente/uMainMenuController.pas +++ b/Source/Cliente/uMainMenuController.pas @@ -36,9 +36,8 @@ var implementation uses - Dialogs, PNGImage, uModuleController, uPluginEmpresas, - uBizEmpresas, schEmpresasClient_Intf, - uMenuUtils, uDataModuleUsuarios; + Dialogs, PNGImage, uModuleController, uFactuGES_App, + uBizEmpresas, uMenuUtils; { TMainMenuController } @@ -65,7 +64,7 @@ end; procedure TMainMenuController.CambiarEmpresaClick(Sender: TObject); begin - dmUsuarios.IDEmpresaActual := (Sender as TMenuItem).Tag; + AppFactuGES.CambarEmpresa((Sender as TMenuItem).Tag); end; procedure TMainMenuController.InitMainMenu; @@ -80,7 +79,7 @@ begin if Assigned(AListaEmpresasItem) then begin - AEmpresas := FMainForm.EmpresasController.BuscarTodos; + AEmpresas := AppFactuGES.EmpresasController.BuscarTodos; try AEmpresas.DataTable.Active := True; while not AEmpresas.DataTable.EOF do diff --git a/Source/Cliente/uNavPaneController.pas b/Source/Cliente/uNavPaneController.pas index b47ccadd..382f313f 100644 --- a/Source/Cliente/uNavPaneController.pas +++ b/Source/Cliente/uNavPaneController.pas @@ -46,7 +46,7 @@ implementation uses Dialogs, uModuleController, uAcercaDe, uNavPaneUtils, uMainMenuController, uClienteUtils, Menus, uDataModuleBase, - uBizEmpresas, schEmpresasClient_Intf, JvPageList; + uFactuGES_App, uBizEmpresas, JvPageList; { TNavPaneController } @@ -124,7 +124,7 @@ begin end; // Crear páginas con empresas y rellenarlas - AEmpresas := FMainForm.EmpresasController.BuscarTodos; + AEmpresas := AppFactuGES.EmpresasController.BuscarTodos; try AEmpresas.DataTable.Active := True; while not AEmpresas.DataTable.EOF do diff --git a/Source/Cliente/uPantallaPrincipal.dfm b/Source/Cliente/uPantallaPrincipal.dfm index 488c1c56..47f5d928 100644 --- a/Source/Cliente/uPantallaPrincipal.dfm +++ b/Source/Cliente/uPantallaPrincipal.dfm @@ -2,8 +2,8 @@ object fPantallaPrincipal: TfPantallaPrincipal Left = 358 Top = 250 Caption = 'Pantalla principal' - ClientHeight = 662 - ClientWidth = 559 + ClientHeight = 601 + ClientWidth = 751 Color = clWindow Font.Charset = DEFAULT_CHARSET Font.Color = clWindowText @@ -22,8 +22,8 @@ object fPantallaPrincipal: TfPantallaPrincipal object pnlContenido: TTBXAlignmentPanel Left = 0 Top = 0 - Width = 559 - Height = 640 + Width = 751 + Height = 579 Margins.Left = 5 Margins.Top = 5 Margins.Right = 5 @@ -35,7 +35,7 @@ object fPantallaPrincipal: TfPantallaPrincipal Left = 215 Top = 5 Width = 5 - Height = 630 + Height = 569 ResizeStyle = rsPattern ExplicitLeft = 210 ExplicitHeight = 570 @@ -44,7 +44,7 @@ object fPantallaPrincipal: TfPantallaPrincipal Left = 5 Top = 5 Width = 210 - Height = 630 + Height = 569 ActivePage = pagInicio Align = alLeft AutoHeaders = True @@ -89,7 +89,7 @@ object fPantallaPrincipal: TfPantallaPrincipal Left = 0 Top = 0 Width = 208 - Height = 557 + Height = 496 Background.Stretch = False Background.Proportional = False Background.Center = False @@ -99,7 +99,7 @@ object fPantallaPrincipal: TfPantallaPrincipal ImageIndex = 0 object Panel1: TPanel Left = 0 - Top = 471 + Top = 410 Width = 208 Height = 86 Align = alBottom @@ -152,8 +152,8 @@ object fPantallaPrincipal: TfPantallaPrincipal object pnlBorde: TJvXPContainer Left = 220 Top = 5 - Width = 334 - Height = 630 + Width = 526 + Height = 569 BoundColor = clActiveCaption BoundLines = [blLeft, blTop, blRight, blBottom] Caption = 'pnlBorde' @@ -161,8 +161,8 @@ object fPantallaPrincipal: TfPantallaPrincipal object pnlMain: TTBXAlignmentPanel Left = 1 Top = 1 - Width = 332 - Height = 628 + Width = 524 + Height = 567 Align = alClient Color = clWindow TabOrder = 0 @@ -202,8 +202,8 @@ object fPantallaPrincipal: TfPantallaPrincipal end object TBXStatusBar1: TTBXStatusBar Left = 0 - Top = 640 - Width = 559 + Top = 579 + Width = 751 Images = StatusPanelImageList Panels = < item @@ -253,7 +253,6 @@ object fPantallaPrincipal: TfPantallaPrincipal Tag = -9000 Category = 'Archivo' Caption = 'Cambiar mi contrase'#241'a' - Enabled = False OnExecute = actCambiarPassExecute end object actConexion: TAction @@ -556,12 +555,29 @@ object fPantallaPrincipal: TfPantallaPrincipal Tag = -7000 Caption = 'Opciones' object Configuraractualizaciones1: TMenuItem + Tag = 100 Action = actActualizaciones end object Configurarconexin2_OLD: TMenuItem - Tag = 3 + Tag = 101 Action = actConexion end + object N2: TMenuItem + Tag = 2 + Caption = '-' + end + object Administracin1: TMenuItem + Tag = 1 + Caption = 'Administraci'#243'n' + object Usuarios1: TMenuItem + Caption = 'Usuarios' + OnClick = Usuarios1Click + end + object Perfiles1: TMenuItem + Caption = 'Perfiles' + OnClick = Perfiles1Click + end + end end object Ayuda2_OLD: TMenuItem Tag = -6000 @@ -585,6 +601,10 @@ object fPantallaPrincipal: TfPantallaPrincipal Caption = '-' Visible = False end + object Informacindeempresa1: TMenuItem + Caption = 'Informaci'#243'n de empresa' + OnClick = Informacindeempresa1Click + end end object Logstica1: TMenuItem Tag = 100 diff --git a/Source/Cliente/uPantallaPrincipal.pas b/Source/Cliente/uPantallaPrincipal.pas index e6243efe..d52f4382 100644 --- a/Source/Cliente/uPantallaPrincipal.pas +++ b/Source/Cliente/uPantallaPrincipal.pas @@ -3,25 +3,17 @@ unit uPantallaPrincipal; interface uses - Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, - Dialogs, StdCtrls, ExtCtrls, XPMan, uGUIBase, uCustomEditor, - JvNavigationPane, JvExExtCtrls, JvComponent, Menus, ImgList, - PngImageList, ActnList, uHostManager, JvExControls, JvPageList, JvPanel, - TBX, TB2Item, TB2Dock, TB2Toolbar, ComCtrls, TBXToolPals, TBXLists, - TBXExtItems, TB2ExtItems, TBXMDI, TBXDkPanels, JvSplitter, JvSyncSplitter, - JvXPBar, JvXPCore, JvXPContainer, JvLookOut, JvOutlookBar, Buttons, - JvExButtons, JvBitBtn, JvSpeedButton, JvExStdCtrls, JvButton, JvCtrls, - JvStartMenuButton, JvTransparentButton, JvExComCtrls, JvListView, - JvAppStorage, JvAppRegistryStorage, JvFormPlacement, JvBaseDlg, - JvJVCLAboutForm, AppEvnts, JvWaitingGradient, JvGradient, - cxControls, JvComponentBase, JvMenus, TBXStatusBars, uEmpresasController, - pngimage; -type + Windows, Forms, SysUtils, Messages, JvMenus, Menus, Graphics, AppEvnts, + JvAppStorage, JvAppRegistryStorage, JvFormPlacement, JvComponentBase, + JvNavigationPane, ImgList, Controls, PngImageList, Classes, ActnList, XPMan, + TBXStatusBars, JvXPCore, JvXPContainer, pngimage, ExtCtrls, StdCtrls, + JvPageList, JvExControls, JvExExtCtrls, JvSplitter, JvSyncSplitter, + TBXDkPanels, uCustomEditor, uHostManager, uGUIBase, + Dialogs; +type IMainForm = interface(IHostForm) - ['{56FCE1D7-E163-4A36-A468-A6324A4E3911}'] - function GetEmpresasController : IEmpresasController; - property EmpresasController : IEmpresasController read GetEmpresasController; + ['{7F6F5574-5E5C-486C-AA24-D3AEAA52D243}'] procedure ReleaseEmbedded; end; @@ -85,6 +77,11 @@ type actVerBarraEstado: TAction; Paneldeexploracin1: TMenuItem; Paneldeexploracin2: TMenuItem; + Informacindeempresa1: TMenuItem; + Administracin1: TMenuItem; + N2: TMenuItem; + Usuarios1: TMenuItem; + Perfiles1: TMenuItem; procedure FormCreate(Sender: TObject); procedure FormDestroy(Sender: TObject); procedure HostManagerAfterLoad(Sender: TObject; AModuleInfo: TModuleInfo); @@ -106,9 +103,12 @@ type procedure actVerPanelExecute(Sender: TObject); procedure actVerBarraEstadoUpdate(Sender: TObject); procedure actVerBarraEstadoExecute(Sender: TObject); + procedure Acercade1Click(Sender: TObject); + procedure Informacindeempresa1Click(Sender: TObject); + procedure Usuarios1Click(Sender: TObject); + procedure Perfiles1Click(Sender: TObject); private FContenido : TCustomEditor; - FEmpresasController : IEmpresasController; procedure ShowEmbedded(AEditor : ICustomEditor); procedure ReleaseEmbedded; procedure AplicarPerfil; @@ -118,15 +118,15 @@ type procedure OnThemeChange(Sender: TObject); procedure RegisterModule(AModuleInfo : TModuleInfo); procedure ExecuteActionMenu(Sender : TObject); + procedure WMSysCommand(var Msg: TMessage); message WM_SYSCOMMAND; protected function GetWorkPanel : TWinControl; - function GetEmpresasController : IEmpresasController; + procedure CreateParams(var Params: TCreateParams); override; public function IsShortcut(var Message: TWMKey): Boolean; override; procedure OnWorkPanelChanged(AEditor : ICustomEditor); constructor Create(AOwner: TComponent); override; property WorkPanel : TWinControl read GetWorkPanel; - property EmpresasController : IEmpresasController read GetEmpresasController; end; var @@ -135,23 +135,13 @@ var implementation uses - uDataModuleConexion, uModuleController, uDataModuleBase, Math, uMenuUtils, - uSplash, uAcercaDe, UxTheme, Themes, uDataModuleUsuarios, uPluginEmpresas, - uNavPaneController, uMainMenuController, uROSessions, FactuGES_Intf, - uDialogUtils, uActualizacion; + uSplash, uAcercaDe, UxTheme, Themes, uMenuUtils, uBizEmpresas, + uFactuGES_App, uDataModuleBase, uDataModuleConexion, + uModuleController, uMainMenuController, uNavPaneController, + uDialogUtils, cxControls; {$R *.dfm} -function OpenThemeData(hwnd: HWND; pszClassList: LPCWSTR): THandle; stdcall; - external 'uxtheme.dll'; - -function CloseThemeData(hTheme: THandle): HRESULT; stdcall; - external 'uxtheme.dll'; - -function DrawThemeBackground(hTheme: THandle; hdc: HDC; iPartId, iStateId: -Integer; const pRect: TRect; - pClipRect: PRECT): HRESULT; stdcall; - external 'uxtheme.dll'; { ***************************** TfPantallaPrincipal ****************************** @@ -168,7 +158,7 @@ end; procedure TfPantallaPrincipal.FormCreate(Sender: TObject); begin ApplicationEvents.Activate; - Caption := Application.Title + ' - ' + dmBase.DarVersion; + Caption := AppFactuGES.AppName + ' ' + AppFactuGES.AppVersion; SplashScreen := TSplashScreen.Create(Application) ; SplashScreen.Show; @@ -189,7 +179,7 @@ end; procedure TfPantallaPrincipal.FormDestroy(Sender: TObject); begin -// ReleaseEmbedded; +// ReleaseEmbedded; HostManager.UnloadModules; ApplicationEvents.CancelDispatch; end; @@ -204,9 +194,11 @@ procedure TfPantallaPrincipal.RefrescarUI; var ATitulo : String; begin - ATitulo := Application.Title + ' - ' + dmBase.DarVersion; - if Assigned(dmUsuarios.EmpresaActual) then - ATitulo := ATitulo + ' - ' + dmUsuarios.EmpresaActual.NOMBRE; + ATitulo := AppFactuGES.AppName + ' ' + AppFactuGES.AppVersion; + + if Assigned(AppFactuGES.EmpresaActiva) then + ATitulo := AppFactuGES.EmpresaActiva.NOMBRE + ' - ' + ATitulo; + Caption := ATitulo; if dmConexion.HayConexion then @@ -214,8 +206,8 @@ begin else TBXStatusBar1.Panels[0].Caption := 'Desconectado'; - if Assigned(dmUsuarios.LoginInfo) then - TBXStatusBar1.Panels[1].Caption := dmUsuarios.LoginInfo.Usuario + if Assigned(AppFactuGES.UsuarioActivo) then + TBXStatusBar1.Panels[1].Caption := AppFactuGES.UsuarioActivo.UserName else TBXStatusBar1.Panels[1].Caption := ''; end; @@ -223,14 +215,10 @@ end; procedure TfPantallaPrincipal.RegisterModule(AModuleInfo : TModuleInfo); var AModule: TModuleController; - AEmpresasPlugin : IEmpresasPlugin; begin AModule := AModuleInfo.Module; SplashScreen.Texto := 'Cargando ''' + AModule.ModuleName + '''...'; - - if Supports(AModule, IEmpresasPlugin, AEmpresasPlugin) then - FEmpresasController := AEmpresasPlugin.Controller; end; procedure TfPantallaPrincipal.ReleaseEmbedded; @@ -315,18 +303,20 @@ begin end; end; -function TfPantallaPrincipal.GetEmpresasController: IEmpresasController; -begin - Result := FEmpresasController; -end; - function TfPantallaPrincipal.GetWorkPanel: TWinControl; begin Result := pnlMain; end; +procedure TfPantallaPrincipal.Informacindeempresa1Click(Sender: TObject); +begin + // + AppFactuGES.EmpresasController.Ver(AppFactuGES.EmpresaActiva); +end; + procedure TfPantallaPrincipal.InicializarUI; var + AListaEmpresas : IBizEmpresa; i : Integer; begin for i := 0 to HostManager.ModulesCount - 1 do @@ -340,13 +330,18 @@ begin NavPaneController.InitNavPane; - if dmUsuarios.Empresas.Count = 1 then + AListaEmpresas := AppFactuGES.EmpresasController.BuscarTodos; + if Assigned(AListaEmpresas) then begin - // Oculto la página de inicio para que no parezca - // que se pueden manejar varias empresas. - JvNavigationPane.ActivePageIndex := 1; - pagInicio.PageList := NIL; - pagInicio.Visible := False; + AListaEmpresas.Active := True; + if AListaEmpresas.RecordCount = 1 then + begin + // Oculto la página de inicio para que no parezca + // que se pueden manejar varias empresas. + JvNavigationPane.ActivePageIndex := 1; + pagInicio.PageList := NIL; + pagInicio.Visible := False; + end; end; RefrescarUI; @@ -357,7 +352,7 @@ procedure TfPantallaPrincipal.actLoginExecute(Sender: TObject); begin HostManager.UnloadModules; - if dmUsuarios.Login then + if AppFactuGES.UsuariosController.StartLogin then begin ShowHourglassCursor; SplashScreen.Update; @@ -386,7 +381,7 @@ end; procedure TfPantallaPrincipal.actMenuComprasUpdate(Sender: TObject); begin - (Sender as TAction).Enabled := Assigned(dmUsuarios.EmpresaActual); + (Sender as TAction).Enabled := Assigned(AppFactuGES.EmpresaActiva); end; procedure TfPantallaPrincipal.actLogisticaMenuExecute(Sender: TObject); @@ -416,12 +411,13 @@ end; procedure TfPantallaPrincipal.ApplicationEventsException(Sender: TObject; E: Exception); begin - if E is EROSessionNotFound then +{ if E is EROSessionNotFound then begin + // OJOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO if not dmUsuarios.Login then ShowMessage(E.Message); end - else + else} ShowMessage(E.Message); //ShowErrorMessage('Se ha producido un error', '', E); end; @@ -431,6 +427,11 @@ begin // end; +procedure TfPantallaPrincipal.Perfiles1Click(Sender: TObject); +begin + AppFactuGES.UsuariosController.ShowProfileManager; +end; + procedure TfPantallaPrincipal.ShowEmbedded(AEditor: ICustomEditor); begin if Assigned(FContenido) and not FContenido.CloseQuery then @@ -463,17 +464,33 @@ begin OnWorkPanelChanged(FContenido); end; +procedure TfPantallaPrincipal.Usuarios1Click(Sender: TObject); +begin + AppFactuGES.UsuariosController.ShowUserManager; +end; + +procedure TfPantallaPrincipal.WMSysCommand(var Msg: TMessage); +begin + //No tocar, sirve para recuperar el foco el formulario principal cuando + // tenemos varios formularios hijos abiertos a la vez. + DefaultHandler(Msg); +end; + procedure TfPantallaPrincipal.CargarModulos; begin - HostManager.LoadModule('Empresas_plugin.bpl'); - HostManager.LoadModule('FormasPago_plugin.bpl'); - HostManager.LoadModule('TiposIVA_plugin.bpl'); + HostManager.LoadModule('FormasPago_plugin.bpl'); + HostManager.LoadModule('TiposIVA_plugin.bpl'); + HostManager.LoadModule('Familias_plugin.bpl'); + HostManager.LoadModule('Contactos_plugin.bpl'); + // HostManager.LoadModule('Almacenes_plugin.bpl'); -// HostManager.LoadModule('Familias_plugin.bpl'); + // HostManager.LoadModule('Articulos_plugin.bpl'); // HostManager.LoadModule('Inventario_plugin.bpl'); - HostManager.LoadModule('Contactos_plugin.bpl'); -// HostManager.LoadModule('RecibosCliente_plugin.bpl'); + + + + // HostManager.LoadModule('RecibosCliente_plugin.bpl'); // HostManager.LoadModule('RemesasCliente_plugin.bpl'); // HostManager.LoadModule('FacturasCliente_plugin.bpl'); // HostManager.LoadModule('RecibosProveedor_plugin.bpl'); @@ -526,22 +543,38 @@ begin end; end; +procedure TfPantallaPrincipal.CreateParams(var Params: TCreateParams); +begin + // ¡¡¡Fallo en Delphi 2007!!! + // Cambio los paramátros para obligar a que aparezca el icono en la barra de tareas. + inherited CreateParams(Params); + with Params do begin + ExStyle := ExStyle or WS_EX_APPWINDOW; + WndParent := GetDesktopwindow; + end; +end; + procedure TfPantallaPrincipal.actActualizacionesExecute(Sender: TObject); begin - fActualizacion := TfActualizacion.Create(Self); +{ fActualizacion := TfActualizacion.Create(Self); try fActualizacion.ShowModal; finally FreeAndNil(fActualizacion); - end; + end;} end; procedure TfPantallaPrincipal.actCambiarPassExecute(Sender: TObject); begin -// dmUsuarios.CambiarPassword; + AppFactuGES.UsuariosController.ShowChangePassword; RefrescarUI; end; +procedure TfPantallaPrincipal.Acercade1Click(Sender: TObject); +begin + AppFactuGES.UsuariosController.StartLogin; +end; + procedure TfPantallaPrincipal.actAcercaExecute(Sender: TObject); begin with TfAcercaDe.Create(NIL) do @@ -590,7 +623,7 @@ begin //Se libera el contenido que tenga ya que cambiamos de empresa; ReleaseEmbedded; - dmUsuarios.IDEmpresaActual := JvNavigationPane.ActivePage.Tag; + AppFactuGES.CambarEmpresa(JvNavigationPane.ActivePage.Tag); RefrescarUI; end; diff --git a/Source/DataAbstract_D10/BaseD10.drc b/Source/DataAbstract_D10/BaseD10.drc deleted file mode 100644 index 686f8580..00000000 --- a/Source/DataAbstract_D10/BaseD10.drc +++ /dev/null @@ -1,10 +0,0 @@ -/* VER180 - Generated by the Borland Delphi Pascal Compiler - because -GD or --drc was supplied to the compiler. - - This file contains compiler-generated resources that - were bound to the executable. - If this file is empty, then no compiler-generated - resources were bound to the produced executable. -*/ - diff --git a/Source/DataAbstract_D10/DataAbstract_D10.bdsproj b/Source/DataAbstract_D10/DataAbstract_D10.bdsproj deleted file mode 100644 index e9e7c90a..00000000 --- a/Source/DataAbstract_D10/DataAbstract_D10.bdsproj +++ /dev/null @@ -1,492 +0,0 @@ - - - - - - - - - - - - DataAbstract_D10.dpk - - - 7.0 - - - 8 - 0 - 1 - 1 - 0 - 0 - 1 - 1 - 1 - 0 - 0 - 1 - 0 - 1 - 1 - 1 - 0 - 0 - 0 - 0 - 0 - 1 - 0 - 1 - 1 - 1 - True - True - WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; - - False - - True - True - True - True - True - True - True - True - True - True - True - True - True - True - True - True - True - True - True - True - True - True - True - True - True - True - True - True - True - True - True - True - True - True - True - True - True - True - True - True - True - True - True - True - True - True - True - True - True - True - True - True - True - True - True - - - - 3 - 0 - False - 1 - False - False - False - 16384 - 1048576 - 4194304 - - - - - .\ - ..\..\Output\Debug\Cliente - ..\Lib - - - - - False - - - - - - False - - - True - False - - - - $00000000 - - - - True - False - 1 - 0 - 0 - 0 - False - False - False - False - False - 3082 - 1252 - - - - - 1.0.0.0 - - - - - - 1.0.0.0 - - - - - diff --git a/Source/DataAbstract_D10/DataAbstract_D10.dpk b/Source/DataAbstract_D10/DataAbstract_D10.dpk deleted file mode 100644 index bf622d75..00000000 --- a/Source/DataAbstract_D10/DataAbstract_D10.dpk +++ /dev/null @@ -1,88 +0,0 @@ -package DataAbstract_D10; - -{$R *.res} -{$ALIGN 8} -{$ASSERTIONS ON} -{$BOOLEVAL OFF} -{$DEBUGINFO ON} -{$EXTENDEDSYNTAX ON} -{$IMPORTEDDATA ON} -{$IOCHECKS ON} -{$LOCALSYMBOLS ON} -{$LONGSTRINGS ON} -{$OPENSTRINGS ON} -{$OPTIMIZATION ON} -{$OVERFLOWCHECKS OFF} -{$RANGECHECKS OFF} -{$REFERENCEINFO ON} -{$SAFEDIVIDE OFF} -{$STACKFRAMES OFF} -{$TYPEDADDRESS OFF} -{$VARSTRINGCHECKS ON} -{$WRITEABLECONST OFF} -{$MINENUMSIZE 1} -{$IMAGEBASE $400000} -{$RUNONLY} -{$IMPLICITBUILD OFF} - -requires - vcl, - rtl, - dbrtl, - dsnap; - -contains - uROEventRepository, - uRORes, - uROClasses, - uROThread, - uROTypes, - uRODL, - uRODLToXML, - uROXMLIntf, - uROMSXMLImpl, - uROMSXML2_TLB, - uROClient, - uROHTTPTools, - uROClientIntf, - uROSerializer, - uROBinaryHelpers, - uROEncryption, - uROZLib, - uROCipher1, - uROHash, - uRODECUtil, - uRODECConst, - uROCipher, - uROCiphers, - uROSessions, - uRORemoteService, - uROServiceComponent, - uRODynamicRequest, - uROWinInetHttpChannel, - uROBinMessage, - uROCompression, - uROStreamSerializer, - uDADataTable, - uDABINAdapter, - uDAScriptingProvider, - uDACDSDataTable, - uDAInterfaces, - uDARegExpr, - uDARes, - uDAClasses, - uDAEngine, - uDAHelpers, - uDAInterfacesEx, - uDAMacros, - uDAUtils, - uDADriverManager, - uDASupportClasses, - uDAXMLUtils, - DataAbstract_Intf, - uDAClientDataModule, - uDABusinessProcessor, - uDAOracleInterfaces, - uDADesigntimeCall; - -end. diff --git a/Source/DataAbstract_D10/DataAbstract_D10.drc b/Source/DataAbstract_D10/DataAbstract_D10.drc deleted file mode 100644 index d6498a57..00000000 --- a/Source/DataAbstract_D10/DataAbstract_D10.drc +++ /dev/null @@ -1,402 +0,0 @@ -/* VER180 - Generated by the Borland Delphi Pascal Compiler - because -GD or --drc was supplied to the compiler. - - This file contains compiler-generated resources that - were bound to the executable. - If this file is empty, then no compiler-generated - resources were bound to the produced executable. -*/ - -#define uDARes_err_NeedShareMem 65328 -#define uDARes_err_ExecuteSQLCommandNotAllowed 65329 -#define uDARes_err_UnknownParameter 65344 -#define uDARes_err_FieldIsNotBound 65345 -#define uDARes_err_CannotFindField 65346 -#define uDARes_err_LoadPackageFailed 65347 -#define uDARes_err_InvalidDriverReference 65348 -#define uDARes_err_CannotFindStatement 65349 -#define uDARes_err_CannotFindDefaultItem 65350 -#define uDARes_err_PoolIsNotEmpty 65351 -#define uDARes_err_MaxPoolSizeReached 65352 -#define uDARes_err_CannotAccessThisProperty 65353 -#define uDARes_err_LAMEDataset 65354 -#define uDARes_err_DARDMInvalidSchema 65355 -#define uDARes_err_DARDMMissingConnectionName 65356 -#define uDARes_err_DARDMUnassignedAdapter 65357 -#define uDARes_err_DARDMConnectionIsNotAssigned 65358 -#define uDARes_err_DARDMCannotFindProxessorForDelta 65359 -#define uDARes_err_InvalidDestination 65360 -#define uDARes_err_DriverManagerNotAssigned 65361 -#define uDARes_err_ConnectionManagerNotAssigned 65362 -#define uDARes_err_FieldTypeNotSupported 65363 -#define uDARes_err_NotSupported 65364 -#define uDARes_err_DataTypeNotSupportedByRemoteRequest 65365 -#define uDARes_err_InvalidDataset 65366 -#define uDARes_err_CannotMakeNILDefault 65367 -#define uDARes_err_DifferentOwnerCollection 65368 -#define uDARes_err_CannotFindItem 65369 -#define uDARes_err_InvalidCollectionType 65370 -#define uDARes_err_InvalidOwner 65371 -#define uDARes_err_DriverAlreadyLoaded 65372 -#define uDARes_err_DriverIsNotLoaded 65373 -#define uDARes_err_InvalidDLL 65374 -#define uDARes_err_UnknownDriver 65375 -#define uRODECConst_sInvalidCalc 65376 -#define uRODECConst_sInvalidDictionary 65377 -#define uRODECConst_sOTPIdent 65378 -#define uRODECConst_sOTPExt 65379 -#define uRODECConst_sOTPWord 65380 -#define uRODECConst_sOTPHex 65381 -#define uRODECConst_sSKeyIdent 65382 -#define uROWinInetHttpChannel_sxInvalidURLformat 65383 -#define uDARes_err_ChangeLogAlreadyStarted 65384 -#define uDARes_err_NotAttachedToDataTable 65385 -#define uDARes_err_DeltaAttachedToDataTable 65386 -#define uDARes_err_DriverProcAlreadyRegistered 65387 -#define uDARes_err_DriverManagerNotCreated 65388 -#define uDARes_err_DriverManagerAlreadyCreated 65389 -#define uDARes_err_DatasetNotAssigned 65390 -#define uDARes_err_VariantNotSupported 65391 -#define uRODECConst_sLoadFail 65392 -#define uRODECConst_sParams 65393 -#define uRODECConst_sJacobi 65394 -#define uRODECConst_sSPPrime 65395 -#define uRODECConst_sSetPrime 65396 -#define uRODECConst_sSetPrimeSize 65397 -#define uRODECConst_sSetPrimeParam 65398 -#define uRODECConst_sSqrt 65399 -#define uRODECConst_sExpMod 65400 -#define uRODECConst_sCalcName 65401 -#define uRODECConst_sInvalidState 65402 -#define uRODECConst_sIDOutOfRange 65403 -#define uRODECConst_sInvalidZIPData 65404 -#define uRODECConst_sInvalidChallenge 65405 -#define uRODECConst_sInvalidPassword 65406 -#define uRODECConst_sInvalidSeed 65407 -#define uRODECConst_sNotInitialized 65408 -#define uRODECConst_sInvalidMACMode 65409 -#define uRODECConst_sCantCalc 65410 -#define uRODECConst_sInvalidRandomStream 65411 -#define uRODECConst_sRandomDataProtected 65412 -#define uRODECConst_sBBSnotSeekable 65413 -#define uRODECConst_sBigNumDestroy 65414 -#define uRODECConst_sIndexOutOfRange 65415 -#define uRODECConst_sBigNumAborted 65416 -#define uRODECConst_sErrGeneric 65417 -#define uRODECConst_sErrAsInteger 65418 -#define uRODECConst_sErrAsComp 65419 -#define uRODECConst_sErrAsFloat 65420 -#define uRODECConst_sNumberFormat 65421 -#define uRODECConst_sDivByZero 65422 -#define uRODECConst_sStackIndex 65423 -#define uRORes_err_UnknownMessageType 65424 -#define uRORes_err_MasterServerNeedsChannel 65425 -#define uRORes_err_StreamIsReadOnly 65426 -#define uRODECConst_sProtectionCircular 65427 -#define uRODECConst_sStringFormatExists 65428 -#define uRODECConst_sInvalidStringFormat 65429 -#define uRODECConst_sInvalidFormatString 65430 -#define uRODECConst_sFMT_COPY 65431 -#define uRODECConst_sFMT_HEX 65432 -#define uRODECConst_sFMT_HEXL 65433 -#define uRODECConst_sFMT_MIME64 65434 -#define uRODECConst_sFMT_UU 65435 -#define uRODECConst_sFMT_XX 65436 -#define uRODECConst_sInvalidKey 65437 -#define uRODECConst_sInvalidCRC 65438 -#define uRODECConst_sInvalidKeySize 65439 -#define uRORes_err_CannotLoadXMLDocument 65440 -#define uRORes_err_ErrorCreatingMsXmlDoc 65441 -#define uRORes_err_NoXMLParsersAvailable 65442 -#define uRORes_err_IDispatchMarshalingNotSupported 65443 -#define uRORes_err_UnsupportedVariantType 65444 -#define uRORes_err_InvalidBinaryFormat 65445 -#define uRORes_err_VariantIsNotArray 65446 -#define uRORes_err_InvalidVarArrayDimCount 65447 -#define uRORes_err_CannotFindParameter 65448 -#define uRORes_err_CannotFindService 65449 -#define uRORes_err_RODLResourceNotLoaded 65450 -#define uRORes_err_MayNotAddResult 65451 -#define uRORes_err_OperationNameNeedsServiceName 65452 -#define uRORes_err_ServiceNameIsNotSet 65453 -#define uRORes_err_EventReceivedNotConnectedToMessage 65454 -#define uRORes_err_MessageNotAssigned 65455 -#define uRORes_err_MessagePropertyMustBeSet 65456 -#define uRORes_err_WinMessageFailed 65457 -#define uRORes_err_UnexpectedWinINetProblem 65458 -#define uRORes_err_CommunicationWithServerTimedOut 65459 -#define uRORes_err_CannotConnectToServer 65460 -#define uRORes_err_ConnectionError 65461 -#define uRORes_err_PoolSizeMustBe1orHigher 65462 -#define uRORes_err_NoFreeObjectsInPool 65463 -#define uRORes_msg_NoMultipleDispatchers 65464 -#define uRORes_err_InvalidStorage 65465 -#define uRORes_err_ErrorConvertingFloat 65466 -#define uRORes_err_SessionNotFound 65467 -#define uRORes_err_ChannelDoesntSupportIROMetadataReader 65468 -#define uRORes_err_TooManySessions 65469 -#define uRORes_err_DOMElementIsNIL 65470 -#define uRORes_err_IndexOutOfBounds 65471 -#define uRORes_err_CannotAssignClass 65472 -#define uRORes_err_ChannelBusy 65473 -#define uRORes_err_DesignTimeProperty 65474 -#define uRORes_err_ExpectedParameterNotFound 65475 -#define uRORes_err_AmbigousResponse 65476 -#define uRORes_err_InvalidEnvelope 65477 -#define uRORes_err_InvalidData 65478 -#define uRORes_inf_InvalidEnvelopeNode 65479 -#define uRORes_inf_AbsentBody 65480 -#define uRORes_inf_AbsentMessage 65481 -#define uRORes_err_ArrayIndexOutOfBounds 65482 -#define uRORes_err_InvalidHeader 65483 -#define uRORes_err_UnknownClassInStream 65484 -#define uRORes_err_UnexpectedClassInStream 65485 -#define uRORes_err_InvalidDateTimeReadFromStream 65486 -#define uRORes_err_CannotFindServer 65487 -#define uRORes_err_ParameterNotFound 65488 -#define uRORes_err_NotImplemented 65489 -#define uRORes_err_TypeNotSupported 65490 -#define uRORes_err_ClassFactoryNotFound 65491 -#define uRORes_err_UnspecifiedTargetURL 65492 -#define uRORes_err_IROMessageNotSupported 65493 -#define uRORes_err_ClassAlreadyRegistered 65494 -#define uRORes_err_UnknownClass 65495 -#define uRORes_err_UnknownProxyInterface 65496 -#define uRORes_err_UnknownTransportChannelClass 65497 -#define uRORes_err_UnknownMessageClass 65498 -#define uRORes_err_DispatcherAlreadyAssigned 65499 -#define uRORes_err_CannotFindMessageDispatcher 65500 -#define uRORes_err_ServerOnlySupportsOneDispatcher 65501 -#define uRORes_err_UnhandledException 65502 -#define uRORes_err_CannotReadRODLWithoutChannel 65503 -#define uRORes_err_RodlNoStructElementsDefined 65504 -#define uRORes_err_RodlNoOperationsDefined 65505 -#define uRORes_err_RodlUsedFileDoesNotExist 65506 -#define uRORes_err_RodlInvalidDataType 65507 -#define uRORes_err_RodlStructCannotBeNested 65508 -#define uRORes_err_RodlInvalidAncestorType 65509 -#define uRORes_err_UnspecifiedRODLLocation 65510 -#define uRORes_str_ExceptionOnServer 65511 -#define uRORes_str_ExceptionReraisedFromServer 65512 -#define uRORes_err_AssignError 65513 -#define uRORes_err_InvalidRequestStream 65514 -#define uRORes_err_NILMessage 65515 -#define uRORes_err_UnspecifiedInterface 65516 -#define uRORes_err_UnspecifiedMessage 65517 -#define uRORes_err_UnknownMethod 65518 -#define uRORes_err_ClassFactoryDidNotReturnInstance 65519 -#define uRORes_err_InvalidIndex 65520 -#define uRORes_err_InvalidType 65521 -#define uRORes_err_InvalidLibrary 65522 -#define uRORes_err_InvalidStream 65523 -#define uRORes_err_InvalidTargetEntity 65524 -#define uRORes_err_InvalidParamFlag 65525 -#define uRORes_err_InvalidStringLength 65526 -#define uRORes_err_InvalidBinaryLength 65527 -#define uRORes_str_InvalidClassTypeInStream 65528 -#define uRORes_err_ObjectExpectedInStream 65529 -#define uRORes_err_UnexpectedEndOfStream 65530 -#define uRORes_err_MessageClassMustImplementAssign 65531 -#define uRORes_err_InvalidInfo 65532 -#define uRORes_err_RodlDuplicateName 65533 -#define uRORes_err_RodlNoDataTypeSpecified 65534 -#define uRORes_err_RodlNoEnumValues 65535 -STRINGTABLE -BEGIN - uDARes_err_NeedShareMem, "To use dynamically loaded drivers, you must build your application with ShareMem." - uDARes_err_ExecuteSQLCommandNotAllowed, "ExecuteSQLCommand is not enabled for this server." - uDARes_err_UnknownParameter, "Unknown parameter %s" - uDARes_err_FieldIsNotBound, "Field is not bound" - uDARes_err_CannotFindField, "Cannot find field %s" - uDARes_err_LoadPackageFailed, "LoadPackage failed for file %s" - uDARes_err_InvalidDriverReference, "The driver in %s could not be loaded" - uDARes_err_CannotFindStatement, "Cannot find statement %s for connection %s" - uDARes_err_CannotFindDefaultItem, "Cannot find default %s" - uDARes_err_PoolIsNotEmpty, "Cannot perform this operation when connections are pooled" - uDARes_err_MaxPoolSizeReached, "Maximum pool size reached. Cannot create a new connection" - uDARes_err_CannotAccessThisProperty, "Cannot access this property with the current DataType value" - uDARes_err_LAMEDataset, "%s does not implement IProviderSupport or implements it incorrectly" - uDARes_err_DARDMInvalidSchema, "Schema must be assigned and must point to a ConnectionManager" - uDARes_err_DARDMMissingConnectionName, "Cannot acquire a connection without a ConnectionName or a OnBeforeAcquireConnection event handler" - uDARes_err_DARDMUnassignedAdapter, "DataAdapter is not assigned" - uDARes_err_DARDMConnectionIsNotAssigned, "Connection is not assigned" - uDARes_err_DARDMCannotFindProxessorForDelta, "Cannot find a business processor for delta \"%s\"" - uDARes_err_InvalidDestination, "Invalid destination" - uDARes_err_DriverManagerNotAssigned, "Driver Manager is not assigned" - uDARes_err_ConnectionManagerNotAssigned, "Connection Manager is not assigned" - uDARes_err_FieldTypeNotSupported, "FieldType %s (%d) is not supported" - uDARes_err_NotSupported, "Not supported" - uDARes_err_DataTypeNotSupportedByRemoteRequest, "DataType is not supported by RemoteRequest" - uDARes_err_InvalidDataset, "Invalid or NIL dataset" - uDARes_err_CannotMakeNILDefault, "Cannot set NIL" - uDARes_err_DifferentOwnerCollection, "The connection definition is not owned by this collection" - uDARes_err_CannotFindItem, "Cannot find %s \"%s\" in collection of type %s" - uDARes_err_InvalidCollectionType, "Invalid collection type" - uDARes_err_InvalidOwner, "Invalid owner" - uDARes_err_DriverAlreadyLoaded, "Driver %s is already loaded" - uDARes_err_DriverIsNotLoaded, "Driver %s was not loaded" - uDARes_err_InvalidDLL, "%s is not a valid Data Abstract driver" - uDARes_err_UnknownDriver, "Unknown driver %s" - uRODECConst_sInvalidCalc, "Invalid Parameters in OTPCalc." - uRODECConst_sInvalidDictionary, "Used Dictionary in %s is invalid." - uRODECConst_sOTPIdent, "otp-" - uRODECConst_sOTPExt, "ext" - uRODECConst_sOTPWord, "word:" - uRODECConst_sOTPHex, "hex:" - uRODECConst_sSKeyIdent, "s/key" - uROWinInetHttpChannel_sxInvalidURLformat, "Invalid URL format" - uDARes_err_ChangeLogAlreadyStarted, "StartChange has already been called; cannot log more than one change at a time." - uDARes_err_NotAttachedToDataTable, "Delta is not attached to a DataTable" - uDARes_err_DeltaAttachedToDataTable, "Cannot perform this operation on a delta that is attached to a DataTable" - uDARes_err_DriverProcAlreadyRegistered, "DriverProc 0x%0.8x is already registered" - uDARes_err_DriverManagerNotCreated, "A Data Abstract DriverManager is not currently instantiated" - uDARes_err_DriverManagerAlreadyCreated, "An instance of a TDADriverManager was already initialized. Only one driver manager per module is allowed" - uDARes_err_DatasetNotAssigned, "Dataset is not assigned" - uDARes_err_VariantNotSupported, "Variant type %d is not supported" - uRODECConst_sLoadFail, "BigNum invalid data format." - uRODECConst_sParams, "BigNum parameter error.\r\n%s." - uRODECConst_sJacobi, "BigNum Jacobi(A, B), B must be >= 3, Odd and B < A" - uRODECConst_sSPPrime, "BigNum IsSPPrime(A, Base), |Base| must be > 1, |A| > |Base| and |A| >= 3" - uRODECConst_sSetPrime, "BigNum SetPrime(Base, Residue, Modulus), Invalid Parameter.\r\n%s." - uRODECConst_sSetPrimeSize, "Value must be greater 32767" - uRODECConst_sSetPrimeParam, "GCD(Residue, Modulus) must be 1 and Residue < Modulus" - uRODECConst_sSqrt, "BigNum Sqrt(A) A must be position" - uRODECConst_sExpMod, "BigNum ExpMod(E, M) M must be positive" - uRODECConst_sCalcName, "Calculation No %d" - uRODECConst_sInvalidState, "Invalid Protector State detected." - uRODECConst_sIDOutOfRange, "Protector Error: ID is out of Range." - uRODECConst_sInvalidZIPData, "Invalid compressed Data detected." - uRODECConst_sInvalidChallenge, "Challenge is not an RO_RFC2289 Format." - uRODECConst_sInvalidPassword, "Invalid Passphraselength, must be more than 9 Chars." - uRODECConst_sInvalidSeed, "Invalid Seed Value in OTPCalc." - uRODECConst_sNotInitialized, "%s is not initialized call Init() or InitKey() before." - uRODECConst_sInvalidMACMode, "Invalid Ciphermode selected to produce a MAC.\r\nPlease use Modes cmCBC, cmCTS, cmCFB, cmCBCMAC, cmCFBMAC or cmCTSMAC for CalcMAC." - uRODECConst_sCantCalc, "Invalid Ciphermode selected." - uRODECConst_sInvalidRandomStream, "Invalid Random Data detected." - uRODECConst_sRandomDataProtected, "Random Data are protected." - uRODECConst_sBBSnotSeekable, "BBS Generator is not seekable." - uRODECConst_sBigNumDestroy, "Used Bignums in a BBS Generator can be not destroy." - uRODECConst_sIndexOutOfRange, "BBS Error: Index out of Range." - uRODECConst_sBigNumAborted, "BigNum aborted by User." - uRODECConst_sErrGeneric, "Bignum Generic Error." - uRODECConst_sErrAsInteger, "BigNum overflow in AsInteger." - uRODECConst_sErrAsComp, "BigNum overflow in AsComp." - uRODECConst_sErrAsFloat, "BigNum overflow in AsFloat." - uRODECConst_sNumberFormat, "BigNum invalid Numberformat for Base %d.\r\nValue: %s" - uRODECConst_sDivByZero, "BigNum division by Zero." - uRODECConst_sStackIndex, "BigNum Stackindex out of range." - uRORes_err_UnknownMessageType, "Unknown message type \"%s\"" - uRORes_err_MasterServerNeedsChannel, "No Channel assigned to %s." - uRORes_err_StreamIsReadOnly, "Stream is read-only." - uRODECConst_sProtectionCircular, "Circular Protection detected, Protection Object is invalid." - uRODECConst_sStringFormatExists, "String Format \"%d\" not exists." - uRODECConst_sInvalidStringFormat, "Input is not an valid %s Format." - uRODECConst_sInvalidFormatString, "Input can not be convert to %s Format." - uRODECConst_sFMT_COPY, "copy Input to Output" - uRODECConst_sFMT_HEX, "Hexadecimal" - uRODECConst_sFMT_HEXL, "Hexadecimal lowercase" - uRODECConst_sFMT_MIME64, "MIME Base 64" - uRODECConst_sFMT_UU, "UU Coding" - uRODECConst_sFMT_XX, "XX Coding" - uRODECConst_sInvalidKey, "Encryptionkey is invalid" - uRODECConst_sInvalidCRC, "Encrypted Data is corrupt, invalid Checksum" - uRODECConst_sInvalidKeySize, "Length from Encryptionkey is invalid.\r\nKeysize for %s must be to %d-%d bytes" - uRORes_err_CannotLoadXMLDocument, "Cannot load XML document.\rReason: %s\rLine: %d\rPosition: %d" - uRORes_err_ErrorCreatingMsXmlDoc, "Error creating MSXML Document class\r\r%s: %s" - uRORes_err_NoXMLParsersAvailable, "MSXML is not installed" - uRORes_err_IDispatchMarshalingNotSupported, "Marshaling of IDispatch (%d) type variants is not supported." - uRORes_err_UnsupportedVariantType, "Unsupported variant type \"%d\"" - uRORes_err_InvalidBinaryFormat, "Invalid binary format for a variant" - uRORes_err_VariantIsNotArray, "Variant must be Array, but is %d" - uRORes_err_InvalidVarArrayDimCount, "Variant Array DimCount must be 1 but is %d" - uRORes_err_CannotFindParameter, "Cannot find parameter %s" - uRORes_err_CannotFindService, "Cannot find service %s" - uRORes_err_RODLResourceNotLoaded, "RODL resource has not been loaded" - uRORes_err_MayNotAddResult, "Cannot add Result parameter to collection. Use AddResult instead" - uRORes_err_OperationNameNeedsServiceName, "Cannot set the OperationName without a ServiceName" - uRORes_err_ServiceNameIsNotSet, "ServiceName is not set" - uRORes_err_EventReceivedNotConnectedToMessage, "The event receiver must be connected to a message component first" - uRORes_err_MessageNotAssigned, "Message is NIL" - uRORes_err_MessagePropertyMustBeSet, "Message property must be assigned for the server to be active" - uRORes_err_WinMessageFailed, "Communication with the WinMessage Server failed or timed out (Error Code %d)" - uRORes_err_UnexpectedWinINetProblem, "Unexpected error in WinInet HTTP Channel (%d)" - uRORes_err_CommunicationWithServerTimedOut, "Communication with the server timed out (after %sms)" - uRORes_err_CannotConnectToServer, "Cannot connect to server \"%s\"" - uRORes_err_ConnectionError, "Connection error" - uRORes_err_PoolSizeMustBe1orHigher, "Pool Size must be 1 or higher" - uRORes_err_NoFreeObjectsInPool, "There are no Free Objects in the Pool. Try again later." - uRORes_msg_NoMultipleDispatchers, "Multiple message dispatchers not supported" - uRORes_err_InvalidStorage, "Invalid storage" - uRORes_err_ErrorConvertingFloat, "Error converting float \"%s\" at byte %d" - uRORes_err_SessionNotFound, "Session %s could not be found" - uRORes_err_ChannelDoesntSupportIROMetadataReader, "Channel does not support IROMetadataReader" - uRORes_err_TooManySessions, "Too many sessions. Try again in %d minute(s)" - uRORes_err_DOMElementIsNIL, "DOMElement is NIL" - uRORes_err_IndexOutOfBounds, "Index out of bounds" - uRORes_err_CannotAssignClass, "Cannot Assign a \"%s\" to a \"%s\"." - uRORes_err_ChannelBusy, "Channel is busy. Try again later." - uRORes_err_DesignTimeProperty, "%s is a designtime-only property" - uRORes_err_ExpectedParameterNotFound, "Expected parameter \"%s\" was not found." - uRORes_err_AmbigousResponse, "Ambigous response. Expected one \"%s\" but %d were received" - uRORes_err_InvalidEnvelope, "Invalid SOAP Envelope. %s" - uRORes_err_InvalidData, "Cannot convert data for parameter \"%s\"\rException was \"%s\"\rData was \"%s\"." - uRORes_inf_InvalidEnvelopeNode, "SOAP Envelope node missing or not root." - uRORes_inf_AbsentBody, "SOAP envelope does not contain a Body." - uRORes_inf_AbsentMessage, "SOAP Body does not contain a message nor a fault" - uRORes_err_ArrayIndexOutOfBounds, "Array index out of bounds (%d)." - uRORes_err_InvalidHeader, "Invalid binary header. Either incompatible or not a binary message." - uRORes_err_UnknownClassInStream, "Unknown class \"%s\" found in stream." - uRORes_err_UnexpectedClassInStream, "Unexpected class found in stream; class \"%s\" does not descend from \"%s\"." - uRORes_err_InvalidDateTimeReadFromStream, "Invalid DateTime read from Stream." - uRORes_err_CannotFindServer, "Cannot find server \"%s\"" - uRORes_err_ParameterNotFound, "Parameter \"%s\" was not found" - uRORes_err_NotImplemented, "Not implemented" - uRORes_err_TypeNotSupported, "Type \"%s\" not supported" - uRORes_err_ClassFactoryNotFound, "Class factory for interface %s not found" - uRORes_err_UnspecifiedTargetURL, "Unspecified TargetURL" - uRORes_err_IROMessageNotSupported, "Class \"%s\" does not support IROMessage" - uRORes_err_ClassAlreadyRegistered, "Class \"%s\" is already registered" - uRORes_err_UnknownClass, "Unknown class \"%s\"" - uRORes_err_UnknownProxyInterface, "Unknown proxy interface \"%s\"" - uRORes_err_UnknownTransportChannelClass, "Unknown transport channel class \"%s\"" - uRORes_err_UnknownMessageClass, "Unknown message class \"%s\"" - uRORes_err_DispatcherAlreadyAssigned, "Dispatcher for %s already assigned" - uRORes_err_CannotFindMessageDispatcher, "Cannot find message dispatcher. Maybe there is no message component configured for for the requested path?" - uRORes_err_ServerOnlySupportsOneDispatcher, "%s servers only support one dispatcher" - uRORes_err_UnhandledException, "Unhandled exception" - uRORes_err_CannotReadRODLWithoutChannel, "Cannot read RODL information without a channel" - uRORes_err_RodlNoStructElementsDefined, "Struct does not contain any elements." - uRORes_err_RodlNoOperationsDefined, "Service interface does not contain any elements." - uRORes_err_RodlUsedFileDoesNotExist, "The referenced RODL file \"%s\" could not be found." - uRORes_err_RodlInvalidDataType, "Invalid or undefined data type \"%s\"." - uRORes_err_RodlStructCannotBeNested, "Structs cannot recursively contain themselves." - uRORes_err_RodlInvalidAncestorType, "Invalid or undefined ancestor type \"%s\"." - uRORes_err_UnspecifiedRODLLocation, "Unspecified RODL location" - uRORes_str_ExceptionOnServer, "An exception of type %s was raised on the server: %s" - uRORes_str_ExceptionReraisedFromServer, "An exception was raised on the server: %s" - uRORes_err_AssignError, "Cannot assign a \"%s\" to a \"%s\"." - uRORes_err_InvalidRequestStream, "Invalid request stream (%d bytes)" - uRORes_err_NILMessage, "Message is NIL" - uRORes_err_UnspecifiedInterface, "The message does not have an interface name" - uRORes_err_UnspecifiedMessage, "The message does not have a name" - uRORes_err_UnknownMethod, "Unknown method %s for interface %s" - uRORes_err_ClassFactoryDidNotReturnInstance, "Class factory did not return an instance of \"%s\"" - uRORes_err_InvalidIndex, "Invalid index %d" - uRORes_err_InvalidType, "Invalid type \"%s. Expected \"%s\"\"" - uRORes_err_InvalidLibrary, "Invalid library" - uRORes_err_InvalidStream, "Invalid stream" - uRORes_err_InvalidTargetEntity, "Invalid TargetEntity \"%s\"" - uRORes_err_InvalidParamFlag, "Invalid Parameter Flag \"%s\"" - uRORes_err_InvalidStringLength, "Stream read error: Invalid string length \"%d\"" - uRORes_err_InvalidBinaryLength, "Stream read error: Invalid binary length \"%d\"" - uRORes_str_InvalidClassTypeInStream, "Stream read error: Invalid class type encountered: \"%s\"" - uRORes_err_ObjectExpectedInStream, "Stream read error: Object expected, but nil found." - uRORes_err_UnexpectedEndOfStream, "Unexpected end of stream." - uRORes_err_MessageClassMustImplementAssign, "Please implement Assign() for your custom message class." - uRORes_err_InvalidInfo, "Invalid or incomplete info." - uRORes_err_RodlDuplicateName, "Duplicate name." - uRORes_err_RodlNoDataTypeSpecified, "No data type specified." - uRORes_err_RodlNoEnumValues, "Enum does not contain any values." -END - diff --git a/Source/DataAbstract_D10/DataAbstract_D10.rc b/Source/DataAbstract_D10/DataAbstract_D10.rc deleted file mode 100644 index e69de29b..00000000 diff --git a/Source/DataAbstract_D10/DataAbstract_D10.res b/Source/DataAbstract_D10/DataAbstract_D10.res deleted file mode 100644 index 36f26e23..00000000 Binary files a/Source/DataAbstract_D10/DataAbstract_D10.res and /dev/null differ diff --git a/Source/FactuGES_Group.bdsgroup b/Source/FactuGES_Group.bdsgroup index ec1e5079..28a572bc 100644 --- a/Source/FactuGES_Group.bdsgroup +++ b/Source/FactuGES_Group.bdsgroup @@ -9,10 +9,9 @@ - DataAbstract_D10\DataAbstract_D10.bdsproj Base\Base.bdsproj Base\ControllerBase\ControllerBase.bdsproj - Base\GUIBase\GUIBase.bdsproj + GUIBase\GUIBase.bdsproj Modulos\Empresas\Model\Empresas_model.bdsproj Modulos\Empresas\Data\Empresas_data.bdsproj Modulos\Empresas\Controller\Empresas_controller.bdsproj @@ -36,7 +35,7 @@ Modulos\Contactos\Plugin\Contactos_plugin.bdsproj Cliente\FactuGES.bdsproj Servidor\FactuGES_Server.bdsproj - DataAbstract_D10.bpl Base.bpl ControllerBase.bpl GUIBase.bpl Empresas_model.bpl Empresas_data.bpl Empresas_controller.bpl Usuarios.bpl Empresas_view.bpl Empresas_plugin.bpl FormasPago_model.bpl FormasPago_data.bpl FormasPago_controller.bpl FormasPago_view.bpl FormasPago_plugin.bpl TiposIVA_model.bpl TiposIVA_data.bpl TiposIVA_controller.bpl TiposIVA_view.bpl TiposIVA_plugin.bpl Contactos_model.bpl Contactos_data.bpl Contactos_controller.bpl Contactos_view.bpl Contactos_plugin.bpl FactuGES.exe FactuGES_Server.exe + Base.bpl ControllerBase.bpl GUIBase.bpl Empresas_model.bpl Empresas_data.bpl Empresas_controller.bpl Usuarios.bpl Empresas_view.bpl Empresas_plugin.bpl FormasPago_model.bpl FormasPago_data.bpl FormasPago_controller.bpl FormasPago_view.bpl FormasPago_plugin.bpl TiposIVA_model.bpl TiposIVA_data.bpl TiposIVA_controller.bpl TiposIVA_view.bpl TiposIVA_plugin.bpl Contactos_model.bpl Contactos_data.bpl Contactos_controller.bpl Contactos_view.bpl Contactos_plugin.bpl FactuGES.exe FactuGES_Server.exe diff --git a/Source/FactuGES_Group.config b/Source/FactuGES_Group.config deleted file mode 100644 index c8f28340..00000000 --- a/Source/FactuGES_Group.config +++ /dev/null @@ -1,2 +0,0 @@ - - \ No newline at end of file diff --git a/Source/FactuGES_Group.groupproj b/Source/FactuGES_Group.groupproj new file mode 100644 index 00000000..d3bb445e --- /dev/null +++ b/Source/FactuGES_Group.groupproj @@ -0,0 +1,274 @@ + + + {f98b1c11-3200-4f80-b23f-3591938de211} + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Default.Personality + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/Source/Base/GUIBase/GUIBase.bdsproj b/Source/GUIBase/GUIBase.bdsproj similarity index 85% rename from Source/Base/GUIBase/GUIBase.bdsproj rename to Source/GUIBase/GUIBase.bdsproj index c085d671..7b685de9 100644 --- a/Source/Base/GUIBase/GUIBase.bdsproj +++ b/Source/GUIBase/GUIBase.bdsproj @@ -103,8 +103,16 @@ True True True - - + True + True + True + True + True + True + True + True + True + 3 0 @@ -121,9 +129,9 @@ .\ - ..\..\..\Output\Debug\Cliente - ..\..\Lib - T:\COMPON~1\jcl\lib\d10\debug;$(BDS)\lib\Debug;$(BDS)\Lib\Debug\Indy9;..\..\Lib + ..\..\Output\Debug\Cliente + ..\Lib + ..\Lib @@ -139,11 +147,6 @@ True False - - - $00000000 - - True False @@ -170,35 +173,29 @@ 1.0.0.0 - - RemObjects Data Abstract - IDE Package - SMImport suite: data importing into dataset. Scalabium/Mike Shkolnik, 2000-2005 - SMExport suite: data export from dataset. Written by Mike Shkolnik/Scalabium, 1998-2004. - RemObjects Data Abstract - ADOExpress/dbGo Driver - RemObjects Data Abstract - InterBase Express Driver - RemObjects Data Abstract - dbExpress Driver - RemObjects Data Abstract - Scripting Integration Library - TeeChart Components - + + False + + + + - diff --git a/Source/GUIBase/GUIBase.cfg b/Source/GUIBase/GUIBase.cfg new file mode 100644 index 00000000..5fd05cda --- /dev/null +++ b/Source/GUIBase/GUIBase.cfg @@ -0,0 +1,42 @@ +-$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 +-vn +-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" diff --git a/Source/Base/GUIBase/GUIBase.dpk b/Source/GUIBase/GUIBase.dpk similarity index 73% rename from Source/Base/GUIBase/GUIBase.dpk rename to Source/GUIBase/GUIBase.dpk index 5cf719bb..9705be45 100644 --- a/Source/Base/GUIBase/GUIBase.dpk +++ b/Source/GUIBase/GUIBase.dpk @@ -22,67 +22,26 @@ package GUIBase; {$WRITEABLECONST OFF} {$MINENUMSIZE 1} {$IMAGEBASE $400000} -{$IMPLICITBUILD OFF} +{$IMPLICITBUILD ON} +{$DEFINE DEBUG} requires rtl, - DataAbstract_D10, - Base, vcl, dbrtl, vcldb, - cxLibraryD10, - dxThemeD10, - cxEditorsD10, - cxDataD10, - vcljpg, - cxGridD10, - cxPageControlD10, - cxExtEditorsD10, - vclx, - cxExportD10, - tbx_d10, - tb2k_d10, - ccpack10, - designide, - xmlrtl, - vclactnband, - dsnap, - adortl, - dxLayoutControlD10, - dxComnD10, - dxPSCoreD10, - frx10, - fs10, - fqb100, - bdertl, - frxe10, - frxTee10, - fsTee10, - tee, - teeui, - teedb, - dxPScxCommonD10, - dxPSLnksD10, - vclshlctrls, - dxPScxGridLnkD10, - dclcxLibraryD10, - dxPsPrVwAdvD10, - dxBarExtItemsD10, dxBarD10, - GUISDK_D10, - cfpack_d10, - JvAppFrmD10R, - JclVcl, - Jcl, - JvSystemD10R, - JvCoreD10R, - JvPageCompsD10R, - JvStdCtrlsD10R, - PNG_D10, - PngComponentsD10, - ControllerBase, - cxIntlPrintSys3D10; + dxBarExtItemsD10, + dxPScxCommonD10, + dxPScxGridLnkD10, + dxPsPrVwAdvD10, + dxLayoutControlD10, + frx10, + frxe10, + fs10, + JvAppFrmD11R, + JvCtrlsD11R, + Base; contains uEditorBase in 'uEditorBase.pas' {fEditorBase: TCustomEditor}, @@ -95,7 +54,6 @@ contains uEditorDBItem in 'uEditorDBItem.pas' {fEditorDBItem: TCustomEditor}, uViewBarraSeleccion in 'uViewBarraSeleccion.pas' {frViewBarraSeleccion: TFrame}, uViewGridBase in 'uViewGridBase.pas' {frViewGridBase: TFrame}, - uBizInformesAware in 'uBizInformesAware.pas', uViewFormaPago in 'uViewFormaPago.pas' {frViewFormaPago: TFrame}, uViewObservaciones in 'uViewObservaciones.pas' {frViewObservaciones: TFrame}, uViewTotales in 'uViewTotales.pas' {frViewTotales: TFrame}, diff --git a/Source/GUIBase/GUIBase.dproj b/Source/GUIBase/GUIBase.dproj new file mode 100644 index 00000000..b741b0ab --- /dev/null +++ b/Source/GUIBase/GUIBase.dproj @@ -0,0 +1,626 @@ + + + {0ca27a95-0b81-4724-84bf-8f8ed4e421ae} + GUIBase.dpk + Debug + AnyCPU + DCC32 + ..\..\Output\Debug\Cliente\GUIBase.bpl + + + 7.0 + False + False + False + True + 0 + 3 + True + True + .\ + .\ + .\ + ..\..\Output\Release\Cliente + ..\Lib + ..\Lib + ..\Lib + ..\Lib + ..\Lib + RELEASE + + + 7.0 + False + True + 3 + True + True + .\ + .\ + .\ + ..\..\Output\Debug\Cliente + ..\Lib + ..\Lib + ..\Lib + ..\Lib + ..\Lib + DEBUG + + + Delphi.Personality + Package + +FalseTrueFalseTrueFalseFalseTrueFalse1000FalseFalseFalseFalseFalse308212521.0.0.01.0.0.0GUIBase.dpk + + + + + MainSource + + + + + + + + + + + + + + + + + + +
fDialogBase
+
+ +
fEditorBase
+
+ +
fEditorBasico
+
+ +
fEditorDBBase
+
+ +
fEditorDBItem
+
+ +
fEditorGridBase
+
+ +
fEditorItem
+
+ +
fEditorPreview
+
+ +
frViewBarraSeleccion
+
+ +
frViewBase
+
+ +
frViewDetallesBase
+
+ +
frViewDetallesDTO
+
+ +
frViewDetallesGenerico
+
+ +
frViewFiltroBase
+
+ +
frViewFormaPago
+
+ +
frViewGrid
+
+ +
frViewGrid2Niveles
+
+ +
frViewGridBase
+
+ +
frViewIncidencias
+
+ +
frViewObservaciones
+
+ +
frViewPreview
+
+ +
frViewTotales
+
+
+
+ diff --git a/Source/GUIBase/GUIBase.drc b/Source/GUIBase/GUIBase.drc new file mode 100644 index 00000000..c24ef15d --- /dev/null +++ b/Source/GUIBase/GUIBase.drc @@ -0,0 +1,38 @@ +/* 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:\Codigo Tecsitel\Source\GUIBase\uViewBase.dfm */ +/* C:\Codigo Tecsitel\Source\GUIBase\uEditorBase.dfm */ +/* C:\Codigo Tecsitel\Source\GUIBase\uViewFiltroBase.dfm */ +/* C:\Codigo Tecsitel\Source\GUIBase\uViewGridBase.dfm */ +/* C:\Codigo Tecsitel\Source\GUIBase\uEditorItem.dfm */ +/* C:\Codigo Tecsitel\Source\GUIBase\uEditorDBBase.dfm */ +/* C:\Codigo Tecsitel\Source\GUIBase\uEditorGridBase.dfm */ +/* C:\Codigo Tecsitel\Source\GUIBase\uViewPreview.dfm */ +/* C:\Codigo Tecsitel\Source\GUIBase\uEditorPreview.dfm */ +/* C:\Codigo Tecsitel\Source\GUIBase\uEditorDBItem.dfm */ +/* C:\Codigo Tecsitel\Source\GUIBase\uViewBarraSeleccion.dfm */ +/* C:\Codigo Tecsitel\Source\GUIBase\uViewFormaPago.dfm */ +/* C:\Codigo Tecsitel\Source\GUIBase\uViewObservaciones.dfm */ +/* C:\Codigo Tecsitel\Source\GUIBase\uViewTotales.dfm */ +/* C:\Codigo Tecsitel\Source\GUIBase\uViewDetallesBase.dfm */ +/* C:\Codigo Tecsitel\Source\GUIBase\uViewIncidencias.dfm */ +/* C:\Codigo Tecsitel\Source\GUIBase\uViewDetallesDTO.dfm */ +/* C:\Codigo Tecsitel\Source\GUIBase\uViewDetallesGenerico.dfm */ +/* C:\Codigo Tecsitel\Source\GUIBase\uViewGrid2Niveles.dfm */ +/* C:\Codigo Tecsitel\Source\GUIBase\uEditorBasico.dfm */ +/* C:\Codigo Tecsitel\Source\GUIBase\uDialogBase.dfm */ +/* C:\Codigo Tecsitel\Source\GUIBase\uViewGrid.dfm */ +/* C:\Codigo Tecsitel\Source\GUIBase\GUIBase.res */ +/* C:\DOCUME~1\Usuario\CONFIG~1\Temp\dtfE.tmp */ diff --git a/Source/GUIBase/GUIBase.rc b/Source/GUIBase/GUIBase.rc new file mode 100644 index 00000000..153736af --- /dev/null +++ b/Source/GUIBase/GUIBase.rc @@ -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 diff --git a/Source/GUIBase/GUIBase.res b/Source/GUIBase/GUIBase.res new file mode 100644 index 00000000..8b251f31 Binary files /dev/null and b/Source/GUIBase/GUIBase.res differ diff --git a/Source/Base/GUIBase/uDialogBase.dfm b/Source/GUIBase/uDialogBase.dfm similarity index 100% rename from Source/Base/GUIBase/uDialogBase.dfm rename to Source/GUIBase/uDialogBase.dfm diff --git a/Source/Base/GUIBase/uDialogBase.pas b/Source/GUIBase/uDialogBase.pas similarity index 100% rename from Source/Base/GUIBase/uDialogBase.pas rename to Source/GUIBase/uDialogBase.pas diff --git a/Source/Base/GUIBase/uEditorBase.dfm b/Source/GUIBase/uEditorBase.dfm similarity index 100% rename from Source/Base/GUIBase/uEditorBase.dfm rename to Source/GUIBase/uEditorBase.dfm diff --git a/Source/Base/GUIBase/uEditorBase.pas b/Source/GUIBase/uEditorBase.pas similarity index 91% rename from Source/Base/GUIBase/uEditorBase.pas rename to Source/GUIBase/uEditorBase.pas index 4622c761..6bb01436 100644 --- a/Source/Base/GUIBase/uEditorBase.pas +++ b/Source/GUIBase/uEditorBase.pas @@ -15,6 +15,7 @@ type IEditorBase = interface(ICustomEditor) ['{CB8CDE00-B225-4A1D-9A5C-EC6FBE2C854B}'] function ShowModal : Integer; + procedure Show; end; TfEditorBase = class(TCustomEditor, IEditorBase) @@ -118,8 +119,8 @@ type procedure actEliminarUpdate(Sender: TObject); procedure actGuardarCerrarUpdate(Sender: TObject); procedure actGuardarUpdate(Sender: TObject); - protected + procedure CreateParams(Var params: TCreateParams); override; procedure ActualizarEstadoEditor; virtual; function ModifiedQuery : Boolean; procedure ModificarInterno; virtual; @@ -135,10 +136,10 @@ type procedure DuplicarInterno; virtual; procedure PonerTitulos(const ATitulo: String = ''); virtual; procedure SetReadOnly(Value: Boolean); override; - public constructor Create(AOwner: TComponent); override; function ShowModal : Integer; + procedure Show; published procedure FormShow(Sender: TObject); virtual; end; @@ -422,6 +423,21 @@ begin end; end; +procedure TfEditorBase.Show; +begin + inherited Show; +// Self.WindowState := wsNormal; +// self.FormStyle := fsNormal; +end; + +procedure TfEditorBase.CreateParams(var params: TCreateParams); +begin + //No tocar, sirve para crear varios formularios hijos abiertos a la vez fuera de la aplicación principal + inherited CreateParams( params ); + params.Style := params.Style and not WS_POPUP; + params.ExStyle := params.ExStyle and not WS_EX_TOOLWINDOW or WS_EX_APPWINDOW; +end; + function TfEditorBase.ShowModal: Integer; var ABorderIcons : TBorderIcons; diff --git a/Source/Base/GUIBase/uEditorBasico.dfm b/Source/GUIBase/uEditorBasico.dfm similarity index 100% rename from Source/Base/GUIBase/uEditorBasico.dfm rename to Source/GUIBase/uEditorBasico.dfm diff --git a/Source/Base/GUIBase/uEditorBasico.pas b/Source/GUIBase/uEditorBasico.pas similarity index 100% rename from Source/Base/GUIBase/uEditorBasico.pas rename to Source/GUIBase/uEditorBasico.pas diff --git a/Source/Base/GUIBase/uEditorDBBase.dfm b/Source/GUIBase/uEditorDBBase.dfm similarity index 100% rename from Source/Base/GUIBase/uEditorDBBase.dfm rename to Source/GUIBase/uEditorDBBase.dfm diff --git a/Source/Base/GUIBase/uEditorDBBase.pas b/Source/GUIBase/uEditorDBBase.pas similarity index 95% rename from Source/Base/GUIBase/uEditorDBBase.pas rename to Source/GUIBase/uEditorDBBase.pas index 527a1b57..246a4b72 100644 --- a/Source/Base/GUIBase/uEditorDBBase.pas +++ b/Source/GUIBase/uEditorDBBase.pas @@ -10,7 +10,7 @@ uses uDAScriptingProvider, uDACDSDataTable, AppEvnts, uCustomView, uViewBase, JvAppStorage, JvAppRegistryStorage, JvFormPlacement, pngimage, ExtCtrls, dxLayoutLookAndFeels, JvComponentBase, TBXStatusBars, - JvExComCtrls, JvStatusBar; + JvExComCtrls, JvStatusBar, uDAInterfaces; type IEditorDBBase = interface(IEditorBase) @@ -42,8 +42,7 @@ type implementation uses - uDataTableUtils, uBizInformesAware, - uDAInterfaces, cxControls, uCustomEditor; + uDataTableUtils, cxControls, uCustomEditor; {$R *.dfm} diff --git a/Source/Base/GUIBase/uEditorDBItem.dfm b/Source/GUIBase/uEditorDBItem.dfm similarity index 100% rename from Source/Base/GUIBase/uEditorDBItem.dfm rename to Source/GUIBase/uEditorDBItem.dfm diff --git a/Source/Base/GUIBase/uEditorDBItem.pas b/Source/GUIBase/uEditorDBItem.pas similarity index 93% rename from Source/Base/GUIBase/uEditorDBItem.pas rename to Source/GUIBase/uEditorDBItem.pas index 1e689d94..9ce1e0ad 100644 --- a/Source/Base/GUIBase/uEditorDBItem.pas +++ b/Source/GUIBase/uEditorDBItem.pas @@ -10,7 +10,7 @@ uses StdCtrls, uDAScriptingProvider, uDACDSDataTable, AppEvnts, uCustomView, uViewBase, JvAppStorage, JvAppRegistryStorage, JvFormPlacement, pngimage, ExtCtrls, JvComponentBase, dxLayoutLookAndFeels, - JvExComCtrls, JvStatusBar; + JvExComCtrls, JvStatusBar, uDAInterfaces; type IEditorDBItem = interface(IEditorDBBase) @@ -31,7 +31,7 @@ type implementation uses - uBizInformesAware, uEditorBase, uDialogUtils; + uEditorBase, uDialogUtils; {$R *.dfm} diff --git a/Source/Base/GUIBase/uEditorGridBase.dfm b/Source/GUIBase/uEditorGridBase.dfm similarity index 100% rename from Source/Base/GUIBase/uEditorGridBase.dfm rename to Source/GUIBase/uEditorGridBase.dfm diff --git a/Source/Base/GUIBase/uEditorGridBase.pas b/Source/GUIBase/uEditorGridBase.pas similarity index 96% rename from Source/Base/GUIBase/uEditorGridBase.pas rename to Source/GUIBase/uEditorGridBase.pas index f76b7d86..c67ed2e4 100644 --- a/Source/Base/GUIBase/uEditorGridBase.pas +++ b/Source/GUIBase/uEditorGridBase.pas @@ -19,7 +19,7 @@ uses uDAScriptingProvider, uDACDSDataTable, AppEvnts, JvAppStorage, JvAppRegistryStorage, JvFormPlacement, pngimage, ExtCtrls, JvComponentBase, dxLayoutLookAndFeels, TBXStatusBars, JvExComCtrls, - JvStatusBar; + JvStatusBar, uDAInterfaces; type IEditorGridBase = interface(IEditorDBBase) diff --git a/Source/Base/GUIBase/uEditorItem.dfm b/Source/GUIBase/uEditorItem.dfm similarity index 100% rename from Source/Base/GUIBase/uEditorItem.dfm rename to Source/GUIBase/uEditorItem.dfm diff --git a/Source/Base/GUIBase/uEditorItem.pas b/Source/GUIBase/uEditorItem.pas similarity index 100% rename from Source/Base/GUIBase/uEditorItem.pas rename to Source/GUIBase/uEditorItem.pas diff --git a/Source/Base/GUIBase/uEditorPSPreview.dfm b/Source/GUIBase/uEditorPSPreview.dfm similarity index 100% rename from Source/Base/GUIBase/uEditorPSPreview.dfm rename to Source/GUIBase/uEditorPSPreview.dfm diff --git a/Source/Base/GUIBase/uEditorPSPreview.pas b/Source/GUIBase/uEditorPSPreview.pas similarity index 100% rename from Source/Base/GUIBase/uEditorPSPreview.pas rename to Source/GUIBase/uEditorPSPreview.pas diff --git a/Source/Base/GUIBase/uEditorPreview.dfm b/Source/GUIBase/uEditorPreview.dfm similarity index 97% rename from Source/Base/GUIBase/uEditorPreview.dfm rename to Source/GUIBase/uEditorPreview.dfm index e33fe45a..0532ec05 100644 --- a/Source/Base/GUIBase/uEditorPreview.dfm +++ b/Source/GUIBase/uEditorPreview.dfm @@ -875,10 +875,6 @@ inherited fEditorPreview: TfEditorPreview Left = 48 Top = 240 end - object frxChartObject1: TfrxChartObject - Left = 16 - Top = 272 - end object frxRichObject1: TfrxRichObject Left = 48 Top = 272 diff --git a/Source/Base/GUIBase/uEditorPreview.pas b/Source/GUIBase/uEditorPreview.pas similarity index 95% rename from Source/Base/GUIBase/uEditorPreview.pas rename to Source/GUIBase/uEditorPreview.pas index 48b75e08..6769b0e9 100644 --- a/Source/Base/GUIBase/uEditorPreview.pas +++ b/Source/GUIBase/uEditorPreview.pas @@ -9,7 +9,7 @@ uses TB2ExtItems, TBXExtItems, uViewPreview, frxClass, ComCtrls, frxPreview, JvFormAutoSize, JvAppStorage, JvAppRegistryStorage, JvFormPlacement, pngimage, frxExportImage, frxExportPDF, frxDCtrl, frxDMPExport, - frxGradient, frxChBox, frxCross, frxRich, frxChart, frxOLE, frxBarcode, + frxGradient, frxChBox, frxCross, frxRich, frxOLE, frxBarcode, ExtCtrls, JvComponentBase, TBXStatusBars, JvExComCtrls, JvStatusBar; type @@ -55,7 +55,6 @@ type TBXSeparatorItem18: TTBXSeparatorItem; frxBarCodeObject1: TfrxBarCodeObject; frxOLEObject1: TfrxOLEObject; - frxChartObject1: TfrxChartObject; frxRichObject1: TfrxRichObject; frxCrossObject1: TfrxCrossObject; frxCheckBoxObject1: TfrxCheckBoxObject; diff --git a/Source/Base/GUIBase/uEditorUtils.pas b/Source/GUIBase/uEditorUtils.pas similarity index 100% rename from Source/Base/GUIBase/uEditorUtils.pas rename to Source/GUIBase/uEditorUtils.pas diff --git a/Source/Base/GUIBase/uViewBarraSeleccion.dfm b/Source/GUIBase/uViewBarraSeleccion.dfm similarity index 100% rename from Source/Base/GUIBase/uViewBarraSeleccion.dfm rename to Source/GUIBase/uViewBarraSeleccion.dfm diff --git a/Source/Base/GUIBase/uViewBarraSeleccion.pas b/Source/GUIBase/uViewBarraSeleccion.pas similarity index 100% rename from Source/Base/GUIBase/uViewBarraSeleccion.pas rename to Source/GUIBase/uViewBarraSeleccion.pas diff --git a/Source/Base/GUIBase/uViewBase.dfm b/Source/GUIBase/uViewBase.dfm similarity index 100% rename from Source/Base/GUIBase/uViewBase.dfm rename to Source/GUIBase/uViewBase.dfm diff --git a/Source/Base/GUIBase/uViewBase.pas b/Source/GUIBase/uViewBase.pas similarity index 100% rename from Source/Base/GUIBase/uViewBase.pas rename to Source/GUIBase/uViewBase.pas diff --git a/Source/Base/GUIBase/uViewDetallesBase.dfm b/Source/GUIBase/uViewDetallesBase.dfm similarity index 100% rename from Source/Base/GUIBase/uViewDetallesBase.dfm rename to Source/GUIBase/uViewDetallesBase.dfm diff --git a/Source/Base/GUIBase/uViewDetallesBase.pas b/Source/GUIBase/uViewDetallesBase.pas similarity index 100% rename from Source/Base/GUIBase/uViewDetallesBase.pas rename to Source/GUIBase/uViewDetallesBase.pas diff --git a/Source/Base/GUIBase/uViewDetallesDTO.dfm b/Source/GUIBase/uViewDetallesDTO.dfm similarity index 100% rename from Source/Base/GUIBase/uViewDetallesDTO.dfm rename to Source/GUIBase/uViewDetallesDTO.dfm diff --git a/Source/Base/GUIBase/uViewDetallesDTO.pas b/Source/GUIBase/uViewDetallesDTO.pas similarity index 100% rename from Source/Base/GUIBase/uViewDetallesDTO.pas rename to Source/GUIBase/uViewDetallesDTO.pas diff --git a/Source/Base/GUIBase/uViewDetallesGenerico.dfm b/Source/GUIBase/uViewDetallesGenerico.dfm similarity index 100% rename from Source/Base/GUIBase/uViewDetallesGenerico.dfm rename to Source/GUIBase/uViewDetallesGenerico.dfm diff --git a/Source/Base/GUIBase/uViewDetallesGenerico.pas b/Source/GUIBase/uViewDetallesGenerico.pas similarity index 95% rename from Source/Base/GUIBase/uViewDetallesGenerico.pas rename to Source/GUIBase/uViewDetallesGenerico.pas index d379e6c8..6261decc 100644 --- a/Source/Base/GUIBase/uViewDetallesGenerico.pas +++ b/Source/GUIBase/uViewDetallesGenerico.pas @@ -8,7 +8,7 @@ uses cxDataStorage, cxEdit, DB, cxDBData, cxTextEdit, ActnList, ImgList, PngImageList, uDADataTable, ComCtrls, ToolWin, cxGridLevel, cxGridCustomTableView, cxGridTableView, cxGridDBTableView, cxClasses, - cxControls, cxGridCustomView, cxGrid; + cxControls, cxGridCustomView, cxGrid, uDAInterfaces; type TfrViewDetallesGenerico = class(TfrViewBase) diff --git a/Source/Base/GUIBase/uViewFiltroBase.dfm b/Source/GUIBase/uViewFiltroBase.dfm similarity index 100% rename from Source/Base/GUIBase/uViewFiltroBase.dfm rename to Source/GUIBase/uViewFiltroBase.dfm diff --git a/Source/Base/GUIBase/uViewFiltroBase.pas b/Source/GUIBase/uViewFiltroBase.pas similarity index 100% rename from Source/Base/GUIBase/uViewFiltroBase.pas rename to Source/GUIBase/uViewFiltroBase.pas diff --git a/Source/Base/GUIBase/uViewFormaPago.dfm b/Source/GUIBase/uViewFormaPago.dfm similarity index 100% rename from Source/Base/GUIBase/uViewFormaPago.dfm rename to Source/GUIBase/uViewFormaPago.dfm diff --git a/Source/Base/GUIBase/uViewFormaPago.pas b/Source/GUIBase/uViewFormaPago.pas similarity index 100% rename from Source/Base/GUIBase/uViewFormaPago.pas rename to Source/GUIBase/uViewFormaPago.pas diff --git a/Source/Base/GUIBase/uViewGrid.dfm b/Source/GUIBase/uViewGrid.dfm similarity index 95% rename from Source/Base/GUIBase/uViewGrid.dfm rename to Source/GUIBase/uViewGrid.dfm index 8bcc1eda..e658abbe 100644 --- a/Source/Base/GUIBase/uViewGrid.dfm +++ b/Source/GUIBase/uViewGrid.dfm @@ -19,7 +19,7 @@ inherited frViewGrid: TfrViewGrid LookAndFeel.Kind = lfOffice11 LookAndFeel.NativeStyle = True object cxGridView: TcxGridDBTableView - OnDblClick = cxGridViewDblClick + OnDblClick = cxGridViewDblClick NavigatorButtons.ConfirmDelete = False FilterBox.Visible = fvNever DataController.DataSource = dsDataSource @@ -107,6 +107,7 @@ inherited frViewGrid: TfrViewGrid SupportedDocks = [dkStandardDock, dkMultiDock] TabOrder = 2 Visible = False + ExplicitWidth = 128 object TBXAlignmentPanel1: TTBXAlignmentPanel Left = 0 Top = 0 @@ -154,7 +155,7 @@ inherited frViewGrid: TfrViewGrid PrinterPage.ScaleMode = smFit PrinterPage._dxMeasurementUnits_ = 0 PrinterPage._dxLastMU_ = 2 - ReportDocument.CreationDate = 39296.809313506940000000 + ReportDocument.CreationDate = 39367.963260995370000000 StyleManager = dxPrintStyleManager1 OptionsCards.Shadow.Depth = 0 OptionsExpanding.ExpandGroupRows = True diff --git a/Source/Base/GUIBase/uViewGrid.pas b/Source/GUIBase/uViewGrid.pas similarity index 94% rename from Source/Base/GUIBase/uViewGrid.pas rename to Source/GUIBase/uViewGrid.pas index cf63992e..9bab8383 100644 --- a/Source/Base/GUIBase/uViewGrid.pas +++ b/Source/GUIBase/uViewGrid.pas @@ -1,4 +1,4 @@ -{*******************************************************} +{*******************************************************} { } { Administración de puntos de venta } { } @@ -21,7 +21,7 @@ uses dxPSEdgePatterns, dxPSCore, dxPScxCommon, dxPScxGridLnk, dxPrnDlg, cxIntlPrintSys3, dxPSPrvwAdv, uViewGridBase, cxGridCustomPopupMenu, cxGridPopupMenu, uViewFiltroBase, ComCtrls, cxPC, ImgList, PngImageList, - TB2Item, TBX, TB2Dock, TB2Toolbar, TBXDkPanels, dxPgsDlg; + TB2Item, TBX, TB2Dock, TB2Toolbar, TBXDkPanels, dxPgsDlg, uDAInterfaces; type IViewGrid = interface(IViewGridBase) diff --git a/Source/Base/GUIBase/uViewGrid2Niveles.dfm b/Source/GUIBase/uViewGrid2Niveles.dfm similarity index 100% rename from Source/Base/GUIBase/uViewGrid2Niveles.dfm rename to Source/GUIBase/uViewGrid2Niveles.dfm diff --git a/Source/Base/GUIBase/uViewGrid2Niveles.pas b/Source/GUIBase/uViewGrid2Niveles.pas similarity index 100% rename from Source/Base/GUIBase/uViewGrid2Niveles.pas rename to Source/GUIBase/uViewGrid2Niveles.pas diff --git a/Source/Base/GUIBase/uViewGridBase.dfm b/Source/GUIBase/uViewGridBase.dfm similarity index 100% rename from Source/Base/GUIBase/uViewGridBase.dfm rename to Source/GUIBase/uViewGridBase.dfm diff --git a/Source/Base/GUIBase/uViewGridBase.pas b/Source/GUIBase/uViewGridBase.pas similarity index 95% rename from Source/Base/GUIBase/uViewGridBase.pas rename to Source/GUIBase/uViewGridBase.pas index 293a96de..4e4c072e 100644 --- a/Source/Base/GUIBase/uViewGridBase.pas +++ b/Source/GUIBase/uViewGridBase.pas @@ -19,7 +19,7 @@ uses DBGrids, JvComponent, JvFormAutoSize, dxPSGlbl, dxPSUtl, dxPSEngn, dxPrnPg, dxBkgnd, dxWrap, dxPrnDev, dxPSCompsProvider, dxPSFillPatterns, dxPSEdgePatterns, dxPSCore, dxPScxCommon, dxPScxGridLnk, dxPrnDlg, - cxIntlPrintSys3, dxPSPrvwAdv, uGridUtils, uViewFiltroBase; + cxIntlPrintSys3, dxPSPrvwAdv, uGridUtils, uViewFiltroBase, uDAInterfaces; type IViewGridBase = interface(IViewBase) diff --git a/Source/Base/GUIBase/uViewIncidencias.dfm b/Source/GUIBase/uViewIncidencias.dfm similarity index 100% rename from Source/Base/GUIBase/uViewIncidencias.dfm rename to Source/GUIBase/uViewIncidencias.dfm diff --git a/Source/Base/GUIBase/uViewIncidencias.pas b/Source/GUIBase/uViewIncidencias.pas similarity index 100% rename from Source/Base/GUIBase/uViewIncidencias.pas rename to Source/GUIBase/uViewIncidencias.pas diff --git a/Source/Base/GUIBase/uViewObservaciones.dfm b/Source/GUIBase/uViewObservaciones.dfm similarity index 100% rename from Source/Base/GUIBase/uViewObservaciones.dfm rename to Source/GUIBase/uViewObservaciones.dfm diff --git a/Source/Base/GUIBase/uViewObservaciones.pas b/Source/GUIBase/uViewObservaciones.pas similarity index 100% rename from Source/Base/GUIBase/uViewObservaciones.pas rename to Source/GUIBase/uViewObservaciones.pas diff --git a/Source/Base/GUIBase/uViewPreview.dfm b/Source/GUIBase/uViewPreview.dfm similarity index 100% rename from Source/Base/GUIBase/uViewPreview.dfm rename to Source/GUIBase/uViewPreview.dfm diff --git a/Source/Base/GUIBase/uViewPreview.pas b/Source/GUIBase/uViewPreview.pas similarity index 100% rename from Source/Base/GUIBase/uViewPreview.pas rename to Source/GUIBase/uViewPreview.pas diff --git a/Source/Base/GUIBase/uViewTotales.dfm b/Source/GUIBase/uViewTotales.dfm similarity index 100% rename from Source/Base/GUIBase/uViewTotales.dfm rename to Source/GUIBase/uViewTotales.dfm diff --git a/Source/Base/GUIBase/uViewTotales.pas b/Source/GUIBase/uViewTotales.pas similarity index 100% rename from Source/Base/GUIBase/uViewTotales.pas rename to Source/GUIBase/uViewTotales.pas diff --git a/Output/Debug/Servidor/Informes/InfEtiquetasContacto.fr3 b/Source/Informes/InfEtiquetasContacto.fr3 similarity index 100% rename from Output/Debug/Servidor/Informes/InfEtiquetasContacto.fr3 rename to Source/Informes/InfEtiquetasContacto.fr3 diff --git a/Output/Debug/Servidor/Informes/InfFichaEmpleado.fr3 b/Source/Informes/InfFichaEmpleado.fr3 similarity index 100% rename from Output/Debug/Servidor/Informes/InfFichaEmpleado.fr3 rename to Source/Informes/InfFichaEmpleado.fr3 diff --git a/Source/Modulos/Contactos/Contactos_Group.groupproj b/Source/Modulos/Contactos/Contactos_Group.groupproj new file mode 100644 index 00000000..99210e36 --- /dev/null +++ b/Source/Modulos/Contactos/Contactos_Group.groupproj @@ -0,0 +1,124 @@ + + + {9e374daa-b130-47db-a2de-c184f072bea0} + + + + + + + + + + + + + + + + Default.Personality + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/Source/Modulos/Contactos/Controller/Contactos_controller.dpk b/Source/Modulos/Contactos/Controller/Contactos_controller.dpk index 47b4be61..79dd733e 100644 --- a/Source/Modulos/Contactos/Controller/Contactos_controller.dpk +++ b/Source/Modulos/Contactos/Controller/Contactos_controller.dpk @@ -22,38 +22,16 @@ package Contactos_controller; {$WRITEABLECONST OFF} {$MINENUMSIZE 1} {$IMAGEBASE $400000} -{$IMPLICITBUILD OFF} -{%TogetherDiagram 'ModelSupport_Contactos_controller\default.txaPackage'} +{$IMPLICITBUILD ON} requires rtl, vcl, - DataAbstract_D10, Base, GUIBase, + ApplicationBase, Contactos_model, - Contactos_data, - dbrtl, - cxLibraryD10, - dxThemeD10, - GUISDK_D10, - ccpack10, - designide, - xmlrtl, - vclactnband, - vclx, - cfpack_d10, - JvAppFrmD10R, - vcljpg, - JclVcl, - Jcl, - JvSystemD10R, - JvCoreD10R, - dsnap, - vcldb, - adortl, - JvCtrlsD10R, - JvStdCtrlsD10R; + Contactos_data; contains uContactosController in 'uContactosController.pas', diff --git a/Source/Modulos/Contactos/Controller/Contactos_controller.dpk.bak b/Source/Modulos/Contactos/Controller/Contactos_controller.dpk.bak new file mode 100644 index 00000000..7d1b8717 --- /dev/null +++ b/Source/Modulos/Contactos/Controller/Contactos_controller.dpk.bak @@ -0,0 +1,66 @@ +package Contactos_controller; + +{$R *.res} +{$ALIGN 8} +{$ASSERTIONS ON} +{$BOOLEVAL OFF} +{$DEBUGINFO ON} +{$EXTENDEDSYNTAX ON} +{$IMPORTEDDATA ON} +{$IOCHECKS ON} +{$LOCALSYMBOLS ON} +{$LONGSTRINGS ON} +{$OPENSTRINGS ON} +{$OPTIMIZATION ON} +{$OVERFLOWCHECKS OFF} +{$RANGECHECKS OFF} +{$REFERENCEINFO ON} +{$SAFEDIVIDE OFF} +{$STACKFRAMES OFF} +{$TYPEDADDRESS OFF} +{$VARSTRINGCHECKS ON} +{$WRITEABLECONST OFF} +{$MINENUMSIZE 1} +{$IMAGEBASE $400000} +{$IMPLICITBUILD OFF} +{%TogetherDiagram 'ModelSupport_Contactos_controller\default.txaPackage'} + +requires + rtl, + vcl, + Base, + GUIBase, + Contactos_model, + Contactos_data; + +contains + uContactosController in 'uContactosController.pas', + uIEditorContactos in 'View\uIEditorContactos.pas', + uIEditorContacto in 'View\uIEditorContacto.pas', + uIEditorCliente in 'View\uIEditorCliente.pas', + uIEditorClientes in 'View\uIEditorClientes.pas', + uClientesController in 'uClientesController.pas', + uIEditorProveedores in 'View\uIEditorProveedores.pas', + uIEditorEmpleados in 'View\uIEditorEmpleados.pas', + uIEditorEmpleado in 'View\uIEditorEmpleado.pas', + uIEditorProveedor in 'View\uIEditorProveedor.pas', + uProveedoresController in 'uProveedoresController.pas', + uEmpleadosController in 'uEmpleadosController.pas', + uIEditorElegirClientes in 'View\uIEditorElegirClientes.pas', + uIEditorElegirProveedores in 'View\uIEditorElegirProveedores.pas', + uIEditorElegirContactos in 'View\uIEditorElegirContactos.pas', + uIEditorDireccionContacto in 'View\uIEditorDireccionContacto.pas', + uDireccionesContactoController in 'uDireccionesContactoController.pas', + uIEditorElegirDireccionEntrega in 'View\uIEditorElegirDireccionEntrega.pas', + uGruposClienteController in 'uGruposClienteController.pas', + uIEditorGruposCliente in 'View\uIEditorGruposCliente.pas', + uGruposProveedorController in 'uGruposProveedorController.pas', + uGruposEmpleadoController in 'uGruposEmpleadoController.pas', + uIEditorGruposProveedor in 'View\uIEditorGruposProveedor.pas', + uIEditorGruposEmpleado in 'View\uIEditorGruposEmpleado.pas', + uFichasEmpleadoReportController in 'uFichasEmpleadoReportController.pas', + uIEditorFichasEmpleadoPreview in 'View\uIEditorFichasEmpleadoPreview.pas', + uEtiquetasContactosReportController in 'uEtiquetasContactosReportController.pas', + uIEditorEtiquetasContactosPreview in 'View\uIEditorEtiquetasContactosPreview.pas'; + +end. diff --git a/Source/Modulos/Contactos/Controller/Contactos_controller.dproj b/Source/Modulos/Contactos/Controller/Contactos_controller.dproj new file mode 100644 index 00000000..4d1e07ae --- /dev/null +++ b/Source/Modulos/Contactos/Controller/Contactos_controller.dproj @@ -0,0 +1,576 @@ + + + + {e4ad187e-0c3a-462a-b435-f69475af2f56} + Contactos_controller.dpk + Debug + AnyCPU + DCC32 + ..\..\..\..\Output\Debug\Cliente\Contactos_controller.bpl + + + 7.0 + False + False + 0 + 3 + .\ + .\ + .\ + ..\..\..\..\Output\Debug\Cliente + ..\..\Lib + ..\..\..\Lib;..\..\Lib + ..\..\..\Lib;..\..\Lib + ..\..\..\Lib;..\..\Lib + ..\..\..\Lib;..\..\Lib + RELEASE + + + 7.0 + 3 + .\ + .\ + .\ + ..\..\..\..\Output\Debug\Cliente + ..\..\Lib + ..\..\..\Lib;..\..\Lib + ..\..\..\Lib;..\..\Lib + ..\..\..\Lib;..\..\Lib + ..\..\..\Lib;..\..\Lib + + + Delphi.Personality + Package + +FalseTrueFalseTrueFalseFalseTrueFalse1000FalseFalseFalseFalseFalse308212521.0.0.01.0.0.0 + JCL Debug IDE extension + JCL Project Analyzer + JCL Open and Save IDE dialogs with favorite folders + Contactos_controller.dpk + + + + + MainSource + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Source/Modulos/Contactos/Controller/Contactos_controller.drc b/Source/Modulos/Contactos/Controller/Contactos_controller.drc index 7642ac97..eeee0c01 100644 --- a/Source/Modulos/Contactos/Controller/Contactos_controller.drc +++ b/Source/Modulos/Contactos/Controller/Contactos_controller.drc @@ -1,5 +1,5 @@ -/* VER180 - Generated by the Borland Delphi Pascal Compiler +/* VER185 + Generated by the CodeGear Delphi Pascal Compiler because -GD or --drc was supplied to the compiler. This file contains compiler-generated resources that @@ -12,3 +12,5 @@ STRINGTABLE BEGIN END +/* C:\Codigo Tecsitel\Source\Modulos\Contactos\Controller\Contactos_controller.res */ +/* C:\Codigo Tecsitel\Source\Modulos\Contactos\Controller\Contactos_controller.drf */ diff --git a/Source/Modulos/Contactos/Controller/Contactos_controller.identcache b/Source/Modulos/Contactos/Controller/Contactos_controller.identcache new file mode 100644 index 00000000..eb5f1875 Binary files /dev/null and b/Source/Modulos/Contactos/Controller/Contactos_controller.identcache differ diff --git a/Source/Modulos/Contactos/Controller/Contactos_controller.rc b/Source/Modulos/Contactos/Controller/Contactos_controller.rc index e69de29b..153736af 100644 --- a/Source/Modulos/Contactos/Controller/Contactos_controller.rc +++ b/Source/Modulos/Contactos/Controller/Contactos_controller.rc @@ -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 diff --git a/Source/Modulos/Contactos/Controller/Contactos_controller.res b/Source/Modulos/Contactos/Controller/Contactos_controller.res index 36f26e23..8b251f31 100644 Binary files a/Source/Modulos/Contactos/Controller/Contactos_controller.res and b/Source/Modulos/Contactos/Controller/Contactos_controller.res differ diff --git a/Source/Modulos/Contactos/Controller/uClientesController.pas b/Source/Modulos/Contactos/Controller/uClientesController.pas index 4ae4bc63..b7ebadf8 100644 --- a/Source/Modulos/Contactos/Controller/uClientesController.pas +++ b/Source/Modulos/Contactos/Controller/uClientesController.pas @@ -23,7 +23,6 @@ type TClientesController = class(TContactosController, IClientesController) protected FDireccionesController : IDireccionesContactoController; - procedure AsignarID(AContacto: IBizContacto; const IDNuevo: Integer); override; function ValidarContacto(AContacto: IBizContacto): Boolean; override; public constructor Create; override; @@ -53,25 +52,11 @@ implementation uses Forms, Classes, Windows, SysUtils, Controls, cxControls, uDialogUtils, uDataModuleClientes, uEditorRegistryUtils, uDataTableUtils, uDADataTable, DB, schContactosClient_Intf, uEtiquetasContactosReportController, - uIEditorElegirClientes, uIEditorElegirDireccionEntrega, uEditorGridBase; + uIEditorElegirClientes, uIEditorElegirDireccionEntrega, uEditorGridBase, + Dialogs; { TClientesController } -procedure TClientesController.AsignarID(AContacto: IBizContacto; - const IDNuevo: Integer); -begin - if not Assigned(AContacto) then - raise Exception.Create ('Contacto no asignado'); - - { Los datos de descuentos hay que comprobarlos siempre - tanto en inserción como en modificación. } - with (AContacto as IBizCliente) do - if Assigned(Descuentos) then - AsignarIDDetalles(AContacto, IDNuevo, Descuentos.DataTable); - - inherited; -end; - function TClientesController.Buscar(const ID: Integer): IBizContacto; begin Result := (FDataModule as IDataModuleClientes).GetItem(ID); @@ -367,24 +352,30 @@ end; procedure TClientesController.Ver(AContacto: IBizContacto); var AEditor : IEditorCliente; + AItem : IBizCliente; begin AEditor := NIL; ShowHourglassCursor; try - CreateEditor('EditorCliente', IEditorCliente, AEditor); - with AEditor do - begin - Contacto := AContacto; - Controller := Self; - end; + AItem := (FDataModule as IDataModuleClientes).GetItem(AContacto.ID); + AItem.DataTable.Active := True; + +// CopyDataTable(AContacto.DataTable, AItem.DataTable, True); + + CreateEditor('EditorCliente', IEditorCliente, AEditor); + with AEditor do + begin + Contacto := AItem; + Controller := Self; + end; finally HideHourglassCursor; end; if Assigned(AEditor) then try - AEditor.ShowModal; - AEditor.Release; + AEditor.Show; + //AEditor.Release; finally AEditor := NIL; end; diff --git a/Source/Modulos/Contactos/Controller/uContactosController.pas b/Source/Modulos/Contactos/Controller/uContactosController.pas index 976d4256..d0e41946 100644 --- a/Source/Modulos/Contactos/Controller/uContactosController.pas +++ b/Source/Modulos/Contactos/Controller/uContactosController.pas @@ -32,9 +32,6 @@ type TContactosController = class(TInterfacedObject, IContactosController) protected FDataModule : IDataModuleContactos; - procedure AsignarID(AContacto: IBizContacto; const IDNuevo : Integer); virtual; - procedure AsignarIDDetalles(AContacto: IBizContacto; - const IDCabecera : Integer; ADataTable : TDADataTable); procedure FiltrarEmpresa(AContacto : IBizContacto); virtual; function _Vacio : IBizContacto; virtual; function ValidarContacto(AContacto : IBizContacto): Boolean; virtual; @@ -66,7 +63,7 @@ implementation uses Dialogs, uEditorRegistryUtils, cxControls, DB, uDAInterfaces, uDataTableUtils, - uDataModuleUsuarios, schContactosClient_Intf; + schContactosClient_Intf, uFactuGES_App; { TContactosController } @@ -75,55 +72,6 @@ begin AContacto.Insert; end; -procedure TContactosController.AsignarID(AContacto: IBizContacto; const IDNuevo : Integer); -begin - if not Assigned(AContacto) then - raise Exception.Create ('Contacto no asignado'); - - if AContacto.EsNuevo then - begin - { ¡¡¡ OJO !!! - Primero cambiamos el ID de las tablas detalles - porque si cambiamos antes el ID de la cabecera - deja de funcionar la relacion M/D y no - encontraríamos las filas detalle. - - --> MASTER.ID = DETAIL.ID_CONTACTO <-- - } - - with AContacto._Categorias do - begin - if not DataTable.Active then - DataTable.Active := True; - Insert; - ID_CONTACTO := IDNuevo; - ID_CATEGORIA := AContacto.ID_CATEGORIA; - Post; - end; - end; - - { Los datos bancarios hay que comprobarlos siempre - tanto en inserción como en modificación. } - if Assigned(AContacto.DatosBancarios) then - AsignarIDDetalles(AContacto, IDNuevo, AContacto.DatosBancarios.DataTable); - - - { Las direcciones extras hay que comprobarlas siempre - tanto en inserción como en modificación. } - if Assigned(AContacto.Direcciones) then - AsignarIDDetalles(AContacto, IDNuevo, AContacto.Direcciones.DataTable); - - - if AContacto.EsNuevo then - begin - AContacto.Edit; - AContacto.ID := IDNuevo; - AContacto.ID_EMPRESA := dmUsuarios.IDEmpresaActual; - AContacto.Post; - end; -end; - - function TContactosController.Duplicar(AContacto: IBizContacto): IBizContacto; begin Result := Self._Vacio; @@ -138,8 +86,9 @@ begin Result.Edit; with Result do begin - ID_EMPRESA := dmUsuarios.IDEmpresaActual; - USUARIO := dmUsuarios.LoginInfo.Usuario; + // OJO!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!111 + //ID_EMPRESA := dmUsuarios.IDEmpresaActual; + //USUARIO := dmUsuarios.LoginInfo.Usuario; end; Result.Post; @@ -233,28 +182,37 @@ var ASeleccionados : IBizContacto; begin ASeleccionados := Self.Buscar(ID_NULO); - CopyDataTable(AContactos.DataTable, ASeleccionados.DataTable, True); + CopyDataTable2(AContactos.DataTable, ASeleccionados.DataTable, True); Result := ASeleccionados; end; function TContactosController.Guardar(AContacto: IBizContacto): Boolean; var - NuevoID : Integer; + dtDetails : TList; + i : integer; begin Result := False; if ValidarContacto(AContacto) then begin ShowHourglassCursor; + + if AContacto.EsNuevo then + begin + AContacto.Edit; + AContacto.ID_EMPRESA := AppFactuGES.EmpresaActiva.ID; + AContacto.Post; + end; + + dtDetails := AContacto.DataTable.GetDetailDataTables; + for i := 0 to dtDetails.Count - 1 do + begin + if (TDADataTable(dtDetails.Items[i])).State in dsEditModes then + (TDADataTable(dtDetails.Items[i])).Post; + end; + try - if AContacto.EsNuevo then - NuevoID := FDataModule.GetNextID(AContacto.DataTable.LogicalName) - else - NuevoID := AContacto.ID; - - AsignarID(AContacto, NuevoID); AContacto.DataTable.ApplyUpdates; - Result := True; finally HideHourglassCursor; @@ -281,67 +239,6 @@ begin end; end; -procedure TContactosController.AsignarIDDetalles (AContacto: IBizContacto; const IDCabecera : Integer; ADataTable : TDADataTable); -var - AContador : Integer; -begin - if not ADataTable.Active then - ADataTable.Active := True; - - if AContacto.EsNuevo then - begin - { ¡¡¡¡ OJO !!!! - Para asignar el ID en los detalles hay - que tener en cuenta una cosa: - Si se cambia el ID, ese detalle ya no - pertenece a esa cabecera porque ya no se - cumple la condición de la relacion: - Master.ID = Detail.ID_CONTACTO. - - Por esa razón no sirve hacer un recorrido - desde el principio hasta el final porque - las detalles van desapareciendo según asignamos - el valor al campo ID y nos mueve aleatoriamente - la posición del registro actual. - - Es mejor hacer un bucle sencillo hasta que - "se gasten" todos los detalles. Cuando el - RecordCount llegue a 0 quiere decir que hemos - tratado todos los detalles. - } - while ADataTable.RecordCount > 0 do - begin - ADataTable.First; - ADataTable.Edit; - ADataTable.FieldByName('ID').AsInteger := FDataModule.GetNextID(ADataTable.LogicalName); -// ADataTable.FieldByName('ID_CONTACTO').AsInteger := IDCabecera; - //OJO SI UN DIA SON VARIOS LOS CAMPOS FORANEOS, SOLO FUNCIONA CUANDO ES UN ÚNICO CAMPO DE CLAVE FORANEA - ADataTable.FieldByName(ADataTable.DetailFields).AsInteger := IDCabecera; - ADataTable.Post; - end; - end - else begin - { En este caso es un recorrido normal y corriente. } - ADataTable.First; - AContador := ADataTable.RecordCount; - - while (AContador > 0) do - begin - // ¿Es nuevo? - if (ADataTable.FieldByName('ID').AsInteger < 0) then - begin - ADataTable.Edit; - ADataTable.FieldByName('ID').AsInteger := FDataModule.GetNextID(ADataTable.LogicalName); - ADataTable.Post; - end; - AContador := AContador - 1; - ADataTable.Next; - end; - ADataTable.First; - end; -end; - - function TContactosController.ValidarContacto(AContacto: IBizContacto): Boolean; begin Result := False; @@ -356,9 +253,10 @@ begin raise Exception.Create('Debe indicar al menos el nombre de este contacto.'); // Asegurarse de valores en campos "automáticos" - AContacto.Edit; + // OJOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO + {AContacto.Edit; AContacto.USUARIO := dmUsuarios.LoginInfo.Usuario; - AContacto.Post; + AContacto.Post;} Result := True; end; @@ -374,11 +272,12 @@ begin AContacto.DataTable.Active := False; // Filtrar los contactos actuales por empresa - with AContacto.DataTable.Where do + with AContacto.DataTable.DynamicWhere do begin - if NotEmpty then - AddOperator(opAND); - AddCondition(fld_ContactosID_EMPRESA, cEqual, dmUsuarios.IDEmpresaActual); + // (ID = :ID) + // OJOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO +{ Expression := NewBinaryExpression(NewField('', fld_ContactosID_EMPRESA), + NewConstant(dmUsuarios.IDEmpresaActual, datInteger), dboEqual);} end; end; diff --git a/Source/Modulos/Contactos/Controller/uDireccionesContactoController.pas b/Source/Modulos/Contactos/Controller/uDireccionesContactoController.pas index f022881b..4aebd33a 100644 --- a/Source/Modulos/Contactos/Controller/uDireccionesContactoController.pas +++ b/Source/Modulos/Contactos/Controller/uDireccionesContactoController.pas @@ -9,7 +9,6 @@ uses type IDireccionesContactoController = interface ['{9B6CB172-F32C-414F-A0E2-99920CAF88FB}'] - procedure AsignarID(ADetalles: IBizDireccionesContacto; IDCabecera: Integer; AEsNuevo:Boolean); procedure CopiarDireccionFiscal(AContacto: IBizContacto; ADireccion: IBizDireccionesContacto; AAnadir : Boolean = True); procedure Ver(ADireccion : IBizDireccionesContacto); function Localizar(ADirecciones: IBizDireccionesContacto; const ID : Integer): Boolean; @@ -21,7 +20,6 @@ type public procedure CopiarDireccionFiscal(AContacto: IBizContacto; ADireccion: IBizDireccionesContacto; AAnadir : Boolean = True); procedure Ver(ADireccion : IBizDireccionesContacto); - procedure AsignarID(ADetalles: IBizDireccionesContacto; IDCabecera: Integer; AEsNuevo:Boolean); function Localizar(ADirecciones: IBizDireccionesContacto; const ID : Integer): Boolean; constructor Create; virtual; destructor Destroy; override; @@ -35,74 +33,6 @@ uses uDataModuleContactos, schContactosClient_Intf, uIEditorDireccionContacto, uEditorRegistryUtils, cxControls; -procedure TDireccionesContactoController.AsignarID( - ADetalles: IBizDireccionesContacto; IDCabecera: Integer; - AEsNuevo: Boolean); -begin - with ADetalles do - begin - DataTable.DisableControls; - try - if not DataTable.Active then - DataTable.Active := True; - -// AuxPosicion := POSICION; - - { ¡¡¡¡ OJO !!!! - Para asignar el ID en los detalles hay - que tener en cuenta una cosa: - Si se cambia el ID, ese detalle ya no - pertenece a esa cabecera porque ya no se - cumple la condición de la relacion: - Master.ID = Detail.ID_PRESUPUESTO. - - Por esa razón no sirve hacer un recorrido - desde el principio hasta el final porque - las detalles van desapareciendo según asignamos - el valor al campo ID y nos mueve aleatoriamente - la posición del registro actual. - - Es mejor hacer un bucle sencillo hasta que - "se gasten" todos los detalles. Cuando el - RecordCount llegue a 0 quiere decir que hemos - tratado todos los detalles. - - El bucle cambia en el caso de ser llamada esta funcion desde modificar - un presupuesto ya que en ese caso si que hay que hacer un recorrido - total de las tuplas de detalle. - } - - if AEsNuevo then - begin - while RecordCount > 0 do - begin - DataTable.First; - Edit; - ID := FDataModule.GetNextID(DataTable.LogicalName); - ID_CONTACTO := IDCabecera; - Post - end - end - else - begin - DataTable.First; - while not DataTable.EOF do - begin - if AEsNuevo then - begin - Edit; - ID := FDataModule.GetNextID(DataTable.LogicalName); - ID_CONTACTO := IDCabecera; - Post - end; - DataTable.Next - end; - end; - finally - DataTable.EnableControls; - end; - end; -end; procedure TDireccionesContactoController.CopiarDireccionFiscal( AContacto: IBizContacto; ADireccion: IBizDireccionesContacto; diff --git a/Source/Modulos/Contactos/Controller/uEmpleadosController.pas b/Source/Modulos/Contactos/Controller/uEmpleadosController.pas index 2fdb23b8..426625fa 100644 --- a/Source/Modulos/Contactos/Controller/uEmpleadosController.pas +++ b/Source/Modulos/Contactos/Controller/uEmpleadosController.pas @@ -17,9 +17,6 @@ type end; TEmpleadosController = class(TContactosController, IEmpleadosController) - protected - procedure AsignarID(AContacto: IBizContacto; const IDNuevo: Integer); override; - public constructor Create; override; @@ -47,15 +44,6 @@ uses { TEmpleadoController } -procedure TEmpleadosController.AsignarID(AContacto: IBizContacto; - const IDNuevo: Integer); -begin - if not Assigned(AContacto) then - raise Exception.Create ('Contacto no asignado'); - - inherited; -end; - function TEmpleadosController.Buscar(const ID: Integer): IBizContacto; begin Result := (FDataModule as IDataModuleEmpleados).GetItem(ID); diff --git a/Source/Modulos/Contactos/Data/Contactos_data.dpk b/Source/Modulos/Contactos/Data/Contactos_data.dpk index 36692c4d..830f6a07 100644 --- a/Source/Modulos/Contactos/Data/Contactos_data.dpk +++ b/Source/Modulos/Contactos/Data/Contactos_data.dpk @@ -22,27 +22,14 @@ package Contactos_data; {$WRITEABLECONST OFF} {$MINENUMSIZE 1} {$IMAGEBASE $400000} -{$IMPLICITBUILD OFF} -{%TogetherDiagram 'ModelSupport_Contactos_data\default.txaPackage'} +{$IMPLICITBUILD ON} requires rtl, vcl, - dbrtl, - dsnap, - vcldb, - DataAbstract_D10, - adortl, - vcljpg, - cxLibraryD10, - dxThemeD10, - cxEditorsD10, - cxDataD10, - cxExtEditorsD10, - cxGridD10, - cxPageControlD10, Base, - Usuarios, + GUIBase, + ApplicationBase, Contactos_model; contains diff --git a/Source/Modulos/Contactos/Data/Contactos_data.dpk.bak b/Source/Modulos/Contactos/Data/Contactos_data.dpk.bak new file mode 100644 index 00000000..a8cde674 --- /dev/null +++ b/Source/Modulos/Contactos/Data/Contactos_data.dpk.bak @@ -0,0 +1,41 @@ +package Contactos_data; + +{$R *.res} +{$ALIGN 8} +{$ASSERTIONS ON} +{$BOOLEVAL OFF} +{$DEBUGINFO ON} +{$EXTENDEDSYNTAX ON} +{$IMPORTEDDATA ON} +{$IOCHECKS ON} +{$LOCALSYMBOLS ON} +{$LONGSTRINGS ON} +{$OPENSTRINGS ON} +{$OPTIMIZATION ON} +{$OVERFLOWCHECKS OFF} +{$RANGECHECKS OFF} +{$REFERENCEINFO ON} +{$SAFEDIVIDE OFF} +{$STACKFRAMES OFF} +{$TYPEDADDRESS OFF} +{$VARSTRINGCHECKS ON} +{$WRITEABLECONST OFF} +{$MINENUMSIZE 1} +{$IMAGEBASE $400000} +{$IMPLICITBUILD OFF} +{%TogetherDiagram 'ModelSupport_Contactos_data\default.txaPackage'} + +requires + rtl, + vcl, + Base, + Usuarios, + Contactos_model; + +contains + uDataModuleContactos in 'uDataModuleContactos.pas' {DataModuleContactos: TDAClientDataModule}, + uDataModuleClientes in 'uDataModuleClientes.pas' {DataModuleClientes : TDAClientDataModule}, + uDataModuleProveedores in 'uDataModuleProveedores.pas' {DataModuleProveedores: TDAClientDataModule}, + uDataModuleEmpleados in 'uDataModuleEmpleados.pas' {DataModuleEmpleados: TDAClientDataModule}; + +end. diff --git a/Source/Modulos/Contactos/Data/Contactos_data.dproj b/Source/Modulos/Contactos/Data/Contactos_data.dproj new file mode 100644 index 00000000..7f361b12 --- /dev/null +++ b/Source/Modulos/Contactos/Data/Contactos_data.dproj @@ -0,0 +1,555 @@ + + + + {13ceca01-95fe-4f1e-80ed-6dcc5ef31c88} + Contactos_data.dpk + Debug + AnyCPU + DCC32 + ..\..\..\..\Output\Debug\Cliente\Contactos_data.bpl + + + 7.0 + False + False + 0 + 3 + .\ + .\ + .\ + ..\..\..\..\Output\Debug\Cliente + ..\..\Lib + ..\..\..\Lib;..\..\Lib + ..\..\..\Lib;..\..\Lib + ..\..\..\Lib;..\..\Lib + ..\..\..\Lib;..\..\Lib + RELEASE + + + 7.0 + 3 + .\ + .\ + .\ + ..\..\..\..\Output\Debug\Cliente + ..\..\Lib + ..\..\..\Lib;..\..\Lib + ..\..\..\Lib;..\..\Lib + ..\..\..\Lib;..\..\Lib + ..\..\..\Lib;..\..\Lib + + + Delphi.Personality + Package + +FalseTrueFalseTrueFalseFalseTrueFalse1000FalseFalseFalseFalseFalse308212521.0.0.01.0.0.0Contactos_data.dpk + + + + + MainSource + + + + + + + + +
DataModuleClientes
+
+ +
DataModuleContactos
+
+ +
DataModuleEmpleados
+
+ +
DataModuleProveedores
+
+ +
+
+ diff --git a/Source/Modulos/Contactos/Data/Contactos_data.drc b/Source/Modulos/Contactos/Data/Contactos_data.drc index 7642ac97..6e1f8f4e 100644 --- a/Source/Modulos/Contactos/Data/Contactos_data.drc +++ b/Source/Modulos/Contactos/Data/Contactos_data.drc @@ -1,5 +1,5 @@ -/* VER180 - Generated by the Borland Delphi Pascal Compiler +/* VER185 + Generated by the CodeGear Delphi Pascal Compiler because -GD or --drc was supplied to the compiler. This file contains compiler-generated resources that @@ -12,3 +12,9 @@ STRINGTABLE BEGIN END +/* C:\Codigo Tecsitel\Source\Modulos\Contactos\Data\uDataModuleContactos.DFM */ +/* C:\Codigo Tecsitel\Source\Modulos\Contactos\Data\uDataModuleClientes.dfm */ +/* C:\Codigo Tecsitel\Source\Modulos\Contactos\Data\uDataModuleProveedores.dfm */ +/* C:\Codigo Tecsitel\Source\Modulos\Contactos\Data\uDataModuleEmpleados.dfm */ +/* C:\Codigo Tecsitel\Source\Modulos\Contactos\Data\Contactos_data.res */ +/* C:\Codigo Tecsitel\Source\Modulos\Contactos\Data\Contactos_data.drf */ diff --git a/Source/Modulos/Contactos/Data/Contactos_data.identcache b/Source/Modulos/Contactos/Data/Contactos_data.identcache new file mode 100644 index 00000000..a4ecf999 Binary files /dev/null and b/Source/Modulos/Contactos/Data/Contactos_data.identcache differ diff --git a/Source/Modulos/Contactos/Data/Contactos_data.rc b/Source/Modulos/Contactos/Data/Contactos_data.rc index e69de29b..153736af 100644 --- a/Source/Modulos/Contactos/Data/Contactos_data.rc +++ b/Source/Modulos/Contactos/Data/Contactos_data.rc @@ -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 diff --git a/Source/Modulos/Contactos/Data/Contactos_data.res b/Source/Modulos/Contactos/Data/Contactos_data.res index 36f26e23..8b251f31 100644 Binary files a/Source/Modulos/Contactos/Data/Contactos_data.res and b/Source/Modulos/Contactos/Data/Contactos_data.res differ diff --git a/Source/Modulos/Contactos/Data/uDataModuleClientes.dfm b/Source/Modulos/Contactos/Data/uDataModuleClientes.dfm index fee555c6..044cb3d7 100644 --- a/Source/Modulos/Contactos/Data/uDataModuleClientes.dfm +++ b/Source/Modulos/Contactos/Data/uDataModuleClientes.dfm @@ -1,799 +1,331 @@ inherited DataModuleClientes: TDataModuleClientes - object tbl_Clientes: TDACDSDataTable + Height = 325 + Width = 636 + inherited rda_Contactos: TDARemoteDataAdapter + Top = 79 + end + inherited Bin2DataStreamer: TDABin2DataStreamer + Top = 136 + end + inherited ds_Contactos: TDADataSource + DataSet = tbl_Contactos.Dataset + end + inherited ds_DireccionesContacto: TDADataSource + DataSet = tbl_DireccionesContacto.Dataset + end + inherited ds_DatosBancarios: TDADataSource + DataSet = tbl_DatosBancarios.Dataset + end + object tbl_Clientes: TDAMemDataTable RemoteUpdatesOptions = [] Fields = < item Name = 'ID' DataType = datAutoInc - BlobType = dabtUnknown - DisplayWidth = 0 - Alignment = taLeftJustify + GeneratorName = 'GEN_CONTACTOS_ID' DictionaryEntry = 'Contactos_ID' InPrimaryKey = True - Calculated = False - Lookup = False - LookupCache = False end item Name = 'ID_CATEGORIA' DataType = datInteger - BlobType = dabtUnknown - DisplayWidth = 0 DisplayLabel = 'Contactos_ID_CATEGORIA' - Alignment = taLeftJustify DictionaryEntry = 'Contactos_ID_CATEGORIA' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False end item Name = 'NIF_CIF' DataType = datString Size = 15 - BlobType = dabtUnknown - DisplayWidth = 0 DisplayLabel = 'NIF/CIF' - Alignment = taLeftJustify DictionaryEntry = 'Contactos_NIF_CIF' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False end item Name = 'NOMBRE' DataType = datString Size = 255 - BlobType = dabtUnknown - DisplayWidth = 0 + Required = True DisplayLabel = 'Nombre' - Alignment = taLeftJustify DictionaryEntry = 'Contactos_NOMBRE' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False - end - item - Name = 'CALLE' - DataType = datString - Size = 255 - BlobType = dabtUnknown - DisplayWidth = 0 - DisplayLabel = 'Direcci'#243'n' - Alignment = taLeftJustify - DictionaryEntry = 'Contactos_CALLE' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False end item Name = 'PERSONA_CONTACTO' DataType = datString Size = 255 - BlobType = dabtUnknown - DisplayWidth = 0 DisplayLabel = 'Persona de contacto' - Alignment = taLeftJustify DictionaryEntry = 'Contactos_PERSONA_CONTACTO' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False + end + item + Name = 'CALLE' + DataType = datString + Size = 255 + DisplayLabel = 'Direcci'#195#179'n' + DictionaryEntry = 'Contactos_CALLE' end item Name = 'POBLACION' DataType = datString Size = 255 - BlobType = dabtUnknown - DisplayWidth = 0 - DisplayLabel = 'Poblaci'#243'n' - Alignment = taLeftJustify + DisplayLabel = 'Poblaci'#195#179'n' DictionaryEntry = 'Contactos_POBLACION' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False end item Name = 'PROVINCIA' DataType = datString Size = 255 - BlobType = dabtUnknown - DisplayWidth = 0 DisplayLabel = 'Provincia' - Alignment = taLeftJustify DictionaryEntry = 'Contactos_PROVINCIA' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False end item Name = 'CODIGO_POSTAL' DataType = datString Size = 10 - BlobType = dabtUnknown - DisplayWidth = 0 - DisplayLabel = 'C'#243'digo postal' - Alignment = taLeftJustify + DisplayLabel = 'C'#195#179'digo postal' DictionaryEntry = 'Contactos_CODIGO_POSTAL' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False end item Name = 'TELEFONO_1' DataType = datString Size = 25 - BlobType = dabtUnknown - DisplayWidth = 0 DisplayLabel = 'Tlf. trabajo' - Alignment = taLeftJustify DictionaryEntry = 'Contactos_TELEFONO_1' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False end item Name = 'TELEFONO_2' DataType = datString Size = 25 - BlobType = dabtUnknown - DisplayWidth = 0 DisplayLabel = 'Tlf. particular' - Alignment = taLeftJustify DictionaryEntry = 'Contactos_TELEFONO_2' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False end item Name = 'MOVIL_1' DataType = datString Size = 25 - BlobType = dabtUnknown - DisplayWidth = 0 - DisplayLabel = 'M'#243'vil' - Alignment = taLeftJustify + DisplayLabel = 'M'#195#179'vil' DictionaryEntry = 'Contactos_MOVIL_1' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False end item Name = 'MOVIL_2' DataType = datString Size = 25 - BlobType = dabtUnknown - DisplayWidth = 0 - Alignment = taLeftJustify DictionaryEntry = 'Contactos_MOVIL_2' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False end item Name = 'FAX' DataType = datString Size = 25 - BlobType = dabtUnknown - DisplayWidth = 0 DisplayLabel = 'Fax' - Alignment = taLeftJustify DictionaryEntry = 'Contactos_FAX' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False end item Name = 'EMAIL_1' DataType = datString Size = 255 - BlobType = dabtUnknown - DisplayWidth = 0 DisplayLabel = 'E-mail trabajo' - Alignment = taLeftJustify DictionaryEntry = 'Contactos_EMAIL_1' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False end item Name = 'EMAIL_2' DataType = datString Size = 255 - BlobType = dabtUnknown - DisplayWidth = 0 DisplayLabel = 'E-mail particular' - Alignment = taLeftJustify DictionaryEntry = 'Contactos_EMAIL_2' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False end item Name = 'PAGINA_WEB' DataType = datString Size = 255 - BlobType = dabtUnknown - DisplayWidth = 0 DisplayLabel = 'Web' - Alignment = taLeftJustify DictionaryEntry = 'Contactos_PAGINA_WEB' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False end item Name = 'NOTAS' DataType = datMemo BlobType = dabtMemo - DisplayWidth = 0 DisplayLabel = 'Observaciones' - Alignment = taLeftJustify DictionaryEntry = 'Contactos_NOTAS' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False + end + item + Name = 'FECHA_ALTA' + DataType = datDateTime + end + item + Name = 'FECHA_MODIFICACION' + DataType = datDateTime end item Name = 'USUARIO' DataType = datString Size = 20 - BlobType = dabtUnknown - DisplayWidth = 0 DisplayLabel = 'Usuario' - Alignment = taLeftJustify DictionaryEntry = 'Contactos_USUARIO' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False end item Name = 'ID_EMPRESA' DataType = datInteger - BlobType = dabtUnknown - DisplayWidth = 0 - Alignment = taLeftJustify DictionaryEntry = 'Contactos_ID_EMPRESA' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False end item Name = 'REFERENCIA' DataType = datString Size = 255 - BlobType = dabtUnknown - DisplayWidth = 0 - Alignment = taLeftJustify DictionaryEntry = 'Clientes_REFERENCIA' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False - end - item - Name = 'ID_TIPO_IVA' - DataType = datInteger - BlobType = dabtUnknown - DisplayWidth = 0 - Alignment = taLeftJustify - DictionaryEntry = 'Clientes_ID_TIPO_IVA' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False - end - item - Name = 'REGIMEN_IVA' - DataType = datString - Size = 255 - BlobType = dabtUnknown - DisplayWidth = 0 - DisplayLabel = 'R'#233'gimen de IVA' - Alignment = taLeftJustify - DictionaryEntry = 'Clientes_REGIMEN_IVA' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False - end - item - Name = 'ID_FORMA_PAGO' - DataType = datInteger - BlobType = dabtUnknown - DisplayWidth = 0 - Alignment = taLeftJustify - DictionaryEntry = 'Clientes_ID_FORMA_PAGO' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False - end - item - Name = 'TIENDA_WEB' - DataType = datInteger - BlobType = dabtUnknown - DisplayWidth = 0 - Alignment = taLeftJustify - DictionaryEntry = 'Clientes_TIENDA_WEB' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False - end - item - Name = 'RECARGO_EQUIVALENCIA' - DataType = datInteger - BlobType = dabtUnknown - DisplayWidth = 0 - DisplayLabel = 'Rec. equiv.' - Alignment = taLeftJustify - DictionaryEntry = 'Clientes_RECARGO_EQUIVALENCIA' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False end item Name = 'GRUPO_CLIENTE' DataType = datString Size = 255 - BlobType = dabtUnknown - DisplayWidth = 0 DisplayLabel = 'Grupo de cliente' - Alignment = taLeftJustify DictionaryEntry = 'Clientes_GRUPO_CLIENTE' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False end item Name = 'NOMBRE_COMERCIAL' DataType = datString Size = 255 - BlobType = dabtUnknown - DisplayWidth = 0 DisplayLabel = 'Nombre comercial' - Alignment = taLeftJustify DictionaryEntry = 'Clientes_NOMBRE_COMERCIAL' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False end item Name = 'VENCIMIENTO_FACTURAS' DataType = datInteger - BlobType = dabtUnknown - DisplayWidth = 0 DisplayLabel = 'Vencimiento' - Alignment = taLeftJustify DictionaryEntry = 'Clientes_VENCIMIENTO_FACTURAS' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False end item Name = 'BLOQUEADO' - DataType = datInteger - BlobType = dabtUnknown - DisplayWidth = 0 - DisplayLabel = #191'Bloqueado?' - Alignment = taLeftJustify + DataType = datSmallInt + DisplayLabel = #194#191'Bloqueado?' DictionaryEntry = 'Clientes_BLOQUEADO' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False + end + item + Name = 'REGIMEN_IVA' + DataType = datString + Size = 255 + DisplayLabel = 'R'#195#169'gimen de IVA' + DictionaryEntry = 'Clientes_REGIMEN_IVA' end item Name = 'MOTIVO_BLOQUEO' DataType = datString Size = 255 - BlobType = dabtUnknown - DisplayWidth = 0 DisplayLabel = 'Motivo del bloqueo' - Alignment = taLeftJustify DictionaryEntry = 'Clientes_MOTIVO_BLOQUEO' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False + end + item + Name = 'RECARGO_EQUIVALENCIA' + DataType = datInteger + DisplayLabel = 'Rec. equiv.' + DictionaryEntry = 'Clientes_RECARGO_EQUIVALENCIA' + end + item + Name = 'ID_TIPO_IVA' + DataType = datInteger + DictionaryEntry = 'Clientes_ID_TIPO_IVA' + end + item + Name = 'ID_FORMA_PAGO' + DataType = datInteger + DictionaryEntry = 'Clientes_ID_FORMA_PAGO' + end + item + Name = 'TIENDA_WEB' + DataType = datSmallInt + DictionaryEntry = 'Clientes_TIENDA_WEB' end> Params = <> - MasterMappingMode = mmDataRequest StreamingOptions = [soDisableEventsWhileStreaming] - SchemaCall.MethodName = 'GetDatasetSchema' - SchemaCall.Params = < - item - Name = 'Result' - ParamType = fResult - DataType = rtBinary - end - item - Name = 'aDatasetName' - ParamType = fIn - DataType = rtString - Value = 'Clientes' - end> - DataRequestCall.MethodName = 'GetDatasetDataEx' - DataRequestCall.Params = < - item - Name = 'Result' - ParamType = fResult - DataType = rtBinary - end - item - Name = 'DatasetName' - ParamType = fIn - DataType = rtString - Value = 'Clientes' - end - item - Name = 'Params' - ParamType = fIn - DataType = rtUserDefined - UserClassName = 'TDADatasetParamArray' - end - item - Name = 'UserFilter' - ParamType = fIn - DataType = rtString - Value = '' - end - item - Name = 'IncludeSchema' - ParamType = fIn - DataType = rtBoolean - Value = False - end - item - Name = 'MaxRecords' - ParamType = fIn - DataType = rtInteger - Value = -1 - end> - DataUpdateCall.MethodName = 'UpdateData' - DataUpdateCall.Params = < - item - Name = 'Result' - ParamType = fResult - DataType = rtBinary - end - item - Name = 'Delta' - ParamType = fIn - DataType = rtBinary - end> - ScriptCall.MethodName = 'GetDatasetScripts' - ScriptCall.Params = < - item - Name = 'Result' - ParamType = fResult - DataType = rtString - Value = '' - end - item - Name = 'DatasetNames' - ParamType = fIn - DataType = rtString - Value = 'Clientes' - end> - ReadOnly = False - RemoteService = RORemoteService - Adapter = DABinAdapter + RemoteDataAdapter = rda_Contactos + LocalDataStreamer = Bin2DataStreamer DetailOptions = [dtCascadeOpenClose, dtCascadeApplyUpdates, dtAutoFetch, dtCascadeDelete, dtCascadeUpdate, dtDisableLogOfCascadeDeletes, dtDisableLogOfCascadeUpdates, dtIncludeInAllInOneFetch] MasterOptions = [moCascadeOpenClose, moCascadeApplyUpdates, moCascadeDelete, moCascadeUpdate, moDisableLogOfCascadeDeletes, moDisableLogOfCascadeUpdates] LogicalName = 'Clientes' - IndexDefs = <> - Left = 288 - Top = 184 + Left = 296 + Top = 168 end object ds_Clientes: TDADataSource + DataSet = tbl_Clientes.Dataset DataTable = tbl_Clientes - Left = 288 - Top = 256 + Left = 296 + Top = 232 end - object tbl_ClientesDescuentos: TDACDSDataTable + object tbl_ClientesDescuentos: TDAMemDataTable RemoteUpdatesOptions = [] Fields = < item Name = 'ID' - DataType = datInteger - BlobType = dabtUnknown - DisplayWidth = 0 - Alignment = taLeftJustify + DataType = datAutoInc + GeneratorName = 'GEN_CLIENTES_DTOS_PROV_ID' DictionaryEntry = 'ClientesDescuentos_ID' InPrimaryKey = True - Calculated = False - Lookup = False - LookupCache = False end item Name = 'ID_CLIENTE' DataType = datInteger - BlobType = dabtUnknown - DisplayWidth = 0 DisplayLabel = 'ClientesDescuentos_ID_CLIENTE' - Alignment = taLeftJustify DictionaryEntry = 'ClientesDescuentos_ID_CLIENTE' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False end item Name = 'ID_PROVEEDOR' DataType = datInteger - BlobType = dabtUnknown - DisplayWidth = 0 DisplayLabel = 'ClientesDescuentos_ID_PROVEEDOR' - Alignment = taLeftJustify DictionaryEntry = 'ClientesDescuentos_ID_PROVEEDOR' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False end item Name = 'NOMBRE' DataType = datString Size = 255 - BlobType = dabtUnknown - DisplayWidth = 0 DisplayLabel = 'ClientesDescuentos_NOMBRE' - Alignment = taLeftJustify ServerAutoRefresh = True - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False end item Name = 'DESCUENTO' DataType = datFloat - BlobType = dabtUnknown - DisplayWidth = 0 DisplayLabel = 'Descuento (%)' Alignment = taRightJustify DictionaryEntry = 'ClientesDescuentos_DESCUENTO' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False end> - Params = < - item - Name = 'ID_CLIENTE' - DataType = datInteger - BlobType = dabtUnknown - Value = 318 - ParamType = daptInput - end> - MasterMappingMode = mmParams - MasterParamsMappings.Strings = ( - 'ID_CLIENTE=ID') + Params = <> + MasterMappingMode = mmWhere StreamingOptions = [soDisableEventsWhileStreaming] - SchemaCall.MethodName = 'GetDatasetSchema' - SchemaCall.Params = < - item - Name = 'Result' - ParamType = fResult - DataType = rtBinary - end - item - Name = 'aDatasetName' - ParamType = fIn - DataType = rtString - Value = 'ClientesDescuentos' - end> - DataRequestCall.MethodName = 'GetDatasetDataEx' - DataRequestCall.Params = < - item - Name = 'Result' - ParamType = fResult - DataType = rtBinary - end - item - Name = 'DatasetName' - ParamType = fIn - DataType = rtString - Value = 'ClientesDescuentos' - end - item - Name = 'Params' - ParamType = fIn - DataType = rtUserDefined - UserClassName = 'TDADatasetParamArray' - end - item - Name = 'UserFilter' - ParamType = fIn - DataType = rtString - Value = '' - end - item - Name = 'IncludeSchema' - ParamType = fIn - DataType = rtBoolean - Value = False - end - item - Name = 'MaxRecords' - ParamType = fIn - DataType = rtInteger - Value = -1 - end> - DataUpdateCall.MethodName = 'UpdateData' - DataUpdateCall.Params = < - item - Name = 'Result' - ParamType = fResult - DataType = rtBinary - end - item - Name = 'Delta' - ParamType = fIn - DataType = rtBinary - end> - ScriptCall.MethodName = 'GetDatasetScripts' - ScriptCall.Params = < - item - Name = 'Result' - ParamType = fResult - DataType = rtString - Value = '' - end - item - Name = 'DatasetNames' - ParamType = fIn - DataType = rtString - Value = 'ClientesDescuentos' - end> - ReadOnly = False - RemoteService = RORemoteService - Adapter = DABinAdapter + RemoteDataAdapter = rda_Contactos + LocalDataStreamer = Bin2DataStreamer MasterSource = ds_Clientes MasterFields = 'ID' DetailFields = 'ID_CLIENTE' DetailOptions = [dtCascadeOpenClose, dtCascadeApplyUpdates, dtAutoFetch, dtCascadeDelete, dtCascadeUpdate, dtDisableLogOfCascadeDeletes, dtDisableLogOfCascadeUpdates, dtIncludeInAllInOneFetch] MasterOptions = [moCascadeOpenClose, moCascadeApplyUpdates, moCascadeDelete, moCascadeUpdate, moDisableLogOfCascadeDeletes, moDisableLogOfCascadeUpdates] LogicalName = 'ClientesDescuentos' - IndexDefs = <> - Left = 392 - Top = 184 + Left = 448 + Top = 168 end object ds_ClientesDescuentos: TDADataSource + DataSet = tbl_ClientesDescuentos.Dataset DataTable = tbl_ClientesDescuentos - Left = 392 - Top = 256 + Left = 448 + Top = 224 end - object tbl_GruposCliente: TDACDSDataTable + object tbl_GruposCliente: TDAMemDataTable RemoteUpdatesOptions = [] Fields = < item Name = 'DESCRIPCION' DataType = datString Size = 255 - BlobType = dabtUnknown - DisplayWidth = 0 - Alignment = taLeftJustify - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False + DisplayLabel = 'Descripci'#195#179'n' end> Params = <> - MasterMappingMode = mmDataRequest StreamingOptions = [soDisableEventsWhileStreaming] - SchemaCall.MethodName = 'GetDatasetSchema' - SchemaCall.Params = < - item - Name = 'Result' - ParamType = fResult - DataType = rtBinary - end - item - Name = 'aDatasetName' - ParamType = fIn - DataType = rtString - Value = 'GruposCliente' - end> - DataRequestCall.MethodName = 'GetDatasetDataEx' - DataRequestCall.Params = < - item - Name = 'Result' - ParamType = fResult - DataType = rtBinary - end - item - Name = 'DatasetName' - ParamType = fIn - DataType = rtString - Value = 'GruposCliente' - end - item - Name = 'Params' - ParamType = fIn - DataType = rtUserDefined - UserClassName = 'TDADatasetParamArray' - end - item - Name = 'UserFilter' - ParamType = fIn - DataType = rtString - Value = '' - end - item - Name = 'IncludeSchema' - ParamType = fIn - DataType = rtBoolean - Value = False - end - item - Name = 'MaxRecords' - ParamType = fIn - DataType = rtInteger - Value = -1 - end> - DataUpdateCall.MethodName = 'UpdateData' - DataUpdateCall.Params = < - item - Name = 'Result' - ParamType = fResult - DataType = rtBinary - end - item - Name = 'Delta' - ParamType = fIn - DataType = rtBinary - end> - ScriptCall.MethodName = 'GetDatasetScripts' - ScriptCall.Params = < - item - Name = 'Result' - ParamType = fResult - DataType = rtString - Value = '' - end - item - Name = 'DatasetNames' - ParamType = fIn - DataType = rtString - Value = 'GruposCliente' - end> - ReadOnly = False - RemoteService = RORemoteService - Adapter = DABinAdapter + RemoteDataAdapter = rda_Contactos + LocalDataStreamer = Bin2DataStreamer DetailOptions = [dtCascadeOpenClose, dtCascadeApplyUpdates, dtAutoFetch, dtCascadeDelete, dtCascadeUpdate, dtDisableLogOfCascadeDeletes, dtDisableLogOfCascadeUpdates, dtIncludeInAllInOneFetch] MasterOptions = [moCascadeOpenClose, moCascadeApplyUpdates, moCascadeDelete, moCascadeUpdate, moDisableLogOfCascadeDeletes, moDisableLogOfCascadeUpdates] LogicalName = 'GruposCliente' - IndexDefs = <> - Left = 168 - Top = 288 + Left = 552 + Top = 168 end object ds_GruposCliente: TDADataSource + DataSet = tbl_GruposCliente.Dataset DataTable = tbl_GruposCliente - Left = 168 - Top = 352 + Left = 552 + Top = 224 end end diff --git a/Source/Modulos/Contactos/Data/uDataModuleClientes.pas b/Source/Modulos/Contactos/Data/uDataModuleClientes.pas index 8452f9cd..34ad735d 100644 --- a/Source/Modulos/Contactos/Data/uDataModuleClientes.pas +++ b/Source/Modulos/Contactos/Data/uDataModuleClientes.pas @@ -8,15 +8,17 @@ uses uDACDSDataTable, uDABINAdapter, uROServiceComponent, uRORemoteService, uROClient, uROBinMessage, uROWinInetHttpChannel, uBizClientesDescuentos, uBizGruposCliente, uBizContactos, uDataModuleContactos, - uIDataModuleClientes, uDADesigntimeCall; + uIDataModuleClientes, uDADesigntimeCall, uDARemoteDataAdapter, + uDADataStreamer, uRODynamicRequest, uDAInterfaces, uDAMemDataTable, + uDABin2DataStreamer; type TDataModuleClientes = class(TDataModuleContactos, IDataModuleClientes) - tbl_Clientes: TDACDSDataTable; + tbl_Clientes: TDAMemDataTable; ds_Clientes: TDADataSource; - tbl_ClientesDescuentos: TDACDSDataTable; + tbl_ClientesDescuentos: TDAMemDataTable; ds_ClientesDescuentos: TDADataSource; - tbl_GruposCliente: TDACDSDataTable; + tbl_GruposCliente: TDAMemDataTable; ds_GruposCliente: TDADataSource; protected function _GetDescuentos: IBizClienteDescuentos; @@ -25,7 +27,6 @@ type function NewItem : IBizCliente; function GetItems : IBizCliente; function GetItemsTiendaWeb : IBizCliente; - function GetNextID(const DataSetName : String) : Integer; override; function GetGruposCliente : IBizGrupoCliente; end; @@ -34,18 +35,18 @@ implementation {$R *.dfm} uses - FactuGES_Intf, uBizContactosDatosBancarios, cxControls, uDAInterfaces, schContactosClient_Intf, - uDataTableUtils, Dialogs; + FactuGES_Intf, uBizContactosDatosBancarios, cxControls, schContactosClient_Intf, + uDataTableUtils, Dialogs, DataAbstract4_Intf; { TdmClientes } function TDataModuleClientes.GetGruposCliente: IBizGrupoCliente; var - AGrupoCliente : TDACDSDataTable; + AGrupoCliente : TDAMemDataTable; begin ShowHourglassCursor; try - AGrupoCliente := _CloneDataTable(tbl_GruposCliente); + AGrupoCliente := CloneDataTable(tbl_GruposCliente); AGrupoCliente.BusinessRulesID := BIZ_CLIENT_GRUPOSCLIENTE; Result := (AGrupoCliente as IBizGrupoCliente); finally @@ -58,13 +59,11 @@ begin ShowHourglassCursor; try Result := Self.GetItems; - with Result.DataTable.Where do + with Result.DataTable.DynamicWhere do begin - if NotEmpty then - AddOperator(opAND); - OpenBraket; - AddText(fld_ContactosID + ' = ' + IntToStr(ID)); - CloseBraket; + // (ID = :ID) + Expression := NewBinaryExpression(NewField('', fld_ContactosID), + NewConstant(ID, datInteger), dboEqual); end; finally HideHourglassCursor; @@ -73,11 +72,11 @@ end; function TDataModuleClientes.GetItems: IBizCliente; var - AContacto : TDACDSDataTable; + AContacto : TDAMemDataTable; begin ShowHourglassCursor; try - AContacto := _CloneDataTable(tbl_Clientes); + AContacto := CloneDataTable(tbl_Clientes); AContacto.BusinessRulesID := BIZ_CLIENT_CLIENTE; with TBizCliente(AContacto.BusinessEventsObj) do @@ -85,7 +84,6 @@ begin DatosBancarios := _GetDatosBancarios; Direcciones := _GetDirecciones; Descuentos := _GetDescuentos; - _Categorias := _GetCategorias; end; Result := (AContacto as IBizCliente); @@ -99,39 +97,18 @@ begin ShowHourglassCursor; try Result := Self.GetItems; - with Result.DataTable.Where do + with Result.DataTable.DynamicWhere do begin - if NotEmpty then - AddOperator(opAND); - OpenBraket; - AddText(fld_ClientesTIENDA_WEB + ' = 1'); - CloseBraket; + Clear; + // (TIENDA_WEB = 1) + Expression := NewBinaryExpression(NewField('', fld_ClientesTIENDA_WEB), + NewConstant(1, datInteger), dboEqual); end; finally HideHourglassCursor; end; end; -function TDataModuleClientes.GetNextID(const DataSetName: String): Integer; -var - aDataSet : String; - aGeneratorName : String; -begin - aDataSet := DataSetName; - - if aDataSet = nme_ClientesDescuentos then - begin - aGeneratorName := 'GEN_CLIENTES_DTOS_PROV_ID'; - Result := _InternalGetNextID(aGeneratorName); - Exit; - end; - - if aDataSet = nme_Clientes then - aDataSet := nme_Contactos; - - Result := inherited GetNextID(aDataSet); -end; - function TDataModuleClientes.NewItem: IBizCliente; begin Result := GetItem(ID_NULO) @@ -139,11 +116,11 @@ end; function TDataModuleClientes._GetDescuentos: IBizClienteDescuentos; var - ADescuentos : TDACDSDataTable; + ADescuentos : TDAMemDataTable; begin ShowHourglassCursor; try - ADescuentos := _CloneDataTable(tbl_ClientesDescuentos); + ADescuentos := CloneDataTable(tbl_ClientesDescuentos); with ADescuentos do begin BusinessRulesID := BIZ_CLIENT_CLIENTE_DESCUENTOS; diff --git a/Source/Modulos/Contactos/Data/uDataModuleContactos.dfm b/Source/Modulos/Contactos/Data/uDataModuleContactos.dfm index aaa13a8f..adf3a11a 100644 --- a/Source/Modulos/Contactos/Data/uDataModuleContactos.dfm +++ b/Source/Modulos/Contactos/Data/uDataModuleContactos.dfm @@ -1,1101 +1,404 @@ object DataModuleContactos: TDataModuleContactos OldCreateOrder = True OnCreate = DAClientDataModuleCreate - RemoteService = RORemoteService - Adapter = DABinAdapter - SchemaCall.MethodName = 'GetSchemaAsXML' - SchemaCall.Params = < - item - Name = 'Result' - ParamType = fResult - DataType = rtString - end> - Height = 420 - Width = 527 + Height = 309 + Width = 570 object RORemoteService: TRORemoteService + Message = dmConexion.ROMessage + Channel = dmConexion.ROChannel ServiceName = 'srvContactos' - Message = ROBinMessage1 - Channel = ROWinInetHTTPChannel1 Left = 40 Top = 16 end - object DABinAdapter: TDABINAdapter - Left = 40 - Top = 88 + object rda_Contactos: TDARemoteDataAdapter + GetSchemaCall.RemoteService = RORemoteService + GetDataCall.RemoteService = RORemoteService + UpdateDataCall.RemoteService = RORemoteService + GetScriptsCall.RemoteService = RORemoteService + RemoteService = RORemoteService + DataStreamer = Bin2DataStreamer + Left = 43 + Top = 143 end - object tbl_Contactos: TDACDSDataTable + object Bin2DataStreamer: TDABin2DataStreamer + Left = 40 + Top = 72 + end + object tbl_Contactos: TDAMemDataTable RemoteUpdatesOptions = [] Fields = < item Name = 'ID' DataType = datAutoInc - BlobType = dabtUnknown - DisplayWidth = 0 - Alignment = taLeftJustify + GeneratorName = 'GEN_CONTACTOS_ID' + ServerAutoRefresh = True DictionaryEntry = 'Contactos_ID' InPrimaryKey = True - Calculated = False - Lookup = False - LookupCache = False end item Name = 'ID_CATEGORIA' DataType = datInteger - BlobType = dabtUnknown - DisplayWidth = 0 - DisplayLabel = 'Contactos_ID_CATEGORIA' - Alignment = taLeftJustify - DictionaryEntry = 'Contactos_ID_CATEGORIA' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False end item Name = 'NIF_CIF' DataType = datString Size = 15 - BlobType = dabtUnknown - DisplayWidth = 0 DisplayLabel = 'NIF/CIF' - Alignment = taLeftJustify DictionaryEntry = 'Contactos_NIF_CIF' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False end item Name = 'NOMBRE' DataType = datString Size = 255 - BlobType = dabtUnknown - DisplayWidth = 0 + Required = True DisplayLabel = 'Nombre' - Alignment = taLeftJustify DictionaryEntry = 'Contactos_NOMBRE' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False end item Name = 'PERSONA_CONTACTO' DataType = datString Size = 255 - BlobType = dabtUnknown - DisplayWidth = 0 DisplayLabel = 'Persona de contacto' - Alignment = taLeftJustify DictionaryEntry = 'Contactos_PERSONA_CONTACTO' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False end item Name = 'CALLE' DataType = datString Size = 255 - BlobType = dabtUnknown - DisplayWidth = 0 DisplayLabel = 'Direcci'#243'n' - Alignment = taLeftJustify DictionaryEntry = 'Contactos_CALLE' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False end item Name = 'POBLACION' DataType = datString Size = 255 - BlobType = dabtUnknown - DisplayWidth = 0 DisplayLabel = 'Poblaci'#243'n' - Alignment = taLeftJustify DictionaryEntry = 'Contactos_POBLACION' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False end item Name = 'PROVINCIA' DataType = datString Size = 255 - BlobType = dabtUnknown - DisplayWidth = 0 DisplayLabel = 'Provincia' - Alignment = taLeftJustify DictionaryEntry = 'Contactos_PROVINCIA' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False end item Name = 'CODIGO_POSTAL' DataType = datString Size = 10 - BlobType = dabtUnknown - DisplayWidth = 0 DisplayLabel = 'C'#243'digo postal' - Alignment = taLeftJustify DictionaryEntry = 'Contactos_CODIGO_POSTAL' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False end item Name = 'TELEFONO_1' DataType = datString Size = 25 - BlobType = dabtUnknown - DisplayWidth = 0 DisplayLabel = 'Tlf. trabajo' - Alignment = taLeftJustify DictionaryEntry = 'Contactos_TELEFONO_1' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False end item Name = 'TELEFONO_2' DataType = datString Size = 25 - BlobType = dabtUnknown - DisplayWidth = 0 DisplayLabel = 'Tlf. particular' - Alignment = taLeftJustify DictionaryEntry = 'Contactos_TELEFONO_2' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False end item Name = 'MOVIL_1' DataType = datString Size = 25 - BlobType = dabtUnknown - DisplayWidth = 0 DisplayLabel = 'M'#243'vil' - Alignment = taLeftJustify DictionaryEntry = 'Contactos_MOVIL_1' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False end item Name = 'MOVIL_2' DataType = datString Size = 25 - BlobType = dabtUnknown - DisplayWidth = 0 - Alignment = taLeftJustify DictionaryEntry = 'Contactos_MOVIL_2' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False end item Name = 'FAX' DataType = datString Size = 25 - BlobType = dabtUnknown - DisplayWidth = 0 DisplayLabel = 'Fax' - Alignment = taLeftJustify DictionaryEntry = 'Contactos_FAX' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False end item Name = 'EMAIL_1' DataType = datString Size = 255 - BlobType = dabtUnknown - DisplayWidth = 0 DisplayLabel = 'E-mail trabajo' - Alignment = taLeftJustify DictionaryEntry = 'Contactos_EMAIL_1' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False end item Name = 'EMAIL_2' DataType = datString Size = 255 - BlobType = dabtUnknown - DisplayWidth = 0 DisplayLabel = 'E-mail particular' - Alignment = taLeftJustify DictionaryEntry = 'Contactos_EMAIL_2' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False end item Name = 'PAGINA_WEB' DataType = datString Size = 255 - BlobType = dabtUnknown - DisplayWidth = 0 DisplayLabel = 'Web' - Alignment = taLeftJustify DictionaryEntry = 'Contactos_PAGINA_WEB' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False end item Name = 'NOTAS' DataType = datMemo BlobType = dabtMemo - DisplayWidth = 0 DisplayLabel = 'Observaciones' - Alignment = taLeftJustify DictionaryEntry = 'Contactos_NOTAS' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False + end + item + Name = 'FECHA_ALTA' + DataType = datDateTime + DisplayLabel = 'Fecha de alta' + DictionaryEntry = 'Contactos_FECHA_ALTA' + end + item + Name = 'FECHA_MODIFICACION' + DataType = datDateTime + DisplayLabel = 'Fecha de modificaci'#243'n' + DictionaryEntry = 'Contactos_FECHA_MODIFICACION' end item Name = 'USUARIO' DataType = datString Size = 20 - BlobType = dabtUnknown - DisplayWidth = 0 DisplayLabel = 'Usuario' - Alignment = taLeftJustify DictionaryEntry = 'Contactos_USUARIO' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False end item Name = 'ID_EMPRESA' DataType = datInteger - BlobType = dabtUnknown - DisplayWidth = 0 - Alignment = taLeftJustify - DictionaryEntry = 'Contactos_ID_EMPRESA' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False end item Name = 'REFERENCIA' DataType = datString Size = 255 - BlobType = dabtUnknown - DisplayWidth = 0 DisplayLabel = 'Referencia' - Alignment = taLeftJustify DictionaryEntry = 'Contactos_REFERENCIA' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False end> - Params = < - item - Name = 'ID_CATEGORIA' - DataType = datInteger - BlobType = dabtUnknown - Value = '22' - ParamType = daptInput - end> - MasterMappingMode = mmDataRequest + Params = <> StreamingOptions = [soDisableEventsWhileStreaming] - SchemaCall.MethodName = 'GetDatasetSchema' - SchemaCall.Params = < - item - Name = 'Result' - ParamType = fResult - DataType = rtBinary - end - item - Name = 'aDatasetName' - ParamType = fIn - DataType = rtString - Value = 'Contactos' - end> - DataRequestCall.MethodName = 'GetDatasetDataEx' - DataRequestCall.Params = < - item - Name = 'Result' - ParamType = fResult - DataType = rtBinary - end - item - Name = 'DatasetName' - ParamType = fIn - DataType = rtString - Value = 'Contactos' - end - item - Name = 'Params' - ParamType = fIn - DataType = rtUserDefined - UserClassName = 'TDADatasetParamArray' - end - item - Name = 'UserFilter' - ParamType = fIn - DataType = rtString - Value = '' - end - item - Name = 'IncludeSchema' - ParamType = fIn - DataType = rtBoolean - Value = False - end - item - Name = 'MaxRecords' - ParamType = fIn - DataType = rtInteger - Value = -1 - end> - DataUpdateCall.MethodName = 'UpdateData' - DataUpdateCall.Params = < - item - Name = 'Result' - ParamType = fResult - DataType = rtBinary - end - item - Name = 'Delta' - ParamType = fIn - DataType = rtBinary - end> - ScriptCall.MethodName = 'GetDatasetScripts' - ScriptCall.Params = < - item - Name = 'Result' - ParamType = fResult - DataType = rtString - Value = '' - end - item - Name = 'DatasetNames' - ParamType = fIn - DataType = rtString - Value = 'Contactos' - end> - ReadOnly = False - RemoteService = RORemoteService - Adapter = DABinAdapter + RemoteDataAdapter = rda_Contactos + LocalDataStreamer = Bin2DataStreamer DetailOptions = [dtCascadeOpenClose, dtCascadeApplyUpdates, dtAutoFetch, dtCascadeDelete, dtCascadeUpdate, dtDisableLogOfCascadeDeletes, dtDisableLogOfCascadeUpdates, dtIncludeInAllInOneFetch] MasterOptions = [moCascadeOpenClose, moCascadeApplyUpdates, moCascadeDelete, moCascadeUpdate, moDisableLogOfCascadeDeletes, moDisableLogOfCascadeUpdates] LogicalName = 'Contactos' - IndexDefs = <> - Left = 168 + Left = 176 Top = 16 end object ds_Contactos: TDADataSource + DataSet = tbl_Contactos.Dataset DataTable = tbl_Contactos - Left = 168 - Top = 88 + Left = 176 + Top = 80 end - object tbl_ContactosCategorias: TDACDSDataTable - RemoteUpdatesOptions = [] - Fields = < - item - Name = 'ID_CONTACTO' - DataType = datInteger - BlobType = dabtUnknown - DisplayWidth = 0 - Alignment = taLeftJustify - InPrimaryKey = True - Calculated = False - Lookup = False - LookupCache = False - end - item - Name = 'ID_CATEGORIA' - DataType = datInteger - BlobType = dabtUnknown - DisplayWidth = 0 - Alignment = taLeftJustify - InPrimaryKey = True - Calculated = False - Lookup = False - LookupCache = False - end> - Params = < - item - Name = 'ID_CONTACTO' - DataType = datInteger - BlobType = dabtUnknown - Value = '444' - ParamType = daptInput - end> - MasterMappingMode = mmParams - MasterParamsMappings.Strings = ( - 'ID_CONTACTO=ID') - StreamingOptions = [soDisableEventsWhileStreaming] - SchemaCall.MethodName = 'GetDatasetSchema' - SchemaCall.Params = < - item - Name = 'Result' - ParamType = fResult - DataType = rtBinary - end - item - Name = 'aDatasetName' - ParamType = fIn - DataType = rtString - Value = 'ContactosCategorias' - end> - DataRequestCall.MethodName = 'GetDatasetDataEx' - DataRequestCall.Params = < - item - Name = 'Result' - ParamType = fResult - DataType = rtBinary - end - item - Name = 'DatasetName' - ParamType = fIn - DataType = rtString - Value = 'ContactosCategorias' - end - item - Name = 'Params' - ParamType = fIn - DataType = rtUserDefined - UserClassName = 'TDADatasetParamArray' - end - item - Name = 'UserFilter' - ParamType = fIn - DataType = rtString - Value = '' - end - item - Name = 'IncludeSchema' - ParamType = fIn - DataType = rtBoolean - Value = False - end - item - Name = 'MaxRecords' - ParamType = fIn - DataType = rtInteger - Value = -1 - end> - DataUpdateCall.MethodName = 'UpdateData' - DataUpdateCall.Params = < - item - Name = 'Result' - ParamType = fResult - DataType = rtBinary - end - item - Name = 'Delta' - ParamType = fIn - DataType = rtBinary - end> - ScriptCall.MethodName = 'GetDatasetScripts' - ScriptCall.Params = < - item - Name = 'Result' - ParamType = fResult - DataType = rtString - Value = '' - end - item - Name = 'DatasetNames' - ParamType = fIn - DataType = rtString - Value = 'ContactosCategorias' - end> - ReadOnly = False - RemoteService = RORemoteService - Adapter = DABinAdapter - MasterSource = ds_Contactos - MasterFields = 'ID' - DetailFields = 'ID_CONTACTO' - DetailOptions = [dtCascadeOpenClose, dtCascadeApplyUpdates, dtAutoFetch, dtCascadeDelete, dtCascadeUpdate, dtDisableLogOfCascadeDeletes, dtDisableLogOfCascadeUpdates, dtIncludeInAllInOneFetch] - MasterOptions = [moCascadeOpenClose, moCascadeApplyUpdates, moCascadeDelete, moCascadeUpdate, moDisableLogOfCascadeDeletes, moDisableLogOfCascadeUpdates] - LogicalName = 'ContactosCategorias' - IndexDefs = <> - Left = 288 - Top = 16 - end - object ds_ContactosCategorias: TDADataSource - DataTable = tbl_ContactosCategorias - Left = 288 - Top = 88 - end - object tbl_DatosBancarios: TDACDSDataTable + object tbl_DireccionesContacto: TDAMemDataTable RemoteUpdatesOptions = [] Fields = < item Name = 'ID' DataType = datAutoInc - BlobType = dabtUnknown - DisplayWidth = 0 - Alignment = taLeftJustify - DictionaryEntry = 'DatosBancarios_ID' - InPrimaryKey = True - Calculated = False - Lookup = False - LookupCache = False - end - item - Name = 'ID_CONTACTO' - DataType = datInteger - BlobType = dabtUnknown - DisplayWidth = 0 - Alignment = taLeftJustify - DictionaryEntry = 'DatosBancarios_ID_CONTACTO' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False - end - item - Name = 'TITULAR' - DataType = datString - Size = 255 - BlobType = dabtUnknown - DisplayWidth = 0 - DisplayLabel = 'Titular' - Alignment = taLeftJustify - DictionaryEntry = 'DatosBancarios_TITULAR' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False - end - item - Name = 'ENTIDAD' - DataType = datString - Size = 15 - BlobType = dabtUnknown - DisplayWidth = 0 - DisplayLabel = 'C'#243'digo de entidad' - Alignment = taLeftJustify - DictionaryEntry = 'DatosBancarios_ENTIDAD' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False - end - item - Name = 'SUCURSAL' - DataType = datString - Size = 15 - BlobType = dabtUnknown - DisplayWidth = 0 - DisplayLabel = 'C'#243'digo de sucursal' - Alignment = taLeftJustify - DictionaryEntry = 'DatosBancarios_SUCURSAL' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False - end - item - Name = 'DC' - DataType = datString - Size = 15 - BlobType = dabtUnknown - DisplayWidth = 0 - DisplayLabel = 'D'#237'gito de control' - Alignment = taLeftJustify - DictionaryEntry = 'DatosBancarios_DC' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False - end - item - Name = 'CUENTA' - DataType = datString - Size = 15 - BlobType = dabtUnknown - DisplayWidth = 0 - DisplayLabel = 'C'#243'digo de cuenta' - Alignment = taLeftJustify - DictionaryEntry = 'DatosBancarios_CUENTA' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False - end> - Params = < - item - Name = 'ID_CONTACTO' - DataType = datInteger - BlobType = dabtUnknown - Value = '' - ParamType = daptInput - end> - MasterMappingMode = mmParams - MasterParamsMappings.Strings = ( - 'ID_CONTACTO=ID') - StreamingOptions = [soDisableEventsWhileStreaming] - SchemaCall.MethodName = 'GetDatasetSchema' - SchemaCall.Params = < - item - Name = 'Result' - ParamType = fResult - DataType = rtBinary - end - item - Name = 'aDatasetName' - ParamType = fIn - DataType = rtString - Value = 'DatosBancarios' - end> - DataRequestCall.MethodName = 'GetDatasetDataEx' - DataRequestCall.Params = < - item - Name = 'Result' - ParamType = fResult - DataType = rtBinary - end - item - Name = 'DatasetName' - ParamType = fIn - DataType = rtString - Value = 'DatosBancarios' - end - item - Name = 'Params' - ParamType = fIn - DataType = rtUserDefined - UserClassName = 'TDADatasetParamArray' - end - item - Name = 'UserFilter' - ParamType = fIn - DataType = rtString - Value = '' - end - item - Name = 'IncludeSchema' - ParamType = fIn - DataType = rtBoolean - Value = False - end - item - Name = 'MaxRecords' - ParamType = fIn - DataType = rtInteger - Value = -1 - end> - DataUpdateCall.MethodName = 'UpdateData' - DataUpdateCall.Params = < - item - Name = 'Result' - ParamType = fResult - DataType = rtBinary - end - item - Name = 'Delta' - ParamType = fIn - DataType = rtBinary - end> - ScriptCall.MethodName = 'GetDatasetScripts' - ScriptCall.Params = < - item - Name = 'Result' - ParamType = fResult - DataType = rtString - Value = '' - end - item - Name = 'DatasetNames' - ParamType = fIn - DataType = rtString - Value = 'DatosBancarios' - end> - ReadOnly = False - RemoteService = RORemoteService - Adapter = DABinAdapter - MasterSource = ds_Contactos - MasterFields = 'ID' - DetailFields = 'ID_CONTACTO' - DetailOptions = [dtCascadeOpenClose, dtCascadeApplyUpdates, dtAutoFetch, dtCascadeDelete, dtCascadeUpdate, dtDisableLogOfCascadeDeletes, dtDisableLogOfCascadeUpdates, dtIncludeInAllInOneFetch] - MasterOptions = [moCascadeOpenClose, moCascadeApplyUpdates, moCascadeDelete, moCascadeUpdate, moDisableLogOfCascadeDeletes, moDisableLogOfCascadeUpdates] - LogicalName = 'DatosBancarios' - IndexDefs = <> - Left = 432 - Top = 16 - end - object ds_DatosBancarios: TDADataSource - DataTable = tbl_DatosBancarios - Left = 432 - Top = 88 - end - object DADesigntimeCall1: TDADesigntimeCall - RemoteRequest.MethodName = 'Login' - RemoteRequest.Params = < - item - Name = 'Result' - ParamType = fResult - DataType = rtBoolean - end - item - Name = 'User' - ParamType = fIn - DataType = rtString - Value = 'Administrador' - end - item - Name = 'Password' - ParamType = fIn - DataType = rtString - Value = 'tecsitel07' - end - item - Name = 'LoginInfo' - ParamType = fOut - DataType = rtUserDefined - UserClassName = 'TRdxLoginInfo' - end> - RemoteService = LoginRemoteService - Left = 40 - Top = 176 - end - object LoginRemoteService: TRORemoteService - ServiceName = 'srvLogin' - Message = ROBinMessage1 - Channel = ROWinInetHTTPChannel1 - Left = 40 - Top = 232 - end - object ROWinInetHTTPChannel1: TROWinInetHTTPChannel - ServerLocators = <> - DispatchOptions = [] - ProbeServers = False - ProbeFrequency = 60000 - UserAgent = 'RemObjects SDK' - TargetURL = 'http://localhost:8090/bin' - Left = 40 - Top = 288 - end - object ROBinMessage1: TROBinMessage - Left = 40 - Top = 340 - end - object tbl_DireccionesContacto: TDACDSDataTable - RemoteUpdatesOptions = [] - Fields = < - item - Name = 'ID' - DataType = datAutoInc - BlobType = dabtUnknown - DisplayWidth = 0 - Alignment = taLeftJustify + GeneratorName = 'GEN_CONTACTOS_DIR_ID' + ServerAutoRefresh = True DictionaryEntry = 'DireccionesContacto_ID' InPrimaryKey = True - Calculated = False - Lookup = False - LookupCache = False end item Name = 'ID_CONTACTO' DataType = datInteger - BlobType = dabtUnknown - DisplayWidth = 0 - Alignment = taLeftJustify DictionaryEntry = 'DireccionesContacto_ID_CONTACTO' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False - end - item - Name = 'NOMBRE' - DataType = datString - Size = 255 - BlobType = dabtUnknown - DisplayWidth = 0 - DisplayLabel = 'DireccionesContacto_NOMBRE' - Alignment = taLeftJustify - DictionaryEntry = 'DireccionesContacto_NOMBRE' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False end item Name = 'CALLE' DataType = datString Size = 255 - BlobType = dabtUnknown - DisplayWidth = 0 DisplayLabel = 'Calle' - Alignment = taLeftJustify DictionaryEntry = 'DireccionesContacto_CALLE' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False end item Name = 'POBLACION' DataType = datString Size = 255 - BlobType = dabtUnknown - DisplayWidth = 0 DisplayLabel = 'Poblaci'#243'n' - Alignment = taLeftJustify DictionaryEntry = 'DireccionesContacto_POBLACION' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False end item Name = 'PROVINCIA' DataType = datString Size = 255 - BlobType = dabtUnknown - DisplayWidth = 0 DisplayLabel = 'Provincia' - Alignment = taLeftJustify DictionaryEntry = 'DireccionesContacto_PROVINCIA' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False end item Name = 'CODIGO_POSTAL' DataType = datString Size = 10 - BlobType = dabtUnknown - DisplayWidth = 0 DisplayLabel = 'C'#243'digo postal' - Alignment = taLeftJustify DictionaryEntry = 'DireccionesContacto_CODIGO_POSTAL' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False end item Name = 'PERSONA_CONTACTO' DataType = datString Size = 255 - BlobType = dabtUnknown - DisplayWidth = 0 DisplayLabel = 'Persona de contacto' - Alignment = taLeftJustify DictionaryEntry = 'DireccionesContacto_PERSONA_CONTACTO' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False + end + item + Name = 'NOMBRE' + DataType = datString + Size = 255 + DisplayLabel = 'DireccionesContacto_NOMBRE' + DictionaryEntry = 'DireccionesContacto_NOMBRE' end item Name = 'TELEFONO' DataType = datString Size = 25 - BlobType = dabtUnknown - DisplayWidth = 0 DisplayLabel = 'Tel'#233'fono' - Alignment = taLeftJustify DictionaryEntry = 'DireccionesContacto_TELEFONO' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False end item Name = 'MOVIL' DataType = datString Size = 25 - BlobType = dabtUnknown - DisplayWidth = 0 DisplayLabel = 'M'#243'vil' - Alignment = taLeftJustify DictionaryEntry = 'Contactos_MOVIL_1' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False end item Name = 'FAX' DataType = datString Size = 25 - BlobType = dabtUnknown - DisplayWidth = 0 DisplayLabel = 'Fax' - Alignment = taLeftJustify DictionaryEntry = 'Contactos_FAX' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False end item Name = 'EMAIL' DataType = datString Size = 255 - BlobType = dabtUnknown - DisplayWidth = 0 DisplayLabel = 'E-mail' - Alignment = taLeftJustify DictionaryEntry = 'DireccionesContacto_EMAIL' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False end item Name = 'NOTAS' DataType = datMemo - BlobType = dabtUnknown - DisplayWidth = 0 DisplayLabel = 'Notas' - Alignment = taLeftJustify DictionaryEntry = 'DireccionesContacto_NOTAS' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False end item Name = 'PORTE' DataType = datFloat - BlobType = dabtUnknown - DisplayWidth = 0 DisplayLabel = 'Coste del porte' - Alignment = taLeftJustify DictionaryEntry = 'DireccionesContacto_PORTE' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False - end> - Params = < + end item - Name = 'ID_CONTACTO' - DataType = datInteger - BlobType = dabtUnknown - Value = '9' - ParamType = daptInput + Name = 'FECHA_ALTA' + DataType = datDateTime + end + item + Name = 'FECHA_MODIFICACION' + DataType = datDateTime end> - MasterMappingMode = mmParams - MasterParamsMappings.Strings = ( - 'ID_CONTACTO=ID') + Params = <> + MasterMappingMode = mmWhere StreamingOptions = [soDisableEventsWhileStreaming] - SchemaCall.MethodName = 'GetDatasetSchema' - SchemaCall.Params = < - item - Name = 'Result' - ParamType = fResult - DataType = rtBinary - end - item - Name = 'aDatasetName' - ParamType = fIn - DataType = rtString - Value = 'DireccionesContacto' - end> - DataRequestCall.MethodName = 'GetDatasetDataEx' - DataRequestCall.Params = < - item - Name = 'Result' - ParamType = fResult - DataType = rtBinary - end - item - Name = 'DatasetName' - ParamType = fIn - DataType = rtString - Value = 'DireccionesContacto' - end - item - Name = 'Params' - ParamType = fIn - DataType = rtUserDefined - UserClassName = 'TDADatasetParamArray' - end - item - Name = 'UserFilter' - ParamType = fIn - DataType = rtString - Value = '' - end - item - Name = 'IncludeSchema' - ParamType = fIn - DataType = rtBoolean - Value = False - end - item - Name = 'MaxRecords' - ParamType = fIn - DataType = rtInteger - Value = -1 - end> - DataUpdateCall.MethodName = 'UpdateData' - DataUpdateCall.Params = < - item - Name = 'Result' - ParamType = fResult - DataType = rtBinary - end - item - Name = 'Delta' - ParamType = fIn - DataType = rtBinary - end> - ScriptCall.MethodName = 'GetDatasetScripts' - ScriptCall.Params = < - item - Name = 'Result' - ParamType = fResult - DataType = rtString - Value = '' - end - item - Name = 'DatasetNames' - ParamType = fIn - DataType = rtString - Value = 'DireccionesContacto' - end> - ReadOnly = False - RemoteService = RORemoteService - Adapter = DABinAdapter + RemoteDataAdapter = rda_Contactos + LocalDataStreamer = Bin2DataStreamer MasterSource = ds_Contactos MasterFields = 'ID' DetailFields = 'ID_CONTACTO' DetailOptions = [dtCascadeOpenClose, dtCascadeApplyUpdates, dtAutoFetch, dtCascadeDelete, dtCascadeUpdate, dtDisableLogOfCascadeDeletes, dtDisableLogOfCascadeUpdates, dtIncludeInAllInOneFetch] MasterOptions = [moCascadeOpenClose, moCascadeApplyUpdates, moCascadeDelete, moCascadeUpdate, moDisableLogOfCascadeDeletes, moDisableLogOfCascadeUpdates] LogicalName = 'DireccionesContacto' - IndexDefs = <> - Left = 168 - Top = 160 + Left = 448 + Top = 16 end object ds_DireccionesContacto: TDADataSource + DataSet = tbl_DireccionesContacto.Dataset DataTable = tbl_DireccionesContacto - Left = 168 - Top = 224 + Left = 448 + Top = 80 + end + object tbl_DatosBancarios: TDAMemDataTable + RemoteUpdatesOptions = [] + Fields = < + item + Name = 'ID' + DataType = datAutoInc + GeneratorName = 'GEN_CONTACTOS_DATOS_BANCO_ID' + DictionaryEntry = 'DatosBancarios_ID' + InPrimaryKey = True + end + item + Name = 'ID_CONTACTO' + DataType = datInteger + DictionaryEntry = 'DatosBancarios_ID_CONTACTO' + end + item + Name = 'TITULAR' + DataType = datString + Size = 255 + DisplayLabel = 'Titular' + DictionaryEntry = 'DatosBancarios_TITULAR' + end + item + Name = 'ENTIDAD' + DataType = datString + Size = 15 + DisplayLabel = 'C'#195#179'digo de entidad' + DictionaryEntry = 'DatosBancarios_ENTIDAD' + end + item + Name = 'SUCURSAL' + DataType = datString + Size = 15 + DisplayLabel = 'C'#195#179'digo de sucursal' + DictionaryEntry = 'DatosBancarios_SUCURSAL' + end + item + Name = 'DC' + DataType = datString + Size = 15 + DisplayLabel = 'D'#195#173'gito de control' + DictionaryEntry = 'DatosBancarios_DC' + end + item + Name = 'CUENTA' + DataType = datString + Size = 15 + DisplayLabel = 'C'#195#179'digo de cuenta' + DictionaryEntry = 'DatosBancarios_CUENTA' + end + item + Name = 'FECHA_ALTA' + DataType = datDateTime + end + item + Name = 'FECHA_MODIFICACION' + DataType = datDateTime + end> + Params = <> + MasterMappingMode = mmWhere + StreamingOptions = [soDisableEventsWhileStreaming] + RemoteDataAdapter = rda_Contactos + LocalDataStreamer = Bin2DataStreamer + MasterSource = ds_Contactos + MasterFields = 'ID' + DetailFields = 'ID_CONTACTO' + DetailOptions = [dtCascadeOpenClose, dtCascadeApplyUpdates, dtAutoFetch, dtCascadeDelete, dtCascadeUpdate, dtDisableLogOfCascadeDeletes, dtDisableLogOfCascadeUpdates, dtIncludeInAllInOneFetch] + MasterOptions = [moCascadeOpenClose, moCascadeApplyUpdates, moCascadeDelete, moCascadeUpdate, moDisableLogOfCascadeDeletes, moDisableLogOfCascadeUpdates] + LogicalName = 'DatosBancarios' + Left = 176 + Top = 168 + end + object ds_DatosBancarios: TDADataSource + DataSet = tbl_DatosBancarios.Dataset + DataTable = tbl_DatosBancarios + Left = 176 + Top = 232 end end diff --git a/Source/Modulos/Contactos/Data/uDataModuleContactos.pas b/Source/Modulos/Contactos/Data/uDataModuleContactos.pas index a8a8046b..94537dd3 100644 --- a/Source/Modulos/Contactos/Data/uDataModuleContactos.pas +++ b/Source/Modulos/Contactos/Data/uDataModuleContactos.pas @@ -4,39 +4,31 @@ interface uses SysUtils, Classes, DB, DBClient, - uDAClientDataModule, uDADataTable, uDABINAdapter, + uDADataTable, uDABINAdapter, uDAScriptingProvider, uDACDSDataTable, uROWinInetHttpChannel, - uROServiceComponent, uRORemoteService, uROClient, uROBinMessage, - uBizContactos, uBizContactosDatosBancarios, uBizCategoriasContacto, + uRORemoteService, uROClient, uROBinMessage, + uBizContactos, uBizContactosDatosBancarios, uBizDireccionesContacto, uIDataModuleEtiquetasContactosReport, - uIDataModuleContactos, uDADesigntimeCall, uROTypes; + uIDataModuleContactos, uDADesigntimeCall, uROTypes, uRODynamicRequest, + uDAInterfaces, uDADataStreamer, uDARemoteDataAdapter, uDABin2DataStreamer, + uDAMemDataTable; type - TDataModuleContactos = class(TDAClientDataModule, IDataModuleContactos, IDataModuleEtiquetasContactosReport) + TDataModuleContactos = class(TDataModule, IDataModuleContactos, IDataModuleEtiquetasContactosReport) RORemoteService: TRORemoteService; - DABinAdapter: TDABINAdapter; - tbl_Contactos: TDACDSDataTable; + rda_Contactos: TDARemoteDataAdapter; + Bin2DataStreamer: TDABin2DataStreamer; + tbl_Contactos: TDAMemDataTable; ds_Contactos: TDADataSource; - tbl_ContactosCategorias: TDACDSDataTable; - ds_ContactosCategorias: TDADataSource; - tbl_DatosBancarios: TDACDSDataTable; - ds_DatosBancarios: TDADataSource; - DADesigntimeCall1: TDADesigntimeCall; - LoginRemoteService: TRORemoteService; - ROWinInetHTTPChannel1: TROWinInetHTTPChannel; - ROBinMessage1: TROBinMessage; - tbl_DireccionesContacto: TDACDSDataTable; + tbl_DireccionesContacto: TDAMemDataTable; ds_DireccionesContacto: TDADataSource; + tbl_DatosBancarios: TDAMemDataTable; + ds_DatosBancarios: TDADataSource; procedure DAClientDataModuleCreate(Sender: TObject); - protected - function _InternalGetNextID(const AGeneratorName : String) : Integer; public - function _CloneDataTable (const ADataTable : TDACDSDataTable): TDACDSDataTable; overload; function _GetDatosBancarios : IBizContactosDatosBancarios; function _GetDirecciones: IBizDireccionesContacto; - function _GetCategorias : IBizCategoriasContacto; function _GetItems (IDCategoria : Integer): IBizContacto; virtual; - function GetNextID(const DataSetName : String) : Integer; virtual; // Report function GetReport(const AContactosID: String): Binary; @@ -48,8 +40,7 @@ implementation uses uDataTableUtils, uDataModuleConexion, cxControls, - FactuGES_Intf, uDataModuleUsuarios, schContactosClient_Intf, Dialogs, - uDAInterfaces; + FactuGES_Intf, schContactosClient_Intf, Dialogs; { TdmContactos } @@ -59,68 +50,18 @@ begin RORemoteService.Message := dmConexion.Message; end; -function TDataModuleContactos.GetNextID(const DataSetName: String): Integer; -var - aGeneratorName : String; -begin - if DataSetName = nme_Contactos then - aGeneratorName := 'GEN_CONTACTOS_ID'; - - if DataSetName = nme_DatosBancarios then - aGeneratorName := 'GEN_CONTACTOS_DATOS_BANCO_ID'; - - if DataSetName = nme_DireccionesContacto then - aGeneratorName := 'GEN_CONTACTOS_DIR_ID'; - - if DataSetName = nme_DireccionesContacto then - aGeneratorName := 'GEN_CONTACTOS_DIR_ID'; - - Result := _InternalGetNextID(aGeneratorName); -end; - function TDataModuleContactos.GetReport(const AContactosID: String): Binary; begin Result := (RORemoteService as IsrvContactos).GenerateEtiquetasReport(AContactosID); end; -function TDataModuleContactos._CloneDataTable( - const ADataTable : TDACDSDataTable): TDACDSDataTable; -begin - Result := NIL; - - if not Assigned(ADataTable) then - raise Exception.Create ('No se ha asignado la tabla de origen (CloneDataTable)'); - - Result := TDACDSDataTable.Create(NIL); - CloneDataTable(ADataTable, Result); -end; - -function TDataModuleContactos._GetCategorias: IBizCategoriasContacto; -var - ACategorias : TDACDSDataTable; -begin - ShowHourglassCursor; - try - ACategorias := _CloneDataTable(tbl_ContactosCategorias); - with ACategorias do - begin - BusinessRulesID := BIZ_CLIENT_CATEGORIAS_CONTACTO; - DetailOptions := DetailOptions - - [dtDisableLogOfCascadeDeletes, dtDisableLogOfCascadeUpdates]; - end; - Result := (ACategorias as IBizCategoriasContacto); - finally - HideHourglassCursor; - end; -end; - function TDataModuleContactos._GetDatosBancarios: IBizContactosDatosBancarios; var - ADatosBancarios : TDACDSDataTable; + ADatosBancarios : TDAMemDataTable; begin ShowHourglassCursor; try - ADatosBancarios := _CloneDataTable(tbl_DatosBancarios); + ADatosBancarios := CloneDataTable(tbl_DatosBancarios); with ADatosBancarios do begin BusinessRulesID := BIZ_CLIENT_CONTACTOS_DATOS_BANCARIOS; @@ -135,11 +76,11 @@ end; function TDataModuleContactos._GetDirecciones: IBizDireccionesContacto; var - ADirecciones : TDACDSDataTable; + ADirecciones : TDAMemDataTable; begin ShowHourglassCursor; try - ADirecciones := _CloneDataTable(tbl_DireccionesContacto); + ADirecciones := CloneDataTable(tbl_DireccionesContacto); with ADirecciones do begin BusinessRulesID := BIZ_CLIENT_DIRECCIONES_CONTACTO; @@ -154,11 +95,11 @@ end; function TDataModuleContactos._GetItems(IDCategoria: Integer): IBizContacto; var - AContacto : TDACDSDataTable; + AContacto : TDAMemDataTable; begin ShowHourglassCursor; try - AContacto := _CloneDataTable(tbl_Contactos); + AContacto := CloneDataTable(tbl_Contactos); with AContacto do case IDCategoria of @@ -171,7 +112,6 @@ begin begin DatosBancarios := _GetDatosBancarios; Direcciones := _GetDirecciones; - _Categorias := _GetCategorias; end; Result := (AContacto as IBizContacto); @@ -180,10 +120,4 @@ begin end; end; -function TDataModuleContactos._InternalGetNextID( - const AGeneratorName: String): Integer; -begin - Result := (RORemoteService as IsrvContactos).GetNextAutoInc(AGeneratorName) -end; - end. diff --git a/Source/Modulos/Contactos/Data/uDataModuleEmpleados.dfm b/Source/Modulos/Contactos/Data/uDataModuleEmpleados.dfm index ba80b610..2bddd5e9 100644 --- a/Source/Modulos/Contactos/Data/uDataModuleEmpleados.dfm +++ b/Source/Modulos/Contactos/Data/uDataModuleEmpleados.dfm @@ -1,587 +1,251 @@ inherited DataModuleEmpleados: TDataModuleEmpleados - object tbl_Empleados: TDACDSDataTable + inherited ds_Contactos: TDADataSource + DataSet = tbl_Contactos.Dataset + end + inherited ds_DireccionesContacto: TDADataSource + DataSet = tbl_DireccionesContacto.Dataset + end + inherited ds_DatosBancarios: TDADataSource + DataSet = tbl_DatosBancarios.Dataset + end + object tbl_Empleados: TDAMemDataTable RemoteUpdatesOptions = [] Fields = < item Name = 'ID' DataType = datAutoInc - BlobType = dabtUnknown - DisplayWidth = 0 - Alignment = taLeftJustify + GeneratorName = 'GEN_CONTACTOS_ID' + ServerAutoRefresh = True DictionaryEntry = 'Contactos_ID' InPrimaryKey = True - Calculated = False - Lookup = False - LookupCache = False end item Name = 'ID_CATEGORIA' DataType = datInteger - BlobType = dabtUnknown - DisplayWidth = 0 DisplayLabel = 'Contactos_ID_CATEGORIA' - Alignment = taLeftJustify DictionaryEntry = 'Contactos_ID_CATEGORIA' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False end item Name = 'NIF_CIF' DataType = datString Size = 15 - BlobType = dabtUnknown - DisplayWidth = 0 DisplayLabel = 'NIF/CIF' - Alignment = taLeftJustify DictionaryEntry = 'Contactos_NIF_CIF' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False end item Name = 'NOMBRE' DataType = datString Size = 255 - BlobType = dabtUnknown - DisplayWidth = 0 + Required = True DisplayLabel = 'Nombre' - Alignment = taLeftJustify DictionaryEntry = 'Contactos_NOMBRE' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False - end - item - Name = 'CALLE' - DataType = datString - Size = 255 - BlobType = dabtUnknown - DisplayWidth = 0 - DisplayLabel = 'Direcci'#243'n' - Alignment = taLeftJustify - DictionaryEntry = 'Contactos_CALLE' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False end item Name = 'PERSONA_CONTACTO' DataType = datString Size = 255 - BlobType = dabtUnknown - DisplayWidth = 0 DisplayLabel = 'Persona de contacto' - Alignment = taLeftJustify DictionaryEntry = 'Contactos_PERSONA_CONTACTO' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False + end + item + Name = 'CALLE' + DataType = datString + Size = 255 + DisplayLabel = 'Direcci'#243'n' + DictionaryEntry = 'Contactos_CALLE' end item Name = 'POBLACION' DataType = datString Size = 255 - BlobType = dabtUnknown - DisplayWidth = 0 DisplayLabel = 'Poblaci'#243'n' - Alignment = taLeftJustify DictionaryEntry = 'Contactos_POBLACION' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False end item Name = 'PROVINCIA' DataType = datString Size = 255 - BlobType = dabtUnknown - DisplayWidth = 0 DisplayLabel = 'Provincia' - Alignment = taLeftJustify DictionaryEntry = 'Contactos_PROVINCIA' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False end item Name = 'CODIGO_POSTAL' DataType = datString Size = 10 - BlobType = dabtUnknown - DisplayWidth = 0 DisplayLabel = 'C'#243'digo postal' - Alignment = taLeftJustify DictionaryEntry = 'Contactos_CODIGO_POSTAL' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False end item Name = 'TELEFONO_1' DataType = datString Size = 25 - BlobType = dabtUnknown - DisplayWidth = 0 DisplayLabel = 'Tlf. trabajo' - Alignment = taLeftJustify DictionaryEntry = 'Contactos_TELEFONO_1' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False end item Name = 'TELEFONO_2' DataType = datString Size = 25 - BlobType = dabtUnknown - DisplayWidth = 0 DisplayLabel = 'Tlf. particular' - Alignment = taLeftJustify DictionaryEntry = 'Contactos_TELEFONO_2' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False end item Name = 'MOVIL_1' DataType = datString Size = 25 - BlobType = dabtUnknown - DisplayWidth = 0 DisplayLabel = 'M'#243'vil' - Alignment = taLeftJustify DictionaryEntry = 'Contactos_MOVIL_1' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False end item Name = 'MOVIL_2' DataType = datString Size = 25 - BlobType = dabtUnknown - DisplayWidth = 0 - Alignment = taLeftJustify DictionaryEntry = 'Contactos_MOVIL_2' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False end item Name = 'FAX' DataType = datString Size = 25 - BlobType = dabtUnknown - DisplayWidth = 0 DisplayLabel = 'Fax' - Alignment = taLeftJustify DictionaryEntry = 'Contactos_FAX' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False end item Name = 'EMAIL_1' DataType = datString Size = 255 - BlobType = dabtUnknown - DisplayWidth = 0 DisplayLabel = 'E-mail trabajo' - Alignment = taLeftJustify DictionaryEntry = 'Contactos_EMAIL_1' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False end item Name = 'EMAIL_2' DataType = datString Size = 255 - BlobType = dabtUnknown - DisplayWidth = 0 DisplayLabel = 'E-mail particular' - Alignment = taLeftJustify DictionaryEntry = 'Contactos_EMAIL_2' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False end item Name = 'PAGINA_WEB' DataType = datString Size = 255 - BlobType = dabtUnknown - DisplayWidth = 0 DisplayLabel = 'Web' - Alignment = taLeftJustify DictionaryEntry = 'Contactos_PAGINA_WEB' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False end item Name = 'NOTAS' DataType = datMemo BlobType = dabtMemo - DisplayWidth = 0 DisplayLabel = 'Observaciones' - Alignment = taLeftJustify DictionaryEntry = 'Contactos_NOTAS' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False + end + item + Name = 'FECHA_ALTA' + DataType = datDateTime + end + item + Name = 'FECHA_MODIFICACION' + DataType = datDateTime end item Name = 'USUARIO' DataType = datString Size = 20 - BlobType = dabtUnknown - DisplayWidth = 0 DisplayLabel = 'Usuario' - Alignment = taLeftJustify DictionaryEntry = 'Contactos_USUARIO' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False end item Name = 'ID_EMPRESA' DataType = datInteger - BlobType = dabtUnknown - DisplayWidth = 0 - Alignment = taLeftJustify DictionaryEntry = 'Contactos_ID_EMPRESA' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False end item Name = 'REFERENCIA' DataType = datString Size = 255 - BlobType = dabtUnknown - DisplayWidth = 0 DisplayLabel = 'Referencia' - Alignment = taLeftJustify DictionaryEntry = 'Agentes_REFERENCIA' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False + end + item + Name = 'FECHA_NACIMIENTO' + DataType = datDateTime + DisplayLabel = 'Fecha nacimiento' + DictionaryEntry = 'Empleados_FECHA_NACIMIENTO' end item Name = 'CATEGORIA' DataType = datString Size = 255 - BlobType = dabtUnknown - DisplayWidth = 0 DisplayLabel = 'Categor'#237'a' - Alignment = taLeftJustify DictionaryEntry = 'Empleados_CATEGORIA' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False - end - item - Name = 'FECHA_NACIMIENTO' - DataType = datDateTime - BlobType = dabtUnknown - DisplayWidth = 0 - DisplayLabel = 'Fecha nacimiento' - Alignment = taLeftJustify - DictionaryEntry = 'Empleados_FECHA_NACIMIENTO' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False end item Name = 'FECHA_ALTA_EMPRESA' DataType = datDateTime - BlobType = dabtUnknown - DisplayWidth = 0 DisplayLabel = 'Fecha de alta' - Alignment = taLeftJustify DictionaryEntry = 'Empleados_FECHA_ALTA_EMPRESA' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False end item Name = 'FORMACION_BASE' DataType = datMemo - BlobType = dabtUnknown - DisplayWidth = 0 DisplayLabel = 'Formaci'#243'n base' - Alignment = taLeftJustify DictionaryEntry = 'Empleados_FORMACION_BASE' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False end item Name = 'FORMACION_COMPLE' DataType = datMemo - BlobType = dabtUnknown - DisplayWidth = 0 DisplayLabel = 'Formaci'#243'n complementaria' - Alignment = taLeftJustify DictionaryEntry = 'Empleados_FORMACION_COMPLE' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False end item Name = 'FORMACION_RECIBIDA' DataType = datMemo - BlobType = dabtUnknown - DisplayWidth = 0 DisplayLabel = 'Formaci'#243'n recibida' - Alignment = taLeftJustify DictionaryEntry = 'Empleados_FORMACION_RECIBIDA' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False end item Name = 'EXPERIENCIA' DataType = datMemo - BlobType = dabtUnknown - DisplayWidth = 0 DisplayLabel = 'Experiencia' - Alignment = taLeftJustify DictionaryEntry = 'Empleados_EXPERIENCIA' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False end> Params = <> - MasterMappingMode = mmDataRequest StreamingOptions = [soDisableEventsWhileStreaming] - SchemaCall.MethodName = 'GetDatasetSchema' - SchemaCall.Params = < - item - Name = 'Result' - ParamType = fResult - DataType = rtBinary - end - item - Name = 'aDatasetName' - ParamType = fIn - DataType = rtString - Value = 'Empleados' - end> - DataRequestCall.MethodName = 'GetDatasetDataEx' - DataRequestCall.Params = < - item - Name = 'Result' - ParamType = fResult - DataType = rtBinary - end - item - Name = 'DatasetName' - ParamType = fIn - DataType = rtString - Value = 'Empleados' - end - item - Name = 'Params' - ParamType = fIn - DataType = rtUserDefined - UserClassName = 'TDADatasetParamArray' - end - item - Name = 'UserFilter' - ParamType = fIn - DataType = rtString - Value = '' - end - item - Name = 'IncludeSchema' - ParamType = fIn - DataType = rtBoolean - Value = False - end - item - Name = 'MaxRecords' - ParamType = fIn - DataType = rtInteger - Value = -1 - end> - DataUpdateCall.MethodName = 'UpdateData' - DataUpdateCall.Params = < - item - Name = 'Result' - ParamType = fResult - DataType = rtBinary - end - item - Name = 'Delta' - ParamType = fIn - DataType = rtBinary - end> - ScriptCall.MethodName = 'GetDatasetScripts' - ScriptCall.Params = < - item - Name = 'Result' - ParamType = fResult - DataType = rtString - Value = '' - end - item - Name = 'DatasetNames' - ParamType = fIn - DataType = rtString - Value = 'Empleados' - end> - ReadOnly = False - RemoteService = RORemoteService - Adapter = DABinAdapter + RemoteDataAdapter = rda_Contactos + LocalDataStreamer = Bin2DataStreamer DetailOptions = [dtCascadeOpenClose, dtCascadeApplyUpdates, dtAutoFetch, dtCascadeDelete, dtCascadeUpdate, dtDisableLogOfCascadeDeletes, dtDisableLogOfCascadeUpdates, dtIncludeInAllInOneFetch] MasterOptions = [moCascadeOpenClose, moCascadeApplyUpdates, moCascadeDelete, moCascadeUpdate, moDisableLogOfCascadeDeletes, moDisableLogOfCascadeUpdates] LogicalName = 'Empleados' - IndexDefs = <> Left = 296 - Top = 176 + Top = 168 end object ds_Empleados: TDADataSource + DataSet = tbl_Empleados.Dataset DataTable = tbl_Empleados Left = 296 - Top = 248 + Top = 232 end - object tbl_GruposEmpleado: TDACDSDataTable + object tbl_GruposEmpleado: TDAMemDataTable RemoteUpdatesOptions = [] Fields = < item Name = 'DESCRIPCION' DataType = datString Size = 255 - BlobType = dabtUnknown - DisplayWidth = 0 - Alignment = taLeftJustify - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False + DisplayLabel = 'Descripci'#195#179'n' end> Params = <> - MasterMappingMode = mmDataRequest StreamingOptions = [soDisableEventsWhileStreaming] - SchemaCall.MethodName = 'GetDatasetSchema' - SchemaCall.Params = < - item - Name = 'Result' - ParamType = fResult - DataType = rtBinary - end - item - Name = 'aDatasetName' - ParamType = fIn - DataType = rtString - Value = 'GruposEmpleado' - end> - DataRequestCall.MethodName = 'GetDatasetDataEx' - DataRequestCall.Params = < - item - Name = 'Result' - ParamType = fResult - DataType = rtBinary - end - item - Name = 'DatasetName' - ParamType = fIn - DataType = rtString - Value = 'GruposEmpleado' - end - item - Name = 'Params' - ParamType = fIn - DataType = rtUserDefined - UserClassName = 'TDADatasetParamArray' - end - item - Name = 'UserFilter' - ParamType = fIn - DataType = rtString - Value = '' - end - item - Name = 'IncludeSchema' - ParamType = fIn - DataType = rtBoolean - Value = False - end - item - Name = 'MaxRecords' - ParamType = fIn - DataType = rtInteger - Value = -1 - end> - DataUpdateCall.MethodName = 'UpdateData' - DataUpdateCall.Params = < - item - Name = 'Result' - ParamType = fResult - DataType = rtBinary - end - item - Name = 'Delta' - ParamType = fIn - DataType = rtBinary - end> - ScriptCall.MethodName = 'GetDatasetScripts' - ScriptCall.Params = < - item - Name = 'Result' - ParamType = fResult - DataType = rtString - Value = '' - end - item - Name = 'DatasetNames' - ParamType = fIn - DataType = rtString - Value = 'GruposEmpleado' - end> - ReadOnly = False - RemoteService = RORemoteService - Adapter = DABinAdapter + RemoteDataAdapter = rda_Contactos + LocalDataStreamer = Bin2DataStreamer DetailOptions = [dtCascadeOpenClose, dtCascadeApplyUpdates, dtAutoFetch, dtCascadeDelete, dtCascadeUpdate, dtDisableLogOfCascadeDeletes, dtDisableLogOfCascadeUpdates, dtIncludeInAllInOneFetch] MasterOptions = [moCascadeOpenClose, moCascadeApplyUpdates, moCascadeDelete, moCascadeUpdate, moDisableLogOfCascadeDeletes, moDisableLogOfCascadeUpdates] LogicalName = 'GruposEmpleado' - IndexDefs = <> - Left = 432 - Top = 176 + Left = 448 + Top = 168 end object ds_GruposEmpleado: TDADataSource + DataSet = tbl_GruposEmpleado.Dataset DataTable = tbl_GruposEmpleado - Left = 432 - Top = 248 + Left = 448 + Top = 232 end end diff --git a/Source/Modulos/Contactos/Data/uDataModuleEmpleados.pas b/Source/Modulos/Contactos/Data/uDataModuleEmpleados.pas index 45f6852e..56fc6f00 100644 --- a/Source/Modulos/Contactos/Data/uDataModuleEmpleados.pas +++ b/Source/Modulos/Contactos/Data/uDataModuleEmpleados.pas @@ -7,20 +7,21 @@ uses Dialogs, uDataModuleContactos, DB, uDADataTable, uDAScriptingProvider, uDACDSDataTable, uDABINAdapter, uROServiceComponent, uRORemoteService, uROClient, uROBinMessage, uROWinInetHttpChannel, uBizGruposEmpleado, uROTypes, - uIDataModuleEmpleados, uBizContactos, uDADesigntimeCall, uIDataModuleFichasEmpleadoReport; + uIDataModuleEmpleados, uBizContactos, uDADesigntimeCall, uIDataModuleFichasEmpleadoReport, + uDAInterfaces, uDAMemDataTable, uDADataStreamer, uDABin2DataStreamer, + uDARemoteDataAdapter; type TDataModuleEmpleados = class(TDataModuleContactos, IDataModuleEmpleados, IDataModuleFichasEmpleadoReport) - tbl_Empleados: TDACDSDataTable; + tbl_Empleados: TDAMemDataTable; ds_Empleados: TDADataSource; - tbl_GruposEmpleado: TDACDSDataTable; + tbl_GruposEmpleado: TDAMemDataTable; ds_GruposEmpleado: TDADataSource; protected public function GetItem(const ID : Integer) : IBizEmpleado; function NewItem : IBizEmpleado; function GetItems : IBizEmpleado; - function GetNextID(const DataSetName : String) : Integer; override; function GetGruposEmpleado : IBizGrupoEmpleado; // Report @@ -33,17 +34,17 @@ implementation {$R *.dfm} uses - FactuGES_Intf, cxControls, schContactosClient_Intf, uDAInterfaces, uDataTableUtils; + FactuGES_Intf, cxControls, schContactosClient_Intf, uDataTableUtils; { TDataModuleVendedores } function TDataModuleEmpleados.GetGruposEmpleado: IBizGrupoEmpleado; var - AGrupoEmpleado : TDACDSDataTable; + AGrupoEmpleado : TDAMemDataTable; begin ShowHourglassCursor; try - AGrupoEmpleado := _CloneDataTable(tbl_GruposEmpleado); + AGrupoEmpleado := CloneDataTable(tbl_GruposEmpleado); AGrupoEmpleado.BusinessRulesID := BIZ_CLIENT_GRUPOSEMPLEADO; Result := (AGrupoEmpleado as IBizGrupoEmpleado); finally @@ -56,13 +57,11 @@ begin ShowHourglassCursor; try Result := Self.GetItems; - with Result.DataTable.Where do + with Result.DataTable.DynamicWhere do begin - if NotEmpty then - AddOperator(opAND); - OpenBraket; - AddText(fld_ContactosID + ' = ' + IntToStr(ID)); - CloseBraket; + // (ID = :ID) + Expression := NewBinaryExpression(NewField('', fld_ContactosID), + NewConstant(ID, datInteger), dboEqual); end; finally HideHourglassCursor; @@ -71,17 +70,16 @@ end; function TDataModuleEmpleados.GetItems: IBizEmpleado; var - AContacto : TDACDSDataTable; + AContacto : TDAMemDataTable; begin ShowHourglassCursor; try - AContacto := _CloneDataTable(tbl_Empleados); + AContacto := CloneDataTable(tbl_Empleados); AContacto.BusinessRulesID := BIZ_CLIENT_EMPLEADO; with TBizEmpleado(AContacto.BusinessEventsObj) do begin DatosBancarios := _GetDatosBancarios; - _Categorias := _GetCategorias; end; Result := (AContacto as IBizEmpleado); @@ -90,19 +88,6 @@ begin end; end; -function TDataModuleEmpleados.GetNextID(const DataSetName: String): Integer; -var - aDataSet : String; - aGeneratorName : String; -begin - aDataSet := DataSetName; - - if aDataSet = nme_Empleados then - aDataSet := nme_Contactos; - - Result := inherited GetNextID(aDataSet); -end; - function TDataModuleEmpleados.GetReport(const AFichaID: String): Binary; begin Result := (RORemoteService as IsrvContactos).GenerateFichaEmpleadoReport(AFichaID); diff --git a/Source/Modulos/Contactos/Data/uDataModuleProveedores.dfm b/Source/Modulos/Contactos/Data/uDataModuleProveedores.dfm index 1cae35a2..b5bf9a76 100644 --- a/Source/Modulos/Contactos/Data/uDataModuleProveedores.dfm +++ b/Source/Modulos/Contactos/Data/uDataModuleProveedores.dfm @@ -1,625 +1,269 @@ inherited DataModuleProveedores: TDataModuleProveedores - object tbl_Proveedores: TDACDSDataTable - RemoteUpdatesOptions = [] - Fields = < - item - Name = 'ID' - DataType = datAutoInc - BlobType = dabtUnknown - DisplayWidth = 0 - Alignment = taLeftJustify - DictionaryEntry = 'Contactos_ID' - InPrimaryKey = True - Calculated = False - Lookup = False - LookupCache = False - end - item - Name = 'ID_CATEGORIA' - DataType = datInteger - BlobType = dabtUnknown - DisplayWidth = 0 - DisplayLabel = 'Contactos_ID_CATEGORIA' - Alignment = taLeftJustify - DictionaryEntry = 'Contactos_ID_CATEGORIA' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False - end - item - Name = 'NIF_CIF' - DataType = datString - Size = 15 - BlobType = dabtUnknown - DisplayWidth = 0 - DisplayLabel = 'NIF/CIF' - Alignment = taLeftJustify - DictionaryEntry = 'Contactos_NIF_CIF' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False - end - item - Name = 'NOMBRE' - DataType = datString - Size = 255 - BlobType = dabtUnknown - DisplayWidth = 0 - DisplayLabel = 'Nombre' - Alignment = taLeftJustify - DictionaryEntry = 'Contactos_NOMBRE' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False - end - item - Name = 'CALLE' - DataType = datString - Size = 255 - BlobType = dabtUnknown - DisplayWidth = 0 - DisplayLabel = 'Direcci'#243'n' - Alignment = taLeftJustify - DictionaryEntry = 'Contactos_CALLE' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False - end - item - Name = 'PERSONA_CONTACTO' - DataType = datString - Size = 255 - BlobType = dabtUnknown - DisplayWidth = 0 - DisplayLabel = 'Persona de contacto' - Alignment = taLeftJustify - DictionaryEntry = 'Contactos_PERSONA_CONTACTO' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False - end - item - Name = 'POBLACION' - DataType = datString - Size = 255 - BlobType = dabtUnknown - DisplayWidth = 0 - DisplayLabel = 'Poblaci'#243'n' - Alignment = taLeftJustify - DictionaryEntry = 'Contactos_POBLACION' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False - end - item - Name = 'PROVINCIA' - DataType = datString - Size = 255 - BlobType = dabtUnknown - DisplayWidth = 0 - DisplayLabel = 'Provincia' - Alignment = taLeftJustify - DictionaryEntry = 'Contactos_PROVINCIA' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False - end - item - Name = 'CODIGO_POSTAL' - DataType = datString - Size = 10 - BlobType = dabtUnknown - DisplayWidth = 0 - DisplayLabel = 'C'#243'digo postal' - Alignment = taLeftJustify - DictionaryEntry = 'Contactos_CODIGO_POSTAL' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False - end - item - Name = 'TELEFONO_1' - DataType = datString - Size = 25 - BlobType = dabtUnknown - DisplayWidth = 0 - DisplayLabel = 'Tlf. trabajo' - Alignment = taLeftJustify - DictionaryEntry = 'Contactos_TELEFONO_1' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False - end - item - Name = 'TELEFONO_2' - DataType = datString - Size = 25 - BlobType = dabtUnknown - DisplayWidth = 0 - DisplayLabel = 'Tlf. particular' - Alignment = taLeftJustify - DictionaryEntry = 'Contactos_TELEFONO_2' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False - end - item - Name = 'MOVIL_1' - DataType = datString - Size = 25 - BlobType = dabtUnknown - DisplayWidth = 0 - DisplayLabel = 'M'#243'vil' - Alignment = taLeftJustify - DictionaryEntry = 'Contactos_MOVIL_1' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False - end - item - Name = 'MOVIL_2' - DataType = datString - Size = 25 - BlobType = dabtUnknown - DisplayWidth = 0 - Alignment = taLeftJustify - DictionaryEntry = 'Contactos_MOVIL_2' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False - end - item - Name = 'FAX' - DataType = datString - Size = 25 - BlobType = dabtUnknown - DisplayWidth = 0 - DisplayLabel = 'Fax' - Alignment = taLeftJustify - DictionaryEntry = 'Contactos_FAX' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False - end - item - Name = 'EMAIL_1' - DataType = datString - Size = 255 - BlobType = dabtUnknown - DisplayWidth = 0 - DisplayLabel = 'E-mail trabajo' - Alignment = taLeftJustify - DictionaryEntry = 'Contactos_EMAIL_1' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False - end - item - Name = 'EMAIL_2' - DataType = datString - Size = 255 - BlobType = dabtUnknown - DisplayWidth = 0 - DisplayLabel = 'E-mail particular' - Alignment = taLeftJustify - DictionaryEntry = 'Contactos_EMAIL_2' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False - end - item - Name = 'PAGINA_WEB' - DataType = datString - Size = 255 - BlobType = dabtUnknown - DisplayWidth = 0 - DisplayLabel = 'Web' - Alignment = taLeftJustify - DictionaryEntry = 'Contactos_PAGINA_WEB' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False - end - item - Name = 'NOTAS' - DataType = datMemo - BlobType = dabtMemo - DisplayWidth = 0 - DisplayLabel = 'Observaciones' - Alignment = taLeftJustify - DictionaryEntry = 'Contactos_NOTAS' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False - end - item - Name = 'USUARIO' - DataType = datString - Size = 20 - BlobType = dabtUnknown - DisplayWidth = 0 - DisplayLabel = 'Usuario' - Alignment = taLeftJustify - DictionaryEntry = 'Contactos_USUARIO' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False - end - item - Name = 'ID_EMPRESA' - DataType = datInteger - BlobType = dabtUnknown - DisplayWidth = 0 - Alignment = taLeftJustify - DictionaryEntry = 'Contactos_ID_EMPRESA' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False - end - item - Name = 'REFERENCIA' - DataType = datString - Size = 255 - BlobType = dabtUnknown - DisplayWidth = 0 - DisplayLabel = 'Referencia' - Alignment = taLeftJustify - DictionaryEntry = 'Proveedores_REFERENCIA' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False - end - item - Name = 'ID_TIPO_IVA' - DataType = datInteger - BlobType = dabtUnknown - DisplayWidth = 0 - Alignment = taLeftJustify - DictionaryEntry = 'Proveedores_ID_TIPO_IVA' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False - end - item - Name = 'REGIMEN_IVA' - DataType = datString - Size = 255 - BlobType = dabtUnknown - DisplayWidth = 0 - DisplayLabel = 'R'#233'gimen de IVA' - Alignment = taLeftJustify - DictionaryEntry = 'Proveedores_REGIMEN_IVA' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False - end - item - Name = 'ID_FORMA_PAGO' - DataType = datInteger - BlobType = dabtUnknown - DisplayWidth = 0 - Alignment = taLeftJustify - DictionaryEntry = 'Proveedores_ID_FORMA_PAGO' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False - end - item - Name = 'TIENDA_WEB' - DataType = datInteger - BlobType = dabtUnknown - DisplayWidth = 0 - Alignment = taLeftJustify - DictionaryEntry = 'Proveedores_TIENDA_WEB' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False - end - item - Name = 'DESCUENTO' - DataType = datFloat - BlobType = dabtUnknown - DisplayWidth = 0 - DisplayLabel = 'Descuento (%)' - Alignment = taLeftJustify - DictionaryEntry = 'Proveedores_DESCUENTO' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False - end - item - Name = 'DESCRIPCION_PROVEEDOR' - DataType = datString - Size = 255 - BlobType = dabtUnknown - DisplayWidth = 0 - DisplayLabel = 'Proveedor de...' - Alignment = taLeftJustify - DictionaryEntry = 'Proveedores_DESCRIPCION_PROVEEDOR' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False - end - item - Name = 'CODIGO_ASIGNADO' - DataType = datString - Size = 255 - BlobType = dabtUnknown - DisplayWidth = 0 - DisplayLabel = 'C'#243'digo asignado' - Alignment = taLeftJustify - DictionaryEntry = 'Proveedores_CODIGO_ASIGNADO' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False - end - item - Name = 'HOMOLOGADO' - DataType = datInteger - BlobType = dabtUnknown - DisplayWidth = 0 - DisplayLabel = 'Homologado' - Alignment = taLeftJustify - DictionaryEntry = 'Proveedores_HOMOLOGADO' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False - end - item - Name = 'CERTIFICACION' - DataType = datString - Size = 255 - BlobType = dabtUnknown - DisplayWidth = 0 - DisplayLabel = 'Certificaciones' - Alignment = taLeftJustify - DictionaryEntry = 'Proveedores_CERTIFICACION' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False - end - item - Name = 'GRUPO_PROVEEDOR' - DataType = datString - Size = 255 - BlobType = dabtUnknown - DisplayWidth = 0 - Alignment = taLeftJustify - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False - end> - Params = <> - MasterMappingMode = mmDataRequest - StreamingOptions = [soDisableEventsWhileStreaming] - SchemaCall.MethodName = 'GetDatasetSchema' - SchemaCall.Params = < - item - Name = 'Result' - ParamType = fResult - DataType = rtBinary - end - item - Name = 'aDatasetName' - ParamType = fIn - DataType = rtString - Value = 'Proveedores' - end> - DataRequestCall.MethodName = 'GetDatasetDataEx' - DataRequestCall.Params = < - item - Name = 'Result' - ParamType = fResult - DataType = rtBinary - end - item - Name = 'DatasetName' - ParamType = fIn - DataType = rtString - Value = 'Proveedores' - end - item - Name = 'Params' - ParamType = fIn - DataType = rtUserDefined - UserClassName = 'TDADatasetParamArray' - end - item - Name = 'UserFilter' - ParamType = fIn - DataType = rtString - Value = '' - end - item - Name = 'IncludeSchema' - ParamType = fIn - DataType = rtBoolean - Value = False - end - item - Name = 'MaxRecords' - ParamType = fIn - DataType = rtInteger - Value = -1 - end> - DataUpdateCall.MethodName = 'UpdateData' - DataUpdateCall.Params = < - item - Name = 'Result' - ParamType = fResult - DataType = rtBinary - end - item - Name = 'Delta' - ParamType = fIn - DataType = rtBinary - end> - ScriptCall.MethodName = 'GetDatasetScripts' - ScriptCall.Params = < - item - Name = 'Result' - ParamType = fResult - DataType = rtString - Value = '' - end - item - Name = 'DatasetNames' - ParamType = fIn - DataType = rtString - Value = 'Proveedores' - end> - ReadOnly = False - RemoteService = RORemoteService - Adapter = DABinAdapter - DetailOptions = [dtCascadeOpenClose, dtCascadeApplyUpdates, dtAutoFetch, dtCascadeDelete, dtCascadeUpdate, dtDisableLogOfCascadeDeletes, dtDisableLogOfCascadeUpdates, dtIncludeInAllInOneFetch] - MasterOptions = [moCascadeOpenClose, moCascadeApplyUpdates, moCascadeDelete, moCascadeUpdate, moDisableLogOfCascadeDeletes, moDisableLogOfCascadeUpdates] - LogicalName = 'Proveedores' - IndexDefs = <> - Left = 296 - Top = 184 + Height = 442 + Width = 763 + inherited ds_Contactos: TDADataSource + DataSet = tbl_Contactos.Dataset end - object ds_Proveedores: TDADataSource - DataTable = tbl_Proveedores - Left = 296 - Top = 256 + inherited ds_DireccionesContacto: TDADataSource + DataSet = tbl_DireccionesContacto.Dataset end - object tbl_GruposProveedor: TDACDSDataTable + inherited ds_DatosBancarios: TDADataSource + DataSet = tbl_DatosBancarios.Dataset + end + object tbl_GruposProveedor: TDAMemDataTable RemoteUpdatesOptions = [] Fields = < item Name = 'DESCRIPCION' DataType = datString Size = 255 - BlobType = dabtUnknown - DisplayWidth = 0 - Alignment = taLeftJustify - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False + DisplayLabel = 'Descripci'#195#179'n' end> Params = <> - MasterMappingMode = mmDataRequest StreamingOptions = [soDisableEventsWhileStreaming] - SchemaCall.MethodName = 'GetDatasetSchema' - SchemaCall.Params = < - item - Name = 'Result' - ParamType = fResult - DataType = rtBinary - end - item - Name = 'aDatasetName' - ParamType = fIn - DataType = rtString - Value = 'GruposProveedor' - end> - DataRequestCall.MethodName = 'GetDatasetDataEx' - DataRequestCall.Params = < - item - Name = 'Result' - ParamType = fResult - DataType = rtBinary - end - item - Name = 'DatasetName' - ParamType = fIn - DataType = rtString - Value = 'GruposProveedor' - end - item - Name = 'Params' - ParamType = fIn - DataType = rtUserDefined - UserClassName = 'TDADatasetParamArray' - end - item - Name = 'UserFilter' - ParamType = fIn - DataType = rtString - Value = '' - end - item - Name = 'IncludeSchema' - ParamType = fIn - DataType = rtBoolean - Value = False - end - item - Name = 'MaxRecords' - ParamType = fIn - DataType = rtInteger - Value = -1 - end> - DataUpdateCall.MethodName = 'UpdateData' - DataUpdateCall.Params = < - item - Name = 'Result' - ParamType = fResult - DataType = rtBinary - end - item - Name = 'Delta' - ParamType = fIn - DataType = rtBinary - end> - ScriptCall.MethodName = 'GetDatasetScripts' - ScriptCall.Params = < - item - Name = 'Result' - ParamType = fResult - DataType = rtString - Value = '' - end - item - Name = 'DatasetNames' - ParamType = fIn - DataType = rtString - Value = 'GruposProveedor' - end> - ReadOnly = False - RemoteService = RORemoteService - Adapter = DABinAdapter + RemoteDataAdapter = rda_Contactos + LocalDataStreamer = Bin2DataStreamer DetailOptions = [dtCascadeOpenClose, dtCascadeApplyUpdates, dtAutoFetch, dtCascadeDelete, dtCascadeUpdate, dtDisableLogOfCascadeDeletes, dtDisableLogOfCascadeUpdates, dtIncludeInAllInOneFetch] MasterOptions = [moCascadeOpenClose, moCascadeApplyUpdates, moCascadeDelete, moCascadeUpdate, moDisableLogOfCascadeDeletes, moDisableLogOfCascadeUpdates] LogicalName = 'GruposProveedor' - IndexDefs = <> - Left = 424 - Top = 184 + Left = 448 + Top = 168 end object ds_GruposProveedor: TDADataSource + DataSet = tbl_GruposProveedor.Dataset DataTable = tbl_GruposProveedor - Left = 432 - Top = 264 + Left = 448 + Top = 232 + end + object tbl_Proveedores: TDAMemDataTable + RemoteUpdatesOptions = [] + Fields = < + item + Name = 'ID' + DataType = datAutoInc + GeneratorName = 'GEN_CONTACTOS_ID' + DictionaryEntry = 'Contactos_ID' + InPrimaryKey = True + end + item + Name = 'ID_CATEGORIA' + DataType = datInteger + DisplayLabel = 'Contactos_ID_CATEGORIA' + DictionaryEntry = 'Contactos_ID_CATEGORIA' + end + item + Name = 'NIF_CIF' + DataType = datString + Size = 15 + DisplayLabel = 'NIF/CIF' + DictionaryEntry = 'Contactos_NIF_CIF' + end + item + Name = 'NOMBRE' + DataType = datString + Size = 255 + Required = True + DisplayLabel = 'Nombre' + DictionaryEntry = 'Contactos_NOMBRE' + end + item + Name = 'PERSONA_CONTACTO' + DataType = datString + Size = 255 + DisplayLabel = 'Persona de contacto' + DictionaryEntry = 'Contactos_PERSONA_CONTACTO' + end + item + Name = 'CALLE' + DataType = datString + Size = 255 + DisplayLabel = 'Direcci'#195#179'n' + DictionaryEntry = 'Contactos_CALLE' + end + item + Name = 'POBLACION' + DataType = datString + Size = 255 + DisplayLabel = 'Poblaci'#195#179'n' + DictionaryEntry = 'Contactos_POBLACION' + end + item + Name = 'PROVINCIA' + DataType = datString + Size = 255 + DisplayLabel = 'Provincia' + DictionaryEntry = 'Contactos_PROVINCIA' + end + item + Name = 'CODIGO_POSTAL' + DataType = datString + Size = 10 + DisplayLabel = 'C'#195#179'digo postal' + DictionaryEntry = 'Contactos_CODIGO_POSTAL' + end + item + Name = 'TELEFONO_1' + DataType = datString + Size = 25 + DisplayLabel = 'Tlf. trabajo' + DictionaryEntry = 'Contactos_TELEFONO_1' + end + item + Name = 'TELEFONO_2' + DataType = datString + Size = 25 + DisplayLabel = 'Tlf. particular' + DictionaryEntry = 'Contactos_TELEFONO_2' + end + item + Name = 'MOVIL_1' + DataType = datString + Size = 25 + DisplayLabel = 'M'#195#179'vil' + DictionaryEntry = 'Contactos_MOVIL_1' + end + item + Name = 'MOVIL_2' + DataType = datString + Size = 25 + DictionaryEntry = 'Contactos_MOVIL_2' + end + item + Name = 'FAX' + DataType = datString + Size = 25 + DisplayLabel = 'Fax' + DictionaryEntry = 'Contactos_FAX' + end + item + Name = 'EMAIL_1' + DataType = datString + Size = 255 + DisplayLabel = 'E-mail trabajo' + DictionaryEntry = 'Contactos_EMAIL_1' + end + item + Name = 'EMAIL_2' + DataType = datString + Size = 255 + DisplayLabel = 'E-mail particular' + DictionaryEntry = 'Contactos_EMAIL_2' + end + item + Name = 'PAGINA_WEB' + DataType = datString + Size = 255 + DisplayLabel = 'Web' + DictionaryEntry = 'Contactos_PAGINA_WEB' + end + item + Name = 'NOTAS' + DataType = datMemo + BlobType = dabtMemo + DisplayLabel = 'Observaciones' + DictionaryEntry = 'Contactos_NOTAS' + end + item + Name = 'FECHA_ALTA' + DataType = datDateTime + end + item + Name = 'FECHA_MODIFICACION' + DataType = datDateTime + end + item + Name = 'USUARIO' + DataType = datString + Size = 20 + DisplayLabel = 'Usuario' + DictionaryEntry = 'Contactos_USUARIO' + end + item + Name = 'ID_EMPRESA' + DataType = datInteger + DictionaryEntry = 'Contactos_ID_EMPRESA' + end + item + Name = 'REFERENCIA' + DataType = datString + Size = 255 + DisplayLabel = 'Referencia' + DictionaryEntry = 'Proveedores_REFERENCIA' + end + item + Name = 'DESCUENTO' + DataType = datFloat + DisplayLabel = 'Descuento (%)' + DictionaryEntry = 'Proveedores_DESCUENTO' + end + item + Name = 'DESCRIPCION_PROVEEDOR' + DataType = datString + Size = 255 + DisplayLabel = 'Proveedor de...' + DictionaryEntry = 'Proveedores_DESCRIPCION_PROVEEDOR' + end + item + Name = 'CODIGO_ASIGNADO' + DataType = datString + Size = 255 + DisplayLabel = 'C'#195#179'digo asignado' + DictionaryEntry = 'Proveedores_CODIGO_ASIGNADO' + end + item + Name = 'GRUPO_PROVEEDOR' + DataType = datString + Size = 255 + end + item + Name = 'REGIMEN_IVA' + DataType = datString + Size = 255 + DisplayLabel = 'R'#195#169'gimen de IVA' + DictionaryEntry = 'Proveedores_REGIMEN_IVA' + end + item + Name = 'ID_TIPO_IVA' + DataType = datInteger + DictionaryEntry = 'Proveedores_ID_TIPO_IVA' + end + item + Name = 'ID_FORMA_PAGO' + DataType = datInteger + DictionaryEntry = 'Proveedores_ID_FORMA_PAGO' + end + item + Name = 'TIENDA_WEB' + DataType = datSmallInt + DictionaryEntry = 'Proveedores_TIENDA_WEB' + end + item + Name = 'HOMOLOGADO' + DataType = datSmallInt + DisplayLabel = 'Homologado' + DictionaryEntry = 'Proveedores_HOMOLOGADO' + end + item + Name = 'CERTIFICACION' + DataType = datString + Size = 255 + DisplayLabel = 'Certificaciones' + DictionaryEntry = 'Proveedores_CERTIFICACION' + end> + Params = <> + StreamingOptions = [soDisableEventsWhileStreaming] + RemoteDataAdapter = rda_Contactos + LocalDataStreamer = Bin2DataStreamer + DetailOptions = [dtCascadeOpenClose, dtCascadeApplyUpdates, dtAutoFetch, dtCascadeDelete, dtCascadeUpdate, dtDisableLogOfCascadeDeletes, dtDisableLogOfCascadeUpdates, dtIncludeInAllInOneFetch] + MasterOptions = [moCascadeOpenClose, moCascadeApplyUpdates, moCascadeDelete, moCascadeUpdate, moDisableLogOfCascadeDeletes, moDisableLogOfCascadeUpdates] + LogicalName = 'Proveedores' + Left = 296 + Top = 168 + end + object ds_Proveedores: TDADataSource + DataSet = tbl_Proveedores.Dataset + DataTable = tbl_Proveedores + Left = 296 + Top = 232 end end diff --git a/Source/Modulos/Contactos/Data/uDataModuleProveedores.pas b/Source/Modulos/Contactos/Data/uDataModuleProveedores.pas index 0240f8b0..17ef2b78 100644 --- a/Source/Modulos/Contactos/Data/uDataModuleProveedores.pas +++ b/Source/Modulos/Contactos/Data/uDataModuleProveedores.pas @@ -5,23 +5,24 @@ interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, uDataModuleContactos, DB, uDADataTable, uDAScriptingProvider, - uDACDSDataTable, uDABINAdapter, uROServiceComponent, uRORemoteService, + uDACDSDataTable, uDABINAdapter, uRORemoteService, uROClient, uROBinMessage, uROWinInetHttpChannel, uBizGruposProveedor, - uIDataModuleProveedores, uBizContactos, uDADesigntimeCall; + uIDataModuleProveedores, uBizContactos, uDADesigntimeCall, + uDARemoteDataAdapter, uDADataStreamer, uRODynamicRequest, uDAInterfaces, + uDAMemDataTable, uDABin2DataStreamer; type TDataModuleProveedores = class(TDataModuleContactos, IDataModuleProveedores) - tbl_Proveedores: TDACDSDataTable; - ds_Proveedores: TDADataSource; - tbl_GruposProveedor: TDACDSDataTable; + tbl_GruposProveedor: TDAMemDataTable; ds_GruposProveedor: TDADataSource; + tbl_Proveedores: TDAMemDataTable; + ds_Proveedores: TDADataSource; public function GetItem(const ID : Integer) : IBizProveedor; function NewItem : IBizProveedor; function GetItems : IBizProveedor; function GetItemsTiendaWeb : IBizProveedor; - function GetNextID(const DataSetName : String) : Integer; override; function GetGruposProveedor : IBizGrupoProveedor; end; @@ -30,17 +31,17 @@ implementation {$R *.dfm} uses - cxControls, schContactosClient_Intf, uDAInterfaces, uDataTableUtils; + cxControls, schContactosClient_Intf, uDataTableUtils; { TDataModuleProveedores } function TDataModuleProveedores.GetGruposProveedor: IBizGrupoProveedor; var - AGrupoProveedor : TDACDSDataTable; + AGrupoProveedor : TDAMemDataTable; begin ShowHourglassCursor; try - AGrupoProveedor := _CloneDataTable(tbl_GruposProveedor); + AGrupoProveedor := CloneDataTable(tbl_GruposProveedor); AGrupoProveedor.BusinessRulesID := BIZ_CLIENT_GRUPOSPROVEEDOR; Result := (AGrupoProveedor as IBizGrupoProveedor); finally @@ -53,13 +54,12 @@ begin ShowHourglassCursor; try Result := Self.GetItems; - with Result.DataTable.Where do + + // (ID = :ID) + with Result.DataTable.DynamicWhere do begin - if NotEmpty then - AddOperator(opAND); - OpenBraket; - AddText(fld_ContactosID + ' = ' + IntToStr(ID)); - CloseBraket; + Expression := NewBinaryExpression(NewField('', fld_ContactosID), + NewConstant(ID, datInteger), dboEqual); end; finally HideHourglassCursor; @@ -68,18 +68,17 @@ end; function TDataModuleProveedores.GetItems: IBizProveedor; var - AContacto : TDACDSDataTable; + AContacto : TDAMemDataTable; begin ShowHourglassCursor; try - AContacto := _CloneDataTable(tbl_Proveedores); + AContacto := CloneDataTable(tbl_Proveedores); AContacto.BusinessRulesID := BIZ_CLIENT_PROVEEDOR; with TBizProveedor(AContacto.BusinessEventsObj) do begin DatosBancarios := _GetDatosBancarios; Direcciones := _GetDirecciones; - _Categorias := _GetCategorias; end; Result := (AContacto as IBizProveedor); @@ -93,30 +92,18 @@ begin ShowHourglassCursor; try Result := Self.GetItems; - with Result.DataTable.Where do + with Result.DataTable.DynamicWhere do begin - if NotEmpty then - AddOperator(opAND); - OpenBraket; - AddText(fld_ProveedoresTIENDA_WEB + ' = 1'); - CloseBraket; + Clear; + // (TIENDA_WEB = 1) + Expression := NewBinaryExpression(NewField('', fld_ProveedoresTIENDA_WEB), + NewConstant(1, datInteger), dboEqual); end; finally HideHourglassCursor; end; end; -function TDataModuleProveedores.GetNextID(const DataSetName: String): Integer; -var - aDataSet : String; -begin - aDataSet := DataSetName; - if aDataSet = nme_Proveedores then - aDataSet := nme_Contactos; - - Result := inherited GetNextID(aDataSet); -end; - function TDataModuleProveedores.NewItem: IBizProveedor; begin Result := GetItem(ID_NULO) diff --git a/Source/Modulos/Contactos/Model/Contactos_model.dpk b/Source/Modulos/Contactos/Model/Contactos_model.dpk index 6a2206f6..47a7a110 100644 --- a/Source/Modulos/Contactos/Model/Contactos_model.dpk +++ b/Source/Modulos/Contactos/Model/Contactos_model.dpk @@ -22,32 +22,18 @@ package Contactos_model; {$WRITEABLECONST OFF} {$MINENUMSIZE 1} {$IMAGEBASE $400000} -{$IMPLICITBUILD OFF} +{$IMPLICITBUILD ON} requires rtl, - dbrtl, vcl, - DataAbstract_D10, - dsnap, - vcldb, - adortl, - vcljpg, - cxLibraryD10, - dxThemeD10, - cxEditorsD10, - cxDataD10, - cxExtEditorsD10, - cxGridD10, - cxPageControlD10, Base, - Usuarios, - Empresas_controller; + GUIBase, + ApplicationBase; contains uBizContactosDatosBancarios in 'uBizContactosDatosBancarios.pas', uBizContactos in 'uBizContactos.pas', - uBizCategoriasContacto in 'uBizCategoriasContacto.pas', uIDataModuleContactos in 'Data\uIDataModuleContactos.pas', uIDataModuleClientes in 'Data\uIDataModuleClientes.pas', uIDataModuleProveedores in 'Data\uIDataModuleProveedores.pas', @@ -56,10 +42,11 @@ contains uBizClientesDescuentos in 'uBizClientesDescuentos.pas', uRegimenIVAUtils in '..\Utiles\uRegimenIVAUtils.pas', uBizGruposCliente in 'uBizGruposCliente.pas', - schContactosClient_Intf in 'schContactosClient_Intf.pas', uBizGruposEmpleado in 'uBizGruposEmpleado.pas', uBizGruposProveedor in 'uBizGruposProveedor.pas', uIDataModuleFichasEmpleadoReport in 'Data\uIDataModuleFichasEmpleadoReport.pas', - uIDataModuleEtiquetasContactosReport in 'Data\uIDataModuleEtiquetasContactosReport.pas'; + uIDataModuleEtiquetasContactosReport in 'Data\uIDataModuleEtiquetasContactosReport.pas', + schContactosClient_Intf in 'schContactosClient_Intf.pas', + schContactosServer_Intf in 'schContactosServer_Intf.pas'; end. diff --git a/Source/Modulos/Contactos/Model/Contactos_model.dpk.bak b/Source/Modulos/Contactos/Model/Contactos_model.dpk.bak new file mode 100644 index 00000000..39745ddd --- /dev/null +++ b/Source/Modulos/Contactos/Model/Contactos_model.dpk.bak @@ -0,0 +1,52 @@ +package Contactos_model; + +{$R *.res} +{$ALIGN 8} +{$ASSERTIONS ON} +{$BOOLEVAL OFF} +{$DEBUGINFO ON} +{$EXTENDEDSYNTAX ON} +{$IMPORTEDDATA ON} +{$IOCHECKS ON} +{$LOCALSYMBOLS ON} +{$LONGSTRINGS ON} +{$OPENSTRINGS ON} +{$OPTIMIZATION ON} +{$OVERFLOWCHECKS OFF} +{$RANGECHECKS OFF} +{$REFERENCEINFO ON} +{$SAFEDIVIDE OFF} +{$STACKFRAMES OFF} +{$TYPEDADDRESS OFF} +{$VARSTRINGCHECKS ON} +{$WRITEABLECONST OFF} +{$MINENUMSIZE 1} +{$IMAGEBASE $400000} +{$IMPLICITBUILD OFF} + +requires + rtl, + vcl, + Base, + Usuarios, + Empresas_controller; + +contains + uBizContactosDatosBancarios in 'uBizContactosDatosBancarios.pas', + uBizContactos in 'uBizContactos.pas', + uBizCategoriasContacto in 'uBizCategoriasContacto.pas', + uIDataModuleContactos in 'Data\uIDataModuleContactos.pas', + uIDataModuleClientes in 'Data\uIDataModuleClientes.pas', + uIDataModuleProveedores in 'Data\uIDataModuleProveedores.pas', + uIDataModuleEmpleados in 'Data\uIDataModuleEmpleados.pas', + uBizDireccionesContacto in 'uBizDireccionesContacto.pas', + uBizClientesDescuentos in 'uBizClientesDescuentos.pas', + uRegimenIVAUtils in '..\Utiles\uRegimenIVAUtils.pas', + uBizGruposCliente in 'uBizGruposCliente.pas', + schContactosClient_Intf in 'schContactosClient_Intf.pas', + uBizGruposEmpleado in 'uBizGruposEmpleado.pas', + uBizGruposProveedor in 'uBizGruposProveedor.pas', + uIDataModuleFichasEmpleadoReport in 'Data\uIDataModuleFichasEmpleadoReport.pas', + uIDataModuleEtiquetasContactosReport in 'Data\uIDataModuleEtiquetasContactosReport.pas'; + +end. diff --git a/Source/Modulos/Contactos/Model/Contactos_model.dproj b/Source/Modulos/Contactos/Model/Contactos_model.dproj new file mode 100644 index 00000000..8b76ab0f --- /dev/null +++ b/Source/Modulos/Contactos/Model/Contactos_model.dproj @@ -0,0 +1,557 @@ + + + + {a7225a8d-f40d-4878-9a27-c5de0e7cb638} + Contactos_model.dpk + Debug + AnyCPU + DCC32 + ..\..\..\..\Output\Debug\Cliente\Contactos_model.bpl + + + 7.0 + False + False + 0 + 3 + .\ + .\ + .\ + ..\..\..\..\Output\Debug\Cliente + ..\..\Lib + ..\..\..\Lib;..\..\Lib + ..\..\..\Lib;..\..\Lib + ..\..\..\Lib;..\..\Lib + ..\..\..\Lib;..\..\Lib + RELEASE + + + 7.0 + 3 + .\ + .\ + .\ + ..\..\..\..\Output\Debug\Cliente + ..\..\Lib + ..\..\..\Lib;..\..\Lib + ..\..\..\Lib;..\..\Lib + ..\..\..\Lib;..\..\Lib + ..\..\..\Lib;..\..\Lib + + + Delphi.Personality + Package + +FalseTrueFalseTrueFalseFalseTrueFalse1000FalseFalseFalseFalseFalse308212521.0.0.01.0.0.0Contactos_model.dpk + + + + + MainSource + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Source/Modulos/Contactos/Model/Contactos_model.drc b/Source/Modulos/Contactos/Model/Contactos_model.drc index 7642ac97..1ed95bba 100644 --- a/Source/Modulos/Contactos/Model/Contactos_model.drc +++ b/Source/Modulos/Contactos/Model/Contactos_model.drc @@ -1,5 +1,5 @@ -/* VER180 - Generated by the Borland Delphi Pascal Compiler +/* VER185 + Generated by the CodeGear Delphi Pascal Compiler because -GD or --drc was supplied to the compiler. This file contains compiler-generated resources that @@ -12,3 +12,5 @@ STRINGTABLE BEGIN END +/* C:\Codigo Tecsitel\Source\Modulos\Contactos\Model\Contactos_model.res */ +/* C:\Codigo Tecsitel\Source\Modulos\Contactos\Model\Contactos_model.drf */ diff --git a/Source/Modulos/Contactos/Model/Contactos_model.identcache b/Source/Modulos/Contactos/Model/Contactos_model.identcache new file mode 100644 index 00000000..10384cae Binary files /dev/null and b/Source/Modulos/Contactos/Model/Contactos_model.identcache differ diff --git a/Source/Modulos/Contactos/Model/Contactos_model.rc b/Source/Modulos/Contactos/Model/Contactos_model.rc index e69de29b..153736af 100644 --- a/Source/Modulos/Contactos/Model/Contactos_model.rc +++ b/Source/Modulos/Contactos/Model/Contactos_model.rc @@ -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 diff --git a/Source/Modulos/Contactos/Model/Contactos_model.res b/Source/Modulos/Contactos/Model/Contactos_model.res index 36f26e23..1641339f 100644 Binary files a/Source/Modulos/Contactos/Model/Contactos_model.res and b/Source/Modulos/Contactos/Model/Contactos_model.res differ diff --git a/Source/Modulos/Contactos/Model/Data/uIDataModuleContactos.pas b/Source/Modulos/Contactos/Model/Data/uIDataModuleContactos.pas index 66a21778..65c253b2 100644 --- a/Source/Modulos/Contactos/Model/Data/uIDataModuleContactos.pas +++ b/Source/Modulos/Contactos/Model/Data/uIDataModuleContactos.pas @@ -4,14 +4,13 @@ interface uses SysUtils, Classes, - uBizContactos, uBizContactosDatosBancarios, uBizCategoriasContacto; + uBizContactos, uBizContactosDatosBancarios; type IDataModuleContactos = interface ['{835FFC4D-1AE9-4020-A042-C9D84EC25A2C}'] function _GetItems (IDCategoria : Integer): IBizContacto; function _GetDatosBancarios : IBizContactosDatosBancarios; - function GetNextID(const DataSetName : String) : Integer; end; implementation diff --git a/Source/Modulos/Contactos/Model/schContactosClient_Intf.pas b/Source/Modulos/Contactos/Model/schContactosClient_Intf.pas index ed5fc7a4..f20323dc 100644 --- a/Source/Modulos/Contactos/Model/schContactosClient_Intf.pas +++ b/Source/Modulos/Contactos/Model/schContactosClient_Intf.pas @@ -3,29 +3,28 @@ unit schContactosClient_Intf; interface uses - Classes, DB, SysUtils, uROClasses, uDADataTable; + Classes, DB, SysUtils, uROClasses, uDADataTable, FmtBCD, uROXMLIntf; const { Data table rules ids Feel free to change them to something more human readable but make sure they are unique in the context of your application } - RID_Contactos = '{4702B17F-2C8C-4EDB-951F-501A4B940F9D}'; - RID_GruposCliente = '{12028CAB-36D8-48CA-9154-325B58403561}'; - RID_DatosBancarios = '{E2BFD8E8-37C6-4E91-A66E-5021A52A0229}'; - RID_ContactosCategorias = '{A0AE66D8-6E9D-47C4-BC56-3584B21BE55A}'; - RID_Clientes = '{4A4AA93F-8EE6-4967-8046-E19791A0EEC1}'; - RID_Proveedores = '{DC04F4C0-A1A4-41A3-9E00-C8DB73300D35}'; - RID_Empleados = '{19D88701-7312-4C3B-87FB-79C5060AB9EC}'; - RID_DireccionesContacto = '{9E3FAF78-7E14-43F3-875F-87BF6EA34C0B}'; - RID_ClientesDescuentos = '{00A7347D-BC94-43F1-BE47-EB33FECA3941}'; - RID_GruposProveedor = '{74F8D1EC-C607-48A3-92CE-14266EB1D056}'; - RID_GruposEmpleado = '{C8376B2F-DC19-4DB9-9992-3A744251ED6D}'; + RID_Contactos = '{0535A6E2-6AD1-4247-9A32-BC3C1658EC8C}'; + RID_GruposCliente = '{0F129451-0E5F-469A-B296-EE11BD5C33F0}'; + RID_DatosBancarios = '{FFFA1683-A8AC-4087-8158-FB2ADE3241A4}'; + RID_Clientes = '{C0877263-6E9F-45A1-A89D-284662B5F0D5}'; + RID_Proveedores = '{EBFE10F1-1C8A-4F44-8512-FAF16349C724}'; + RID_Empleados = '{436FA492-BFC7-4E36-A8FD-0FAB8603EA7C}'; + RID_DireccionesContacto = '{55633C2C-41DA-4AAF-8A20-6F8E511BA93F}'; + RID_ClientesDescuentos = '{836B4D02-8030-460F-A933-85A05194566D}'; + RID_GruposProveedor = '{F9E85611-2E9A-4918-8EB0-3011DABDA189}'; + RID_GruposEmpleado = '{616CAF20-6FBF-465D-BA8F-CF10C1F2E167}'; + RID_Contactos_Refresh = '{A87206B2-F4CF-4C8D-92A1-3B5AC6A4F941}'; { Data table names } nme_Contactos = 'Contactos'; nme_GruposCliente = 'GruposCliente'; nme_DatosBancarios = 'DatosBancarios'; - nme_ContactosCategorias = 'ContactosCategorias'; nme_Clientes = 'Clientes'; nme_Proveedores = 'Proveedores'; nme_Empleados = 'Empleados'; @@ -33,6 +32,7 @@ const nme_ClientesDescuentos = 'ClientesDescuentos'; nme_GruposProveedor = 'GruposProveedor'; nme_GruposEmpleado = 'GruposEmpleado'; + nme_Contactos_Refresh = 'Contactos_Refresh'; { Contactos fields } fld_ContactosID = 'ID'; @@ -53,6 +53,8 @@ const fld_ContactosEMAIL_2 = 'EMAIL_2'; fld_ContactosPAGINA_WEB = 'PAGINA_WEB'; fld_ContactosNOTAS = 'NOTAS'; + fld_ContactosFECHA_ALTA = 'FECHA_ALTA'; + fld_ContactosFECHA_MODIFICACION = 'FECHA_MODIFICACION'; fld_ContactosUSUARIO = 'USUARIO'; fld_ContactosID_EMPRESA = 'ID_EMPRESA'; fld_ContactosREFERENCIA = 'REFERENCIA'; @@ -76,9 +78,11 @@ const idx_ContactosEMAIL_2 = 15; idx_ContactosPAGINA_WEB = 16; idx_ContactosNOTAS = 17; - idx_ContactosUSUARIO = 18; - idx_ContactosID_EMPRESA = 19; - idx_ContactosREFERENCIA = 20; + idx_ContactosFECHA_ALTA = 18; + idx_ContactosFECHA_MODIFICACION = 19; + idx_ContactosUSUARIO = 20; + idx_ContactosID_EMPRESA = 21; + idx_ContactosREFERENCIA = 22; { GruposCliente fields } fld_GruposClienteDESCRIPCION = 'DESCRIPCION'; @@ -94,6 +98,8 @@ const fld_DatosBancariosSUCURSAL = 'SUCURSAL'; fld_DatosBancariosDC = 'DC'; fld_DatosBancariosCUENTA = 'CUENTA'; + fld_DatosBancariosFECHA_ALTA = 'FECHA_ALTA'; + fld_DatosBancariosFECHA_MODIFICACION = 'FECHA_MODIFICACION'; { DatosBancarios field indexes } idx_DatosBancariosID = 0; @@ -103,22 +109,16 @@ const idx_DatosBancariosSUCURSAL = 4; idx_DatosBancariosDC = 5; idx_DatosBancariosCUENTA = 6; - - { ContactosCategorias fields } - fld_ContactosCategoriasID_CONTACTO = 'ID_CONTACTO'; - fld_ContactosCategoriasID_CATEGORIA = 'ID_CATEGORIA'; - - { ContactosCategorias field indexes } - idx_ContactosCategoriasID_CONTACTO = 0; - idx_ContactosCategoriasID_CATEGORIA = 1; + idx_DatosBancariosFECHA_ALTA = 7; + idx_DatosBancariosFECHA_MODIFICACION = 8; { Clientes fields } fld_ClientesID = 'ID'; fld_ClientesID_CATEGORIA = 'ID_CATEGORIA'; fld_ClientesNIF_CIF = 'NIF_CIF'; fld_ClientesNOMBRE = 'NOMBRE'; - fld_ClientesCALLE = 'CALLE'; fld_ClientesPERSONA_CONTACTO = 'PERSONA_CONTACTO'; + fld_ClientesCALLE = 'CALLE'; fld_ClientesPOBLACION = 'POBLACION'; fld_ClientesPROVINCIA = 'PROVINCIA'; fld_ClientesCODIGO_POSTAL = 'CODIGO_POSTAL'; @@ -131,27 +131,29 @@ const fld_ClientesEMAIL_2 = 'EMAIL_2'; fld_ClientesPAGINA_WEB = 'PAGINA_WEB'; fld_ClientesNOTAS = 'NOTAS'; + fld_ClientesFECHA_ALTA = 'FECHA_ALTA'; + fld_ClientesFECHA_MODIFICACION = 'FECHA_MODIFICACION'; fld_ClientesUSUARIO = 'USUARIO'; fld_ClientesID_EMPRESA = 'ID_EMPRESA'; fld_ClientesREFERENCIA = 'REFERENCIA'; - fld_ClientesID_TIPO_IVA = 'ID_TIPO_IVA'; - fld_ClientesREGIMEN_IVA = 'REGIMEN_IVA'; - fld_ClientesID_FORMA_PAGO = 'ID_FORMA_PAGO'; - fld_ClientesTIENDA_WEB = 'TIENDA_WEB'; - fld_ClientesRECARGO_EQUIVALENCIA = 'RECARGO_EQUIVALENCIA'; fld_ClientesGRUPO_CLIENTE = 'GRUPO_CLIENTE'; fld_ClientesNOMBRE_COMERCIAL = 'NOMBRE_COMERCIAL'; fld_ClientesVENCIMIENTO_FACTURAS = 'VENCIMIENTO_FACTURAS'; fld_ClientesBLOQUEADO = 'BLOQUEADO'; + fld_ClientesREGIMEN_IVA = 'REGIMEN_IVA'; fld_ClientesMOTIVO_BLOQUEO = 'MOTIVO_BLOQUEO'; + fld_ClientesRECARGO_EQUIVALENCIA = 'RECARGO_EQUIVALENCIA'; + fld_ClientesID_TIPO_IVA = 'ID_TIPO_IVA'; + fld_ClientesID_FORMA_PAGO = 'ID_FORMA_PAGO'; + fld_ClientesTIENDA_WEB = 'TIENDA_WEB'; { Clientes field indexes } idx_ClientesID = 0; idx_ClientesID_CATEGORIA = 1; idx_ClientesNIF_CIF = 2; idx_ClientesNOMBRE = 3; - idx_ClientesCALLE = 4; - idx_ClientesPERSONA_CONTACTO = 5; + idx_ClientesPERSONA_CONTACTO = 4; + idx_ClientesCALLE = 5; idx_ClientesPOBLACION = 6; idx_ClientesPROVINCIA = 7; idx_ClientesCODIGO_POSTAL = 8; @@ -164,27 +166,29 @@ const idx_ClientesEMAIL_2 = 15; idx_ClientesPAGINA_WEB = 16; idx_ClientesNOTAS = 17; - idx_ClientesUSUARIO = 18; - idx_ClientesID_EMPRESA = 19; - idx_ClientesREFERENCIA = 20; - idx_ClientesID_TIPO_IVA = 21; - idx_ClientesREGIMEN_IVA = 22; - idx_ClientesID_FORMA_PAGO = 23; - idx_ClientesTIENDA_WEB = 24; - idx_ClientesRECARGO_EQUIVALENCIA = 25; - idx_ClientesGRUPO_CLIENTE = 26; - idx_ClientesNOMBRE_COMERCIAL = 27; - idx_ClientesVENCIMIENTO_FACTURAS = 28; - idx_ClientesBLOQUEADO = 29; - idx_ClientesMOTIVO_BLOQUEO = 30; + idx_ClientesFECHA_ALTA = 18; + idx_ClientesFECHA_MODIFICACION = 19; + idx_ClientesUSUARIO = 20; + idx_ClientesID_EMPRESA = 21; + idx_ClientesREFERENCIA = 22; + idx_ClientesGRUPO_CLIENTE = 23; + idx_ClientesNOMBRE_COMERCIAL = 24; + idx_ClientesVENCIMIENTO_FACTURAS = 25; + idx_ClientesBLOQUEADO = 26; + idx_ClientesREGIMEN_IVA = 27; + idx_ClientesMOTIVO_BLOQUEO = 28; + idx_ClientesRECARGO_EQUIVALENCIA = 29; + idx_ClientesID_TIPO_IVA = 30; + idx_ClientesID_FORMA_PAGO = 31; + idx_ClientesTIENDA_WEB = 32; { Proveedores fields } fld_ProveedoresID = 'ID'; fld_ProveedoresID_CATEGORIA = 'ID_CATEGORIA'; fld_ProveedoresNIF_CIF = 'NIF_CIF'; fld_ProveedoresNOMBRE = 'NOMBRE'; - fld_ProveedoresCALLE = 'CALLE'; fld_ProveedoresPERSONA_CONTACTO = 'PERSONA_CONTACTO'; + fld_ProveedoresCALLE = 'CALLE'; fld_ProveedoresPOBLACION = 'POBLACION'; fld_ProveedoresPROVINCIA = 'PROVINCIA'; fld_ProveedoresCODIGO_POSTAL = 'CODIGO_POSTAL'; @@ -197,27 +201,29 @@ const fld_ProveedoresEMAIL_2 = 'EMAIL_2'; fld_ProveedoresPAGINA_WEB = 'PAGINA_WEB'; fld_ProveedoresNOTAS = 'NOTAS'; + fld_ProveedoresFECHA_ALTA = 'FECHA_ALTA'; + fld_ProveedoresFECHA_MODIFICACION = 'FECHA_MODIFICACION'; fld_ProveedoresUSUARIO = 'USUARIO'; fld_ProveedoresID_EMPRESA = 'ID_EMPRESA'; fld_ProveedoresREFERENCIA = 'REFERENCIA'; - fld_ProveedoresID_TIPO_IVA = 'ID_TIPO_IVA'; - fld_ProveedoresREGIMEN_IVA = 'REGIMEN_IVA'; - fld_ProveedoresID_FORMA_PAGO = 'ID_FORMA_PAGO'; - fld_ProveedoresTIENDA_WEB = 'TIENDA_WEB'; fld_ProveedoresDESCUENTO = 'DESCUENTO'; fld_ProveedoresDESCRIPCION_PROVEEDOR = 'DESCRIPCION_PROVEEDOR'; fld_ProveedoresCODIGO_ASIGNADO = 'CODIGO_ASIGNADO'; + fld_ProveedoresGRUPO_PROVEEDOR = 'GRUPO_PROVEEDOR'; + fld_ProveedoresREGIMEN_IVA = 'REGIMEN_IVA'; + fld_ProveedoresID_TIPO_IVA = 'ID_TIPO_IVA'; + fld_ProveedoresID_FORMA_PAGO = 'ID_FORMA_PAGO'; + fld_ProveedoresTIENDA_WEB = 'TIENDA_WEB'; fld_ProveedoresHOMOLOGADO = 'HOMOLOGADO'; fld_ProveedoresCERTIFICACION = 'CERTIFICACION'; - fld_ProveedoresGRUPO_PROVEEDOR = 'GRUPO_PROVEEDOR'; { Proveedores field indexes } idx_ProveedoresID = 0; idx_ProveedoresID_CATEGORIA = 1; idx_ProveedoresNIF_CIF = 2; idx_ProveedoresNOMBRE = 3; - idx_ProveedoresCALLE = 4; - idx_ProveedoresPERSONA_CONTACTO = 5; + idx_ProveedoresPERSONA_CONTACTO = 4; + idx_ProveedoresCALLE = 5; idx_ProveedoresPOBLACION = 6; idx_ProveedoresPROVINCIA = 7; idx_ProveedoresCODIGO_POSTAL = 8; @@ -230,27 +236,29 @@ const idx_ProveedoresEMAIL_2 = 15; idx_ProveedoresPAGINA_WEB = 16; idx_ProveedoresNOTAS = 17; - idx_ProveedoresUSUARIO = 18; - idx_ProveedoresID_EMPRESA = 19; - idx_ProveedoresREFERENCIA = 20; - idx_ProveedoresID_TIPO_IVA = 21; - idx_ProveedoresREGIMEN_IVA = 22; - idx_ProveedoresID_FORMA_PAGO = 23; - idx_ProveedoresTIENDA_WEB = 24; - idx_ProveedoresDESCUENTO = 25; - idx_ProveedoresDESCRIPCION_PROVEEDOR = 26; - idx_ProveedoresCODIGO_ASIGNADO = 27; - idx_ProveedoresHOMOLOGADO = 28; - idx_ProveedoresCERTIFICACION = 29; - idx_ProveedoresGRUPO_PROVEEDOR = 30; + idx_ProveedoresFECHA_ALTA = 18; + idx_ProveedoresFECHA_MODIFICACION = 19; + idx_ProveedoresUSUARIO = 20; + idx_ProveedoresID_EMPRESA = 21; + idx_ProveedoresREFERENCIA = 22; + idx_ProveedoresDESCUENTO = 23; + idx_ProveedoresDESCRIPCION_PROVEEDOR = 24; + idx_ProveedoresCODIGO_ASIGNADO = 25; + idx_ProveedoresGRUPO_PROVEEDOR = 26; + idx_ProveedoresREGIMEN_IVA = 27; + idx_ProveedoresID_TIPO_IVA = 28; + idx_ProveedoresID_FORMA_PAGO = 29; + idx_ProveedoresTIENDA_WEB = 30; + idx_ProveedoresHOMOLOGADO = 31; + idx_ProveedoresCERTIFICACION = 32; { Empleados fields } fld_EmpleadosID = 'ID'; fld_EmpleadosID_CATEGORIA = 'ID_CATEGORIA'; fld_EmpleadosNIF_CIF = 'NIF_CIF'; fld_EmpleadosNOMBRE = 'NOMBRE'; - fld_EmpleadosCALLE = 'CALLE'; fld_EmpleadosPERSONA_CONTACTO = 'PERSONA_CONTACTO'; + fld_EmpleadosCALLE = 'CALLE'; fld_EmpleadosPOBLACION = 'POBLACION'; fld_EmpleadosPROVINCIA = 'PROVINCIA'; fld_EmpleadosCODIGO_POSTAL = 'CODIGO_POSTAL'; @@ -263,11 +271,13 @@ const fld_EmpleadosEMAIL_2 = 'EMAIL_2'; fld_EmpleadosPAGINA_WEB = 'PAGINA_WEB'; fld_EmpleadosNOTAS = 'NOTAS'; + fld_EmpleadosFECHA_ALTA = 'FECHA_ALTA'; + fld_EmpleadosFECHA_MODIFICACION = 'FECHA_MODIFICACION'; fld_EmpleadosUSUARIO = 'USUARIO'; fld_EmpleadosID_EMPRESA = 'ID_EMPRESA'; fld_EmpleadosREFERENCIA = 'REFERENCIA'; - fld_EmpleadosCATEGORIA = 'CATEGORIA'; fld_EmpleadosFECHA_NACIMIENTO = 'FECHA_NACIMIENTO'; + fld_EmpleadosCATEGORIA = 'CATEGORIA'; fld_EmpleadosFECHA_ALTA_EMPRESA = 'FECHA_ALTA_EMPRESA'; fld_EmpleadosFORMACION_BASE = 'FORMACION_BASE'; fld_EmpleadosFORMACION_COMPLE = 'FORMACION_COMPLE'; @@ -279,8 +289,8 @@ const idx_EmpleadosID_CATEGORIA = 1; idx_EmpleadosNIF_CIF = 2; idx_EmpleadosNOMBRE = 3; - idx_EmpleadosCALLE = 4; - idx_EmpleadosPERSONA_CONTACTO = 5; + idx_EmpleadosPERSONA_CONTACTO = 4; + idx_EmpleadosCALLE = 5; idx_EmpleadosPOBLACION = 6; idx_EmpleadosPROVINCIA = 7; idx_EmpleadosCODIGO_POSTAL = 8; @@ -293,48 +303,54 @@ const idx_EmpleadosEMAIL_2 = 15; idx_EmpleadosPAGINA_WEB = 16; idx_EmpleadosNOTAS = 17; - idx_EmpleadosUSUARIO = 18; - idx_EmpleadosID_EMPRESA = 19; - idx_EmpleadosREFERENCIA = 20; - idx_EmpleadosCATEGORIA = 21; - idx_EmpleadosFECHA_NACIMIENTO = 22; - idx_EmpleadosFECHA_ALTA_EMPRESA = 23; - idx_EmpleadosFORMACION_BASE = 24; - idx_EmpleadosFORMACION_COMPLE = 25; - idx_EmpleadosFORMACION_RECIBIDA = 26; - idx_EmpleadosEXPERIENCIA = 27; + idx_EmpleadosFECHA_ALTA = 18; + idx_EmpleadosFECHA_MODIFICACION = 19; + idx_EmpleadosUSUARIO = 20; + idx_EmpleadosID_EMPRESA = 21; + idx_EmpleadosREFERENCIA = 22; + idx_EmpleadosFECHA_NACIMIENTO = 23; + idx_EmpleadosCATEGORIA = 24; + idx_EmpleadosFECHA_ALTA_EMPRESA = 25; + idx_EmpleadosFORMACION_BASE = 26; + idx_EmpleadosFORMACION_COMPLE = 27; + idx_EmpleadosFORMACION_RECIBIDA = 28; + idx_EmpleadosEXPERIENCIA = 29; { DireccionesContacto fields } fld_DireccionesContactoID = 'ID'; fld_DireccionesContactoID_CONTACTO = 'ID_CONTACTO'; - fld_DireccionesContactoNOMBRE = 'NOMBRE'; fld_DireccionesContactoCALLE = 'CALLE'; fld_DireccionesContactoPOBLACION = 'POBLACION'; fld_DireccionesContactoPROVINCIA = 'PROVINCIA'; fld_DireccionesContactoCODIGO_POSTAL = 'CODIGO_POSTAL'; fld_DireccionesContactoPERSONA_CONTACTO = 'PERSONA_CONTACTO'; + fld_DireccionesContactoNOMBRE = 'NOMBRE'; fld_DireccionesContactoTELEFONO = 'TELEFONO'; fld_DireccionesContactoMOVIL = 'MOVIL'; fld_DireccionesContactoFAX = 'FAX'; fld_DireccionesContactoEMAIL = 'EMAIL'; fld_DireccionesContactoNOTAS = 'NOTAS'; fld_DireccionesContactoPORTE = 'PORTE'; + fld_DireccionesContactoFECHA_ALTA = 'FECHA_ALTA'; + fld_DireccionesContactoFECHA_MODIFICACION = 'FECHA_MODIFICACION'; { DireccionesContacto field indexes } idx_DireccionesContactoID = 0; idx_DireccionesContactoID_CONTACTO = 1; - idx_DireccionesContactoNOMBRE = 2; - idx_DireccionesContactoCALLE = 3; - idx_DireccionesContactoPOBLACION = 4; - idx_DireccionesContactoPROVINCIA = 5; - idx_DireccionesContactoCODIGO_POSTAL = 6; - idx_DireccionesContactoPERSONA_CONTACTO = 7; + idx_DireccionesContactoCALLE = 2; + idx_DireccionesContactoPOBLACION = 3; + idx_DireccionesContactoPROVINCIA = 4; + idx_DireccionesContactoCODIGO_POSTAL = 5; + idx_DireccionesContactoPERSONA_CONTACTO = 6; + idx_DireccionesContactoNOMBRE = 7; idx_DireccionesContactoTELEFONO = 8; idx_DireccionesContactoMOVIL = 9; idx_DireccionesContactoFAX = 10; idx_DireccionesContactoEMAIL = 11; idx_DireccionesContactoNOTAS = 12; idx_DireccionesContactoPORTE = 13; + idx_DireccionesContactoFECHA_ALTA = 14; + idx_DireccionesContactoFECHA_MODIFICACION = 15; { ClientesDescuentos fields } fld_ClientesDescuentosID = 'ID'; @@ -362,149 +378,345 @@ const { GruposEmpleado field indexes } idx_GruposEmpleadoDESCRIPCION = 0; + { Contactos_Refresh fields } + fld_Contactos_RefreshID = 'ID'; + fld_Contactos_RefreshNIF_CIF = 'NIF_CIF'; + fld_Contactos_RefreshNOMBRE = 'NOMBRE'; + fld_Contactos_RefreshCALLE = 'CALLE'; + fld_Contactos_RefreshPOBLACION = 'POBLACION'; + fld_Contactos_RefreshPROVINCIA = 'PROVINCIA'; + fld_Contactos_RefreshCODIGO_POSTAL = 'CODIGO_POSTAL'; + fld_Contactos_RefreshTELEFONO_1 = 'TELEFONO_1'; + fld_Contactos_RefreshTELEFONO_2 = 'TELEFONO_2'; + fld_Contactos_RefreshMOVIL_1 = 'MOVIL_1'; + fld_Contactos_RefreshMOVIL_2 = 'MOVIL_2'; + fld_Contactos_RefreshFAX = 'FAX'; + fld_Contactos_RefreshEMAIL_1 = 'EMAIL_1'; + fld_Contactos_RefreshEMAIL_2 = 'EMAIL_2'; + fld_Contactos_RefreshPAGINA_WEB = 'PAGINA_WEB'; + fld_Contactos_RefreshNOTAS = 'NOTAS'; + fld_Contactos_RefreshFECHA_ALTA = 'FECHA_ALTA'; + fld_Contactos_RefreshFECHA_MODIFICACION = 'FECHA_MODIFICACION'; + fld_Contactos_RefreshUSUARIO = 'USUARIO'; + fld_Contactos_RefreshREFERENCIA = 'REFERENCIA'; + fld_Contactos_RefreshPERSONA_CONTACTO = 'PERSONA_CONTACTO'; + + { Contactos_Refresh field indexes } + idx_Contactos_RefreshID = 0; + idx_Contactos_RefreshNIF_CIF = 1; + idx_Contactos_RefreshNOMBRE = 2; + idx_Contactos_RefreshCALLE = 3; + idx_Contactos_RefreshPOBLACION = 4; + idx_Contactos_RefreshPROVINCIA = 5; + idx_Contactos_RefreshCODIGO_POSTAL = 6; + idx_Contactos_RefreshTELEFONO_1 = 7; + idx_Contactos_RefreshTELEFONO_2 = 8; + idx_Contactos_RefreshMOVIL_1 = 9; + idx_Contactos_RefreshMOVIL_2 = 10; + idx_Contactos_RefreshFAX = 11; + idx_Contactos_RefreshEMAIL_1 = 12; + idx_Contactos_RefreshEMAIL_2 = 13; + idx_Contactos_RefreshPAGINA_WEB = 14; + idx_Contactos_RefreshNOTAS = 15; + idx_Contactos_RefreshFECHA_ALTA = 16; + idx_Contactos_RefreshFECHA_MODIFICACION = 17; + idx_Contactos_RefreshUSUARIO = 18; + idx_Contactos_RefreshREFERENCIA = 19; + idx_Contactos_RefreshPERSONA_CONTACTO = 20; + type { IContactos } IContactos = interface(IDAStronglyTypedDataTable) - ['{F396F244-2087-46CA-B562-068C32F5925F}'] + ['{5145E838-1842-4483-A701-647873835147}'] { Property getters and setters } function GetIDValue: Integer; procedure SetIDValue(const aValue: Integer); + function GetIDIsNull: Boolean; + procedure SetIDIsNull(const aValue: Boolean); function GetID_CATEGORIAValue: Integer; procedure SetID_CATEGORIAValue(const aValue: Integer); + function GetID_CATEGORIAIsNull: Boolean; + procedure SetID_CATEGORIAIsNull(const aValue: Boolean); function GetNIF_CIFValue: String; procedure SetNIF_CIFValue(const aValue: String); + function GetNIF_CIFIsNull: Boolean; + procedure SetNIF_CIFIsNull(const aValue: Boolean); function GetNOMBREValue: String; procedure SetNOMBREValue(const aValue: String); + function GetNOMBREIsNull: Boolean; + procedure SetNOMBREIsNull(const aValue: Boolean); function GetPERSONA_CONTACTOValue: String; procedure SetPERSONA_CONTACTOValue(const aValue: String); + function GetPERSONA_CONTACTOIsNull: Boolean; + procedure SetPERSONA_CONTACTOIsNull(const aValue: Boolean); function GetCALLEValue: String; procedure SetCALLEValue(const aValue: String); + function GetCALLEIsNull: Boolean; + procedure SetCALLEIsNull(const aValue: Boolean); function GetPOBLACIONValue: String; procedure SetPOBLACIONValue(const aValue: String); + function GetPOBLACIONIsNull: Boolean; + procedure SetPOBLACIONIsNull(const aValue: Boolean); function GetPROVINCIAValue: String; procedure SetPROVINCIAValue(const aValue: String); + function GetPROVINCIAIsNull: Boolean; + procedure SetPROVINCIAIsNull(const aValue: Boolean); function GetCODIGO_POSTALValue: String; procedure SetCODIGO_POSTALValue(const aValue: String); + function GetCODIGO_POSTALIsNull: Boolean; + procedure SetCODIGO_POSTALIsNull(const aValue: Boolean); function GetTELEFONO_1Value: String; procedure SetTELEFONO_1Value(const aValue: String); + function GetTELEFONO_1IsNull: Boolean; + procedure SetTELEFONO_1IsNull(const aValue: Boolean); function GetTELEFONO_2Value: String; procedure SetTELEFONO_2Value(const aValue: String); + function GetTELEFONO_2IsNull: Boolean; + procedure SetTELEFONO_2IsNull(const aValue: Boolean); function GetMOVIL_1Value: String; procedure SetMOVIL_1Value(const aValue: String); + function GetMOVIL_1IsNull: Boolean; + procedure SetMOVIL_1IsNull(const aValue: Boolean); function GetMOVIL_2Value: String; procedure SetMOVIL_2Value(const aValue: String); + function GetMOVIL_2IsNull: Boolean; + procedure SetMOVIL_2IsNull(const aValue: Boolean); function GetFAXValue: String; procedure SetFAXValue(const aValue: String); + function GetFAXIsNull: Boolean; + procedure SetFAXIsNull(const aValue: Boolean); function GetEMAIL_1Value: String; procedure SetEMAIL_1Value(const aValue: String); + function GetEMAIL_1IsNull: Boolean; + procedure SetEMAIL_1IsNull(const aValue: Boolean); function GetEMAIL_2Value: String; procedure SetEMAIL_2Value(const aValue: String); + function GetEMAIL_2IsNull: Boolean; + procedure SetEMAIL_2IsNull(const aValue: Boolean); function GetPAGINA_WEBValue: String; procedure SetPAGINA_WEBValue(const aValue: String); + function GetPAGINA_WEBIsNull: Boolean; + procedure SetPAGINA_WEBIsNull(const aValue: Boolean); function GetNOTASValue: IROStrings; - procedure SetNOTASValue(const aValue: IROStrings); + function GetNOTASIsNull: Boolean; + procedure SetNOTASIsNull(const aValue: Boolean); + function GetFECHA_ALTAValue: DateTime; + procedure SetFECHA_ALTAValue(const aValue: DateTime); + function GetFECHA_ALTAIsNull: Boolean; + procedure SetFECHA_ALTAIsNull(const aValue: Boolean); + function GetFECHA_MODIFICACIONValue: DateTime; + procedure SetFECHA_MODIFICACIONValue(const aValue: DateTime); + function GetFECHA_MODIFICACIONIsNull: Boolean; + procedure SetFECHA_MODIFICACIONIsNull(const aValue: Boolean); function GetUSUARIOValue: String; procedure SetUSUARIOValue(const aValue: String); + function GetUSUARIOIsNull: Boolean; + procedure SetUSUARIOIsNull(const aValue: Boolean); function GetID_EMPRESAValue: Integer; procedure SetID_EMPRESAValue(const aValue: Integer); + function GetID_EMPRESAIsNull: Boolean; + procedure SetID_EMPRESAIsNull(const aValue: Boolean); function GetREFERENCIAValue: String; procedure SetREFERENCIAValue(const aValue: String); + function GetREFERENCIAIsNull: Boolean; + procedure SetREFERENCIAIsNull(const aValue: Boolean); { Properties } property ID: Integer read GetIDValue write SetIDValue; + property IDIsNull: Boolean read GetIDIsNull write SetIDIsNull; property ID_CATEGORIA: Integer read GetID_CATEGORIAValue write SetID_CATEGORIAValue; + property ID_CATEGORIAIsNull: Boolean read GetID_CATEGORIAIsNull write SetID_CATEGORIAIsNull; property NIF_CIF: String read GetNIF_CIFValue write SetNIF_CIFValue; + property NIF_CIFIsNull: Boolean read GetNIF_CIFIsNull write SetNIF_CIFIsNull; property NOMBRE: String read GetNOMBREValue write SetNOMBREValue; + property NOMBREIsNull: Boolean read GetNOMBREIsNull write SetNOMBREIsNull; property PERSONA_CONTACTO: String read GetPERSONA_CONTACTOValue write SetPERSONA_CONTACTOValue; + property PERSONA_CONTACTOIsNull: Boolean read GetPERSONA_CONTACTOIsNull write SetPERSONA_CONTACTOIsNull; property CALLE: String read GetCALLEValue write SetCALLEValue; + property CALLEIsNull: Boolean read GetCALLEIsNull write SetCALLEIsNull; property POBLACION: String read GetPOBLACIONValue write SetPOBLACIONValue; + property POBLACIONIsNull: Boolean read GetPOBLACIONIsNull write SetPOBLACIONIsNull; property PROVINCIA: String read GetPROVINCIAValue write SetPROVINCIAValue; + property PROVINCIAIsNull: Boolean read GetPROVINCIAIsNull write SetPROVINCIAIsNull; property CODIGO_POSTAL: String read GetCODIGO_POSTALValue write SetCODIGO_POSTALValue; + property CODIGO_POSTALIsNull: Boolean read GetCODIGO_POSTALIsNull write SetCODIGO_POSTALIsNull; property TELEFONO_1: String read GetTELEFONO_1Value write SetTELEFONO_1Value; + property TELEFONO_1IsNull: Boolean read GetTELEFONO_1IsNull write SetTELEFONO_1IsNull; property TELEFONO_2: String read GetTELEFONO_2Value write SetTELEFONO_2Value; + property TELEFONO_2IsNull: Boolean read GetTELEFONO_2IsNull write SetTELEFONO_2IsNull; property MOVIL_1: String read GetMOVIL_1Value write SetMOVIL_1Value; + property MOVIL_1IsNull: Boolean read GetMOVIL_1IsNull write SetMOVIL_1IsNull; property MOVIL_2: String read GetMOVIL_2Value write SetMOVIL_2Value; + property MOVIL_2IsNull: Boolean read GetMOVIL_2IsNull write SetMOVIL_2IsNull; property FAX: String read GetFAXValue write SetFAXValue; + property FAXIsNull: Boolean read GetFAXIsNull write SetFAXIsNull; property EMAIL_1: String read GetEMAIL_1Value write SetEMAIL_1Value; + property EMAIL_1IsNull: Boolean read GetEMAIL_1IsNull write SetEMAIL_1IsNull; property EMAIL_2: String read GetEMAIL_2Value write SetEMAIL_2Value; + property EMAIL_2IsNull: Boolean read GetEMAIL_2IsNull write SetEMAIL_2IsNull; property PAGINA_WEB: String read GetPAGINA_WEBValue write SetPAGINA_WEBValue; - property NOTAS: IROStrings read GetNOTASValue write SetNOTASValue; + property PAGINA_WEBIsNull: Boolean read GetPAGINA_WEBIsNull write SetPAGINA_WEBIsNull; + property NOTAS: IROStrings read GetNOTASValue; + property NOTASIsNull: Boolean read GetNOTASIsNull write SetNOTASIsNull; + property FECHA_ALTA: DateTime read GetFECHA_ALTAValue write SetFECHA_ALTAValue; + property FECHA_ALTAIsNull: Boolean read GetFECHA_ALTAIsNull write SetFECHA_ALTAIsNull; + property FECHA_MODIFICACION: DateTime read GetFECHA_MODIFICACIONValue write SetFECHA_MODIFICACIONValue; + property FECHA_MODIFICACIONIsNull: Boolean read GetFECHA_MODIFICACIONIsNull write SetFECHA_MODIFICACIONIsNull; property USUARIO: String read GetUSUARIOValue write SetUSUARIOValue; + property USUARIOIsNull: Boolean read GetUSUARIOIsNull write SetUSUARIOIsNull; property ID_EMPRESA: Integer read GetID_EMPRESAValue write SetID_EMPRESAValue; + property ID_EMPRESAIsNull: Boolean read GetID_EMPRESAIsNull write SetID_EMPRESAIsNull; property REFERENCIA: String read GetREFERENCIAValue write SetREFERENCIAValue; + property REFERENCIAIsNull: Boolean read GetREFERENCIAIsNull write SetREFERENCIAIsNull; end; { TContactosDataTableRules } TContactosDataTableRules = class(TDADataTableRules, IContactos) private + f_NOTAS: IROStrings; + procedure NOTAS_OnChange(Sender: TObject); protected { Property getters and setters } function GetIDValue: Integer; virtual; procedure SetIDValue(const aValue: Integer); virtual; + function GetIDIsNull: Boolean; virtual; + procedure SetIDIsNull(const aValue: Boolean); virtual; function GetID_CATEGORIAValue: Integer; virtual; procedure SetID_CATEGORIAValue(const aValue: Integer); virtual; + function GetID_CATEGORIAIsNull: Boolean; virtual; + procedure SetID_CATEGORIAIsNull(const aValue: Boolean); virtual; function GetNIF_CIFValue: String; virtual; procedure SetNIF_CIFValue(const aValue: String); virtual; + function GetNIF_CIFIsNull: Boolean; virtual; + procedure SetNIF_CIFIsNull(const aValue: Boolean); virtual; function GetNOMBREValue: String; virtual; procedure SetNOMBREValue(const aValue: String); virtual; + function GetNOMBREIsNull: Boolean; virtual; + procedure SetNOMBREIsNull(const aValue: Boolean); virtual; function GetPERSONA_CONTACTOValue: String; virtual; procedure SetPERSONA_CONTACTOValue(const aValue: String); virtual; + function GetPERSONA_CONTACTOIsNull: Boolean; virtual; + procedure SetPERSONA_CONTACTOIsNull(const aValue: Boolean); virtual; function GetCALLEValue: String; virtual; procedure SetCALLEValue(const aValue: String); virtual; + function GetCALLEIsNull: Boolean; virtual; + procedure SetCALLEIsNull(const aValue: Boolean); virtual; function GetPOBLACIONValue: String; virtual; procedure SetPOBLACIONValue(const aValue: String); virtual; + function GetPOBLACIONIsNull: Boolean; virtual; + procedure SetPOBLACIONIsNull(const aValue: Boolean); virtual; function GetPROVINCIAValue: String; virtual; procedure SetPROVINCIAValue(const aValue: String); virtual; + function GetPROVINCIAIsNull: Boolean; virtual; + procedure SetPROVINCIAIsNull(const aValue: Boolean); virtual; function GetCODIGO_POSTALValue: String; virtual; procedure SetCODIGO_POSTALValue(const aValue: String); virtual; + function GetCODIGO_POSTALIsNull: Boolean; virtual; + procedure SetCODIGO_POSTALIsNull(const aValue: Boolean); virtual; function GetTELEFONO_1Value: String; virtual; procedure SetTELEFONO_1Value(const aValue: String); virtual; + function GetTELEFONO_1IsNull: Boolean; virtual; + procedure SetTELEFONO_1IsNull(const aValue: Boolean); virtual; function GetTELEFONO_2Value: String; virtual; procedure SetTELEFONO_2Value(const aValue: String); virtual; + function GetTELEFONO_2IsNull: Boolean; virtual; + procedure SetTELEFONO_2IsNull(const aValue: Boolean); virtual; function GetMOVIL_1Value: String; virtual; procedure SetMOVIL_1Value(const aValue: String); virtual; + function GetMOVIL_1IsNull: Boolean; virtual; + procedure SetMOVIL_1IsNull(const aValue: Boolean); virtual; function GetMOVIL_2Value: String; virtual; procedure SetMOVIL_2Value(const aValue: String); virtual; + function GetMOVIL_2IsNull: Boolean; virtual; + procedure SetMOVIL_2IsNull(const aValue: Boolean); virtual; function GetFAXValue: String; virtual; procedure SetFAXValue(const aValue: String); virtual; + function GetFAXIsNull: Boolean; virtual; + procedure SetFAXIsNull(const aValue: Boolean); virtual; function GetEMAIL_1Value: String; virtual; procedure SetEMAIL_1Value(const aValue: String); virtual; + function GetEMAIL_1IsNull: Boolean; virtual; + procedure SetEMAIL_1IsNull(const aValue: Boolean); virtual; function GetEMAIL_2Value: String; virtual; procedure SetEMAIL_2Value(const aValue: String); virtual; + function GetEMAIL_2IsNull: Boolean; virtual; + procedure SetEMAIL_2IsNull(const aValue: Boolean); virtual; function GetPAGINA_WEBValue: String; virtual; procedure SetPAGINA_WEBValue(const aValue: String); virtual; + function GetPAGINA_WEBIsNull: Boolean; virtual; + procedure SetPAGINA_WEBIsNull(const aValue: Boolean); virtual; function GetNOTASValue: IROStrings; virtual; - procedure SetNOTASValue(const aValue: IROStrings); virtual; + function GetNOTASIsNull: Boolean; virtual; + procedure SetNOTASIsNull(const aValue: Boolean); virtual; + function GetFECHA_ALTAValue: DateTime; virtual; + procedure SetFECHA_ALTAValue(const aValue: DateTime); virtual; + function GetFECHA_ALTAIsNull: Boolean; virtual; + procedure SetFECHA_ALTAIsNull(const aValue: Boolean); virtual; + function GetFECHA_MODIFICACIONValue: DateTime; virtual; + procedure SetFECHA_MODIFICACIONValue(const aValue: DateTime); virtual; + function GetFECHA_MODIFICACIONIsNull: Boolean; virtual; + procedure SetFECHA_MODIFICACIONIsNull(const aValue: Boolean); virtual; function GetUSUARIOValue: String; virtual; procedure SetUSUARIOValue(const aValue: String); virtual; + function GetUSUARIOIsNull: Boolean; virtual; + procedure SetUSUARIOIsNull(const aValue: Boolean); virtual; function GetID_EMPRESAValue: Integer; virtual; procedure SetID_EMPRESAValue(const aValue: Integer); virtual; + function GetID_EMPRESAIsNull: Boolean; virtual; + procedure SetID_EMPRESAIsNull(const aValue: Boolean); virtual; function GetREFERENCIAValue: String; virtual; procedure SetREFERENCIAValue(const aValue: String); virtual; + function GetREFERENCIAIsNull: Boolean; virtual; + procedure SetREFERENCIAIsNull(const aValue: Boolean); virtual; { Properties } property ID: Integer read GetIDValue write SetIDValue; + property IDIsNull: Boolean read GetIDIsNull write SetIDIsNull; property ID_CATEGORIA: Integer read GetID_CATEGORIAValue write SetID_CATEGORIAValue; + property ID_CATEGORIAIsNull: Boolean read GetID_CATEGORIAIsNull write SetID_CATEGORIAIsNull; property NIF_CIF: String read GetNIF_CIFValue write SetNIF_CIFValue; + property NIF_CIFIsNull: Boolean read GetNIF_CIFIsNull write SetNIF_CIFIsNull; property NOMBRE: String read GetNOMBREValue write SetNOMBREValue; + property NOMBREIsNull: Boolean read GetNOMBREIsNull write SetNOMBREIsNull; property PERSONA_CONTACTO: String read GetPERSONA_CONTACTOValue write SetPERSONA_CONTACTOValue; + property PERSONA_CONTACTOIsNull: Boolean read GetPERSONA_CONTACTOIsNull write SetPERSONA_CONTACTOIsNull; property CALLE: String read GetCALLEValue write SetCALLEValue; + property CALLEIsNull: Boolean read GetCALLEIsNull write SetCALLEIsNull; property POBLACION: String read GetPOBLACIONValue write SetPOBLACIONValue; + property POBLACIONIsNull: Boolean read GetPOBLACIONIsNull write SetPOBLACIONIsNull; property PROVINCIA: String read GetPROVINCIAValue write SetPROVINCIAValue; + property PROVINCIAIsNull: Boolean read GetPROVINCIAIsNull write SetPROVINCIAIsNull; property CODIGO_POSTAL: String read GetCODIGO_POSTALValue write SetCODIGO_POSTALValue; + property CODIGO_POSTALIsNull: Boolean read GetCODIGO_POSTALIsNull write SetCODIGO_POSTALIsNull; property TELEFONO_1: String read GetTELEFONO_1Value write SetTELEFONO_1Value; + property TELEFONO_1IsNull: Boolean read GetTELEFONO_1IsNull write SetTELEFONO_1IsNull; property TELEFONO_2: String read GetTELEFONO_2Value write SetTELEFONO_2Value; + property TELEFONO_2IsNull: Boolean read GetTELEFONO_2IsNull write SetTELEFONO_2IsNull; property MOVIL_1: String read GetMOVIL_1Value write SetMOVIL_1Value; + property MOVIL_1IsNull: Boolean read GetMOVIL_1IsNull write SetMOVIL_1IsNull; property MOVIL_2: String read GetMOVIL_2Value write SetMOVIL_2Value; + property MOVIL_2IsNull: Boolean read GetMOVIL_2IsNull write SetMOVIL_2IsNull; property FAX: String read GetFAXValue write SetFAXValue; + property FAXIsNull: Boolean read GetFAXIsNull write SetFAXIsNull; property EMAIL_1: String read GetEMAIL_1Value write SetEMAIL_1Value; + property EMAIL_1IsNull: Boolean read GetEMAIL_1IsNull write SetEMAIL_1IsNull; property EMAIL_2: String read GetEMAIL_2Value write SetEMAIL_2Value; + property EMAIL_2IsNull: Boolean read GetEMAIL_2IsNull write SetEMAIL_2IsNull; property PAGINA_WEB: String read GetPAGINA_WEBValue write SetPAGINA_WEBValue; - property NOTAS: IROStrings read GetNOTASValue write SetNOTASValue; + property PAGINA_WEBIsNull: Boolean read GetPAGINA_WEBIsNull write SetPAGINA_WEBIsNull; + property NOTAS: IROStrings read GetNOTASValue; + property NOTASIsNull: Boolean read GetNOTASIsNull write SetNOTASIsNull; + property FECHA_ALTA: DateTime read GetFECHA_ALTAValue write SetFECHA_ALTAValue; + property FECHA_ALTAIsNull: Boolean read GetFECHA_ALTAIsNull write SetFECHA_ALTAIsNull; + property FECHA_MODIFICACION: DateTime read GetFECHA_MODIFICACIONValue write SetFECHA_MODIFICACIONValue; + property FECHA_MODIFICACIONIsNull: Boolean read GetFECHA_MODIFICACIONIsNull write SetFECHA_MODIFICACIONIsNull; property USUARIO: String read GetUSUARIOValue write SetUSUARIOValue; + property USUARIOIsNull: Boolean read GetUSUARIOIsNull write SetUSUARIOIsNull; property ID_EMPRESA: Integer read GetID_EMPRESAValue write SetID_EMPRESAValue; + property ID_EMPRESAIsNull: Boolean read GetID_EMPRESAIsNull write SetID_EMPRESAIsNull; property REFERENCIA: String read GetREFERENCIAValue write SetREFERENCIAValue; + property REFERENCIAIsNull: Boolean read GetREFERENCIAIsNull write SetREFERENCIAIsNull; public constructor Create(aDataTable: TDADataTable); override; @@ -514,14 +726,17 @@ type { IGruposCliente } IGruposCliente = interface(IDAStronglyTypedDataTable) - ['{1FFF80FA-0CE6-4907-A25E-582E1724B293}'] + ['{8359833A-FFFA-4484-9C33-373F52E3F583}'] { Property getters and setters } function GetDESCRIPCIONValue: String; procedure SetDESCRIPCIONValue(const aValue: String); + function GetDESCRIPCIONIsNull: Boolean; + procedure SetDESCRIPCIONIsNull(const aValue: Boolean); { Properties } property DESCRIPCION: String read GetDESCRIPCIONValue write SetDESCRIPCIONValue; + property DESCRIPCIONIsNull: Boolean read GetDESCRIPCIONIsNull write SetDESCRIPCIONIsNull; end; { TGruposClienteDataTableRules } @@ -531,9 +746,12 @@ type { Property getters and setters } function GetDESCRIPCIONValue: String; virtual; procedure SetDESCRIPCIONValue(const aValue: String); virtual; + function GetDESCRIPCIONIsNull: Boolean; virtual; + procedure SetDESCRIPCIONIsNull(const aValue: Boolean); virtual; { Properties } property DESCRIPCION: String read GetDESCRIPCIONValue write SetDESCRIPCIONValue; + property DESCRIPCIONIsNull: Boolean read GetDESCRIPCIONIsNull write SetDESCRIPCIONIsNull; public constructor Create(aDataTable: TDADataTable); override; @@ -543,32 +761,65 @@ type { IDatosBancarios } IDatosBancarios = interface(IDAStronglyTypedDataTable) - ['{F87D0636-602D-472C-90BD-8A8F6F783944}'] + ['{4FC2551A-3470-4FCC-9A1C-FFC04AD11D1E}'] { Property getters and setters } function GetIDValue: Integer; procedure SetIDValue(const aValue: Integer); + function GetIDIsNull: Boolean; + procedure SetIDIsNull(const aValue: Boolean); function GetID_CONTACTOValue: Integer; procedure SetID_CONTACTOValue(const aValue: Integer); + function GetID_CONTACTOIsNull: Boolean; + procedure SetID_CONTACTOIsNull(const aValue: Boolean); function GetTITULARValue: String; procedure SetTITULARValue(const aValue: String); + function GetTITULARIsNull: Boolean; + procedure SetTITULARIsNull(const aValue: Boolean); function GetENTIDADValue: String; procedure SetENTIDADValue(const aValue: String); + function GetENTIDADIsNull: Boolean; + procedure SetENTIDADIsNull(const aValue: Boolean); function GetSUCURSALValue: String; procedure SetSUCURSALValue(const aValue: String); + function GetSUCURSALIsNull: Boolean; + procedure SetSUCURSALIsNull(const aValue: Boolean); function GetDCValue: String; procedure SetDCValue(const aValue: String); + function GetDCIsNull: Boolean; + procedure SetDCIsNull(const aValue: Boolean); function GetCUENTAValue: String; procedure SetCUENTAValue(const aValue: String); + function GetCUENTAIsNull: Boolean; + procedure SetCUENTAIsNull(const aValue: Boolean); + function GetFECHA_ALTAValue: DateTime; + procedure SetFECHA_ALTAValue(const aValue: DateTime); + function GetFECHA_ALTAIsNull: Boolean; + procedure SetFECHA_ALTAIsNull(const aValue: Boolean); + function GetFECHA_MODIFICACIONValue: DateTime; + procedure SetFECHA_MODIFICACIONValue(const aValue: DateTime); + function GetFECHA_MODIFICACIONIsNull: Boolean; + procedure SetFECHA_MODIFICACIONIsNull(const aValue: Boolean); { Properties } property ID: Integer read GetIDValue write SetIDValue; + property IDIsNull: Boolean read GetIDIsNull write SetIDIsNull; property ID_CONTACTO: Integer read GetID_CONTACTOValue write SetID_CONTACTOValue; + property ID_CONTACTOIsNull: Boolean read GetID_CONTACTOIsNull write SetID_CONTACTOIsNull; property TITULAR: String read GetTITULARValue write SetTITULARValue; + property TITULARIsNull: Boolean read GetTITULARIsNull write SetTITULARIsNull; property ENTIDAD: String read GetENTIDADValue write SetENTIDADValue; + property ENTIDADIsNull: Boolean read GetENTIDADIsNull write SetENTIDADIsNull; property SUCURSAL: String read GetSUCURSALValue write SetSUCURSALValue; + property SUCURSALIsNull: Boolean read GetSUCURSALIsNull write SetSUCURSALIsNull; property DC: String read GetDCValue write SetDCValue; + property DCIsNull: Boolean read GetDCIsNull write SetDCIsNull; property CUENTA: String read GetCUENTAValue write SetCUENTAValue; + property CUENTAIsNull: Boolean read GetCUENTAIsNull write SetCUENTAIsNull; + property FECHA_ALTA: DateTime read GetFECHA_ALTAValue write SetFECHA_ALTAValue; + property FECHA_ALTAIsNull: Boolean read GetFECHA_ALTAIsNull write SetFECHA_ALTAIsNull; + property FECHA_MODIFICACION: DateTime read GetFECHA_MODIFICACIONValue write SetFECHA_MODIFICACIONValue; + property FECHA_MODIFICACIONIsNull: Boolean read GetFECHA_MODIFICACIONIsNull write SetFECHA_MODIFICACIONIsNull; end; { TDatosBancariosDataTableRules } @@ -578,62 +829,60 @@ type { Property getters and setters } function GetIDValue: Integer; virtual; procedure SetIDValue(const aValue: Integer); virtual; + function GetIDIsNull: Boolean; virtual; + procedure SetIDIsNull(const aValue: Boolean); virtual; function GetID_CONTACTOValue: Integer; virtual; procedure SetID_CONTACTOValue(const aValue: Integer); virtual; + function GetID_CONTACTOIsNull: Boolean; virtual; + procedure SetID_CONTACTOIsNull(const aValue: Boolean); virtual; function GetTITULARValue: String; virtual; procedure SetTITULARValue(const aValue: String); virtual; + function GetTITULARIsNull: Boolean; virtual; + procedure SetTITULARIsNull(const aValue: Boolean); virtual; function GetENTIDADValue: String; virtual; procedure SetENTIDADValue(const aValue: String); virtual; + function GetENTIDADIsNull: Boolean; virtual; + procedure SetENTIDADIsNull(const aValue: Boolean); virtual; function GetSUCURSALValue: String; virtual; procedure SetSUCURSALValue(const aValue: String); virtual; + function GetSUCURSALIsNull: Boolean; virtual; + procedure SetSUCURSALIsNull(const aValue: Boolean); virtual; function GetDCValue: String; virtual; procedure SetDCValue(const aValue: String); virtual; + function GetDCIsNull: Boolean; virtual; + procedure SetDCIsNull(const aValue: Boolean); virtual; function GetCUENTAValue: String; virtual; procedure SetCUENTAValue(const aValue: String); virtual; + function GetCUENTAIsNull: Boolean; virtual; + procedure SetCUENTAIsNull(const aValue: Boolean); virtual; + function GetFECHA_ALTAValue: DateTime; virtual; + procedure SetFECHA_ALTAValue(const aValue: DateTime); virtual; + function GetFECHA_ALTAIsNull: Boolean; virtual; + procedure SetFECHA_ALTAIsNull(const aValue: Boolean); virtual; + function GetFECHA_MODIFICACIONValue: DateTime; virtual; + procedure SetFECHA_MODIFICACIONValue(const aValue: DateTime); virtual; + function GetFECHA_MODIFICACIONIsNull: Boolean; virtual; + procedure SetFECHA_MODIFICACIONIsNull(const aValue: Boolean); virtual; { Properties } property ID: Integer read GetIDValue write SetIDValue; + property IDIsNull: Boolean read GetIDIsNull write SetIDIsNull; property ID_CONTACTO: Integer read GetID_CONTACTOValue write SetID_CONTACTOValue; + property ID_CONTACTOIsNull: Boolean read GetID_CONTACTOIsNull write SetID_CONTACTOIsNull; property TITULAR: String read GetTITULARValue write SetTITULARValue; + property TITULARIsNull: Boolean read GetTITULARIsNull write SetTITULARIsNull; property ENTIDAD: String read GetENTIDADValue write SetENTIDADValue; + property ENTIDADIsNull: Boolean read GetENTIDADIsNull write SetENTIDADIsNull; property SUCURSAL: String read GetSUCURSALValue write SetSUCURSALValue; + property SUCURSALIsNull: Boolean read GetSUCURSALIsNull write SetSUCURSALIsNull; property DC: String read GetDCValue write SetDCValue; + property DCIsNull: Boolean read GetDCIsNull write SetDCIsNull; property CUENTA: String read GetCUENTAValue write SetCUENTAValue; - - public - constructor Create(aDataTable: TDADataTable); override; - destructor Destroy; override; - - end; - - { IContactosCategorias } - IContactosCategorias = interface(IDAStronglyTypedDataTable) - ['{D8DCDA8D-996F-446C-8241-E02D41DDEB09}'] - { Property getters and setters } - function GetID_CONTACTOValue: Integer; - procedure SetID_CONTACTOValue(const aValue: Integer); - function GetID_CATEGORIAValue: Integer; - procedure SetID_CATEGORIAValue(const aValue: Integer); - - - { Properties } - property ID_CONTACTO: Integer read GetID_CONTACTOValue write SetID_CONTACTOValue; - property ID_CATEGORIA: Integer read GetID_CATEGORIAValue write SetID_CATEGORIAValue; - end; - - { TContactosCategoriasDataTableRules } - TContactosCategoriasDataTableRules = class(TDADataTableRules, IContactosCategorias) - private - protected - { Property getters and setters } - function GetID_CONTACTOValue: Integer; virtual; - procedure SetID_CONTACTOValue(const aValue: Integer); virtual; - function GetID_CATEGORIAValue: Integer; virtual; - procedure SetID_CATEGORIAValue(const aValue: Integer); virtual; - - { Properties } - property ID_CONTACTO: Integer read GetID_CONTACTOValue write SetID_CONTACTOValue; - property ID_CATEGORIA: Integer read GetID_CATEGORIAValue write SetID_CATEGORIAValue; + property CUENTAIsNull: Boolean read GetCUENTAIsNull write SetCUENTAIsNull; + property FECHA_ALTA: DateTime read GetFECHA_ALTAValue write SetFECHA_ALTAValue; + property FECHA_ALTAIsNull: Boolean read GetFECHA_ALTAIsNull write SetFECHA_ALTAIsNull; + property FECHA_MODIFICACION: DateTime read GetFECHA_MODIFICACIONValue write SetFECHA_MODIFICACIONValue; + property FECHA_MODIFICACIONIsNull: Boolean read GetFECHA_MODIFICACIONIsNull write SetFECHA_MODIFICACIONIsNull; public constructor Create(aDataTable: TDADataTable); override; @@ -643,206 +892,416 @@ type { IClientes } IClientes = interface(IDAStronglyTypedDataTable) - ['{A6D726D9-A0A4-4F7B-B8BD-BCAE0B982891}'] + ['{8031B49A-5DF3-4CEE-B1F9-6454729B6A85}'] { Property getters and setters } function GetIDValue: Integer; procedure SetIDValue(const aValue: Integer); + function GetIDIsNull: Boolean; + procedure SetIDIsNull(const aValue: Boolean); function GetID_CATEGORIAValue: Integer; procedure SetID_CATEGORIAValue(const aValue: Integer); + function GetID_CATEGORIAIsNull: Boolean; + procedure SetID_CATEGORIAIsNull(const aValue: Boolean); function GetNIF_CIFValue: String; procedure SetNIF_CIFValue(const aValue: String); + function GetNIF_CIFIsNull: Boolean; + procedure SetNIF_CIFIsNull(const aValue: Boolean); function GetNOMBREValue: String; procedure SetNOMBREValue(const aValue: String); - function GetCALLEValue: String; - procedure SetCALLEValue(const aValue: String); + function GetNOMBREIsNull: Boolean; + procedure SetNOMBREIsNull(const aValue: Boolean); function GetPERSONA_CONTACTOValue: String; procedure SetPERSONA_CONTACTOValue(const aValue: String); + function GetPERSONA_CONTACTOIsNull: Boolean; + procedure SetPERSONA_CONTACTOIsNull(const aValue: Boolean); + function GetCALLEValue: String; + procedure SetCALLEValue(const aValue: String); + function GetCALLEIsNull: Boolean; + procedure SetCALLEIsNull(const aValue: Boolean); function GetPOBLACIONValue: String; procedure SetPOBLACIONValue(const aValue: String); + function GetPOBLACIONIsNull: Boolean; + procedure SetPOBLACIONIsNull(const aValue: Boolean); function GetPROVINCIAValue: String; procedure SetPROVINCIAValue(const aValue: String); + function GetPROVINCIAIsNull: Boolean; + procedure SetPROVINCIAIsNull(const aValue: Boolean); function GetCODIGO_POSTALValue: String; procedure SetCODIGO_POSTALValue(const aValue: String); + function GetCODIGO_POSTALIsNull: Boolean; + procedure SetCODIGO_POSTALIsNull(const aValue: Boolean); function GetTELEFONO_1Value: String; procedure SetTELEFONO_1Value(const aValue: String); + function GetTELEFONO_1IsNull: Boolean; + procedure SetTELEFONO_1IsNull(const aValue: Boolean); function GetTELEFONO_2Value: String; procedure SetTELEFONO_2Value(const aValue: String); + function GetTELEFONO_2IsNull: Boolean; + procedure SetTELEFONO_2IsNull(const aValue: Boolean); function GetMOVIL_1Value: String; procedure SetMOVIL_1Value(const aValue: String); + function GetMOVIL_1IsNull: Boolean; + procedure SetMOVIL_1IsNull(const aValue: Boolean); function GetMOVIL_2Value: String; procedure SetMOVIL_2Value(const aValue: String); + function GetMOVIL_2IsNull: Boolean; + procedure SetMOVIL_2IsNull(const aValue: Boolean); function GetFAXValue: String; procedure SetFAXValue(const aValue: String); + function GetFAXIsNull: Boolean; + procedure SetFAXIsNull(const aValue: Boolean); function GetEMAIL_1Value: String; procedure SetEMAIL_1Value(const aValue: String); + function GetEMAIL_1IsNull: Boolean; + procedure SetEMAIL_1IsNull(const aValue: Boolean); function GetEMAIL_2Value: String; procedure SetEMAIL_2Value(const aValue: String); + function GetEMAIL_2IsNull: Boolean; + procedure SetEMAIL_2IsNull(const aValue: Boolean); function GetPAGINA_WEBValue: String; procedure SetPAGINA_WEBValue(const aValue: String); + function GetPAGINA_WEBIsNull: Boolean; + procedure SetPAGINA_WEBIsNull(const aValue: Boolean); function GetNOTASValue: IROStrings; - procedure SetNOTASValue(const aValue: IROStrings); + function GetNOTASIsNull: Boolean; + procedure SetNOTASIsNull(const aValue: Boolean); + function GetFECHA_ALTAValue: DateTime; + procedure SetFECHA_ALTAValue(const aValue: DateTime); + function GetFECHA_ALTAIsNull: Boolean; + procedure SetFECHA_ALTAIsNull(const aValue: Boolean); + function GetFECHA_MODIFICACIONValue: DateTime; + procedure SetFECHA_MODIFICACIONValue(const aValue: DateTime); + function GetFECHA_MODIFICACIONIsNull: Boolean; + procedure SetFECHA_MODIFICACIONIsNull(const aValue: Boolean); function GetUSUARIOValue: String; procedure SetUSUARIOValue(const aValue: String); + function GetUSUARIOIsNull: Boolean; + procedure SetUSUARIOIsNull(const aValue: Boolean); function GetID_EMPRESAValue: Integer; procedure SetID_EMPRESAValue(const aValue: Integer); + function GetID_EMPRESAIsNull: Boolean; + procedure SetID_EMPRESAIsNull(const aValue: Boolean); function GetREFERENCIAValue: String; procedure SetREFERENCIAValue(const aValue: String); - function GetID_TIPO_IVAValue: Integer; - procedure SetID_TIPO_IVAValue(const aValue: Integer); - function GetREGIMEN_IVAValue: String; - procedure SetREGIMEN_IVAValue(const aValue: String); - function GetID_FORMA_PAGOValue: Integer; - procedure SetID_FORMA_PAGOValue(const aValue: Integer); - function GetTIENDA_WEBValue: Integer; - procedure SetTIENDA_WEBValue(const aValue: Integer); - function GetRECARGO_EQUIVALENCIAValue: Integer; - procedure SetRECARGO_EQUIVALENCIAValue(const aValue: Integer); + function GetREFERENCIAIsNull: Boolean; + procedure SetREFERENCIAIsNull(const aValue: Boolean); function GetGRUPO_CLIENTEValue: String; procedure SetGRUPO_CLIENTEValue(const aValue: String); + function GetGRUPO_CLIENTEIsNull: Boolean; + procedure SetGRUPO_CLIENTEIsNull(const aValue: Boolean); function GetNOMBRE_COMERCIALValue: String; procedure SetNOMBRE_COMERCIALValue(const aValue: String); + function GetNOMBRE_COMERCIALIsNull: Boolean; + procedure SetNOMBRE_COMERCIALIsNull(const aValue: Boolean); function GetVENCIMIENTO_FACTURASValue: Integer; procedure SetVENCIMIENTO_FACTURASValue(const aValue: Integer); - function GetBLOQUEADOValue: Integer; - procedure SetBLOQUEADOValue(const aValue: Integer); + function GetVENCIMIENTO_FACTURASIsNull: Boolean; + procedure SetVENCIMIENTO_FACTURASIsNull(const aValue: Boolean); + function GetBLOQUEADOValue: SmallInt; + procedure SetBLOQUEADOValue(const aValue: SmallInt); + function GetBLOQUEADOIsNull: Boolean; + procedure SetBLOQUEADOIsNull(const aValue: Boolean); + function GetREGIMEN_IVAValue: String; + procedure SetREGIMEN_IVAValue(const aValue: String); + function GetREGIMEN_IVAIsNull: Boolean; + procedure SetREGIMEN_IVAIsNull(const aValue: Boolean); function GetMOTIVO_BLOQUEOValue: String; procedure SetMOTIVO_BLOQUEOValue(const aValue: String); + function GetMOTIVO_BLOQUEOIsNull: Boolean; + procedure SetMOTIVO_BLOQUEOIsNull(const aValue: Boolean); + function GetRECARGO_EQUIVALENCIAValue: Integer; + procedure SetRECARGO_EQUIVALENCIAValue(const aValue: Integer); + function GetRECARGO_EQUIVALENCIAIsNull: Boolean; + procedure SetRECARGO_EQUIVALENCIAIsNull(const aValue: Boolean); + function GetID_TIPO_IVAValue: Integer; + procedure SetID_TIPO_IVAValue(const aValue: Integer); + function GetID_TIPO_IVAIsNull: Boolean; + procedure SetID_TIPO_IVAIsNull(const aValue: Boolean); + function GetID_FORMA_PAGOValue: Integer; + procedure SetID_FORMA_PAGOValue(const aValue: Integer); + function GetID_FORMA_PAGOIsNull: Boolean; + procedure SetID_FORMA_PAGOIsNull(const aValue: Boolean); + function GetTIENDA_WEBValue: SmallInt; + procedure SetTIENDA_WEBValue(const aValue: SmallInt); + function GetTIENDA_WEBIsNull: Boolean; + procedure SetTIENDA_WEBIsNull(const aValue: Boolean); { Properties } property ID: Integer read GetIDValue write SetIDValue; + property IDIsNull: Boolean read GetIDIsNull write SetIDIsNull; property ID_CATEGORIA: Integer read GetID_CATEGORIAValue write SetID_CATEGORIAValue; + property ID_CATEGORIAIsNull: Boolean read GetID_CATEGORIAIsNull write SetID_CATEGORIAIsNull; property NIF_CIF: String read GetNIF_CIFValue write SetNIF_CIFValue; + property NIF_CIFIsNull: Boolean read GetNIF_CIFIsNull write SetNIF_CIFIsNull; property NOMBRE: String read GetNOMBREValue write SetNOMBREValue; - property CALLE: String read GetCALLEValue write SetCALLEValue; + property NOMBREIsNull: Boolean read GetNOMBREIsNull write SetNOMBREIsNull; property PERSONA_CONTACTO: String read GetPERSONA_CONTACTOValue write SetPERSONA_CONTACTOValue; + property PERSONA_CONTACTOIsNull: Boolean read GetPERSONA_CONTACTOIsNull write SetPERSONA_CONTACTOIsNull; + property CALLE: String read GetCALLEValue write SetCALLEValue; + property CALLEIsNull: Boolean read GetCALLEIsNull write SetCALLEIsNull; property POBLACION: String read GetPOBLACIONValue write SetPOBLACIONValue; + property POBLACIONIsNull: Boolean read GetPOBLACIONIsNull write SetPOBLACIONIsNull; property PROVINCIA: String read GetPROVINCIAValue write SetPROVINCIAValue; + property PROVINCIAIsNull: Boolean read GetPROVINCIAIsNull write SetPROVINCIAIsNull; property CODIGO_POSTAL: String read GetCODIGO_POSTALValue write SetCODIGO_POSTALValue; + property CODIGO_POSTALIsNull: Boolean read GetCODIGO_POSTALIsNull write SetCODIGO_POSTALIsNull; property TELEFONO_1: String read GetTELEFONO_1Value write SetTELEFONO_1Value; + property TELEFONO_1IsNull: Boolean read GetTELEFONO_1IsNull write SetTELEFONO_1IsNull; property TELEFONO_2: String read GetTELEFONO_2Value write SetTELEFONO_2Value; + property TELEFONO_2IsNull: Boolean read GetTELEFONO_2IsNull write SetTELEFONO_2IsNull; property MOVIL_1: String read GetMOVIL_1Value write SetMOVIL_1Value; + property MOVIL_1IsNull: Boolean read GetMOVIL_1IsNull write SetMOVIL_1IsNull; property MOVIL_2: String read GetMOVIL_2Value write SetMOVIL_2Value; + property MOVIL_2IsNull: Boolean read GetMOVIL_2IsNull write SetMOVIL_2IsNull; property FAX: String read GetFAXValue write SetFAXValue; + property FAXIsNull: Boolean read GetFAXIsNull write SetFAXIsNull; property EMAIL_1: String read GetEMAIL_1Value write SetEMAIL_1Value; + property EMAIL_1IsNull: Boolean read GetEMAIL_1IsNull write SetEMAIL_1IsNull; property EMAIL_2: String read GetEMAIL_2Value write SetEMAIL_2Value; + property EMAIL_2IsNull: Boolean read GetEMAIL_2IsNull write SetEMAIL_2IsNull; property PAGINA_WEB: String read GetPAGINA_WEBValue write SetPAGINA_WEBValue; - property NOTAS: IROStrings read GetNOTASValue write SetNOTASValue; + property PAGINA_WEBIsNull: Boolean read GetPAGINA_WEBIsNull write SetPAGINA_WEBIsNull; + property NOTAS: IROStrings read GetNOTASValue; + property NOTASIsNull: Boolean read GetNOTASIsNull write SetNOTASIsNull; + property FECHA_ALTA: DateTime read GetFECHA_ALTAValue write SetFECHA_ALTAValue; + property FECHA_ALTAIsNull: Boolean read GetFECHA_ALTAIsNull write SetFECHA_ALTAIsNull; + property FECHA_MODIFICACION: DateTime read GetFECHA_MODIFICACIONValue write SetFECHA_MODIFICACIONValue; + property FECHA_MODIFICACIONIsNull: Boolean read GetFECHA_MODIFICACIONIsNull write SetFECHA_MODIFICACIONIsNull; property USUARIO: String read GetUSUARIOValue write SetUSUARIOValue; + property USUARIOIsNull: Boolean read GetUSUARIOIsNull write SetUSUARIOIsNull; property ID_EMPRESA: Integer read GetID_EMPRESAValue write SetID_EMPRESAValue; + property ID_EMPRESAIsNull: Boolean read GetID_EMPRESAIsNull write SetID_EMPRESAIsNull; property REFERENCIA: String read GetREFERENCIAValue write SetREFERENCIAValue; - property ID_TIPO_IVA: Integer read GetID_TIPO_IVAValue write SetID_TIPO_IVAValue; - property REGIMEN_IVA: String read GetREGIMEN_IVAValue write SetREGIMEN_IVAValue; - property ID_FORMA_PAGO: Integer read GetID_FORMA_PAGOValue write SetID_FORMA_PAGOValue; - property TIENDA_WEB: Integer read GetTIENDA_WEBValue write SetTIENDA_WEBValue; - property RECARGO_EQUIVALENCIA: Integer read GetRECARGO_EQUIVALENCIAValue write SetRECARGO_EQUIVALENCIAValue; + property REFERENCIAIsNull: Boolean read GetREFERENCIAIsNull write SetREFERENCIAIsNull; property GRUPO_CLIENTE: String read GetGRUPO_CLIENTEValue write SetGRUPO_CLIENTEValue; + property GRUPO_CLIENTEIsNull: Boolean read GetGRUPO_CLIENTEIsNull write SetGRUPO_CLIENTEIsNull; property NOMBRE_COMERCIAL: String read GetNOMBRE_COMERCIALValue write SetNOMBRE_COMERCIALValue; + property NOMBRE_COMERCIALIsNull: Boolean read GetNOMBRE_COMERCIALIsNull write SetNOMBRE_COMERCIALIsNull; property VENCIMIENTO_FACTURAS: Integer read GetVENCIMIENTO_FACTURASValue write SetVENCIMIENTO_FACTURASValue; - property BLOQUEADO: Integer read GetBLOQUEADOValue write SetBLOQUEADOValue; + property VENCIMIENTO_FACTURASIsNull: Boolean read GetVENCIMIENTO_FACTURASIsNull write SetVENCIMIENTO_FACTURASIsNull; + property BLOQUEADO: SmallInt read GetBLOQUEADOValue write SetBLOQUEADOValue; + property BLOQUEADOIsNull: Boolean read GetBLOQUEADOIsNull write SetBLOQUEADOIsNull; + property REGIMEN_IVA: String read GetREGIMEN_IVAValue write SetREGIMEN_IVAValue; + property REGIMEN_IVAIsNull: Boolean read GetREGIMEN_IVAIsNull write SetREGIMEN_IVAIsNull; property MOTIVO_BLOQUEO: String read GetMOTIVO_BLOQUEOValue write SetMOTIVO_BLOQUEOValue; + property MOTIVO_BLOQUEOIsNull: Boolean read GetMOTIVO_BLOQUEOIsNull write SetMOTIVO_BLOQUEOIsNull; + property RECARGO_EQUIVALENCIA: Integer read GetRECARGO_EQUIVALENCIAValue write SetRECARGO_EQUIVALENCIAValue; + property RECARGO_EQUIVALENCIAIsNull: Boolean read GetRECARGO_EQUIVALENCIAIsNull write SetRECARGO_EQUIVALENCIAIsNull; + property ID_TIPO_IVA: Integer read GetID_TIPO_IVAValue write SetID_TIPO_IVAValue; + property ID_TIPO_IVAIsNull: Boolean read GetID_TIPO_IVAIsNull write SetID_TIPO_IVAIsNull; + property ID_FORMA_PAGO: Integer read GetID_FORMA_PAGOValue write SetID_FORMA_PAGOValue; + property ID_FORMA_PAGOIsNull: Boolean read GetID_FORMA_PAGOIsNull write SetID_FORMA_PAGOIsNull; + property TIENDA_WEB: SmallInt read GetTIENDA_WEBValue write SetTIENDA_WEBValue; + property TIENDA_WEBIsNull: Boolean read GetTIENDA_WEBIsNull write SetTIENDA_WEBIsNull; end; { TClientesDataTableRules } TClientesDataTableRules = class(TDADataTableRules, IClientes) private + f_NOTAS: IROStrings; + procedure NOTAS_OnChange(Sender: TObject); protected { Property getters and setters } function GetIDValue: Integer; virtual; procedure SetIDValue(const aValue: Integer); virtual; + function GetIDIsNull: Boolean; virtual; + procedure SetIDIsNull(const aValue: Boolean); virtual; function GetID_CATEGORIAValue: Integer; virtual; procedure SetID_CATEGORIAValue(const aValue: Integer); virtual; + function GetID_CATEGORIAIsNull: Boolean; virtual; + procedure SetID_CATEGORIAIsNull(const aValue: Boolean); virtual; function GetNIF_CIFValue: String; virtual; procedure SetNIF_CIFValue(const aValue: String); virtual; + function GetNIF_CIFIsNull: Boolean; virtual; + procedure SetNIF_CIFIsNull(const aValue: Boolean); virtual; function GetNOMBREValue: String; virtual; procedure SetNOMBREValue(const aValue: String); virtual; - function GetCALLEValue: String; virtual; - procedure SetCALLEValue(const aValue: String); virtual; + function GetNOMBREIsNull: Boolean; virtual; + procedure SetNOMBREIsNull(const aValue: Boolean); virtual; function GetPERSONA_CONTACTOValue: String; virtual; procedure SetPERSONA_CONTACTOValue(const aValue: String); virtual; + function GetPERSONA_CONTACTOIsNull: Boolean; virtual; + procedure SetPERSONA_CONTACTOIsNull(const aValue: Boolean); virtual; + function GetCALLEValue: String; virtual; + procedure SetCALLEValue(const aValue: String); virtual; + function GetCALLEIsNull: Boolean; virtual; + procedure SetCALLEIsNull(const aValue: Boolean); virtual; function GetPOBLACIONValue: String; virtual; procedure SetPOBLACIONValue(const aValue: String); virtual; + function GetPOBLACIONIsNull: Boolean; virtual; + procedure SetPOBLACIONIsNull(const aValue: Boolean); virtual; function GetPROVINCIAValue: String; virtual; procedure SetPROVINCIAValue(const aValue: String); virtual; + function GetPROVINCIAIsNull: Boolean; virtual; + procedure SetPROVINCIAIsNull(const aValue: Boolean); virtual; function GetCODIGO_POSTALValue: String; virtual; procedure SetCODIGO_POSTALValue(const aValue: String); virtual; + function GetCODIGO_POSTALIsNull: Boolean; virtual; + procedure SetCODIGO_POSTALIsNull(const aValue: Boolean); virtual; function GetTELEFONO_1Value: String; virtual; procedure SetTELEFONO_1Value(const aValue: String); virtual; + function GetTELEFONO_1IsNull: Boolean; virtual; + procedure SetTELEFONO_1IsNull(const aValue: Boolean); virtual; function GetTELEFONO_2Value: String; virtual; procedure SetTELEFONO_2Value(const aValue: String); virtual; + function GetTELEFONO_2IsNull: Boolean; virtual; + procedure SetTELEFONO_2IsNull(const aValue: Boolean); virtual; function GetMOVIL_1Value: String; virtual; procedure SetMOVIL_1Value(const aValue: String); virtual; + function GetMOVIL_1IsNull: Boolean; virtual; + procedure SetMOVIL_1IsNull(const aValue: Boolean); virtual; function GetMOVIL_2Value: String; virtual; procedure SetMOVIL_2Value(const aValue: String); virtual; + function GetMOVIL_2IsNull: Boolean; virtual; + procedure SetMOVIL_2IsNull(const aValue: Boolean); virtual; function GetFAXValue: String; virtual; procedure SetFAXValue(const aValue: String); virtual; + function GetFAXIsNull: Boolean; virtual; + procedure SetFAXIsNull(const aValue: Boolean); virtual; function GetEMAIL_1Value: String; virtual; procedure SetEMAIL_1Value(const aValue: String); virtual; + function GetEMAIL_1IsNull: Boolean; virtual; + procedure SetEMAIL_1IsNull(const aValue: Boolean); virtual; function GetEMAIL_2Value: String; virtual; procedure SetEMAIL_2Value(const aValue: String); virtual; + function GetEMAIL_2IsNull: Boolean; virtual; + procedure SetEMAIL_2IsNull(const aValue: Boolean); virtual; function GetPAGINA_WEBValue: String; virtual; procedure SetPAGINA_WEBValue(const aValue: String); virtual; + function GetPAGINA_WEBIsNull: Boolean; virtual; + procedure SetPAGINA_WEBIsNull(const aValue: Boolean); virtual; function GetNOTASValue: IROStrings; virtual; - procedure SetNOTASValue(const aValue: IROStrings); virtual; + function GetNOTASIsNull: Boolean; virtual; + procedure SetNOTASIsNull(const aValue: Boolean); virtual; + function GetFECHA_ALTAValue: DateTime; virtual; + procedure SetFECHA_ALTAValue(const aValue: DateTime); virtual; + function GetFECHA_ALTAIsNull: Boolean; virtual; + procedure SetFECHA_ALTAIsNull(const aValue: Boolean); virtual; + function GetFECHA_MODIFICACIONValue: DateTime; virtual; + procedure SetFECHA_MODIFICACIONValue(const aValue: DateTime); virtual; + function GetFECHA_MODIFICACIONIsNull: Boolean; virtual; + procedure SetFECHA_MODIFICACIONIsNull(const aValue: Boolean); virtual; function GetUSUARIOValue: String; virtual; procedure SetUSUARIOValue(const aValue: String); virtual; + function GetUSUARIOIsNull: Boolean; virtual; + procedure SetUSUARIOIsNull(const aValue: Boolean); virtual; function GetID_EMPRESAValue: Integer; virtual; procedure SetID_EMPRESAValue(const aValue: Integer); virtual; + function GetID_EMPRESAIsNull: Boolean; virtual; + procedure SetID_EMPRESAIsNull(const aValue: Boolean); virtual; function GetREFERENCIAValue: String; virtual; procedure SetREFERENCIAValue(const aValue: String); virtual; - function GetID_TIPO_IVAValue: Integer; virtual; - procedure SetID_TIPO_IVAValue(const aValue: Integer); virtual; - function GetREGIMEN_IVAValue: String; virtual; - procedure SetREGIMEN_IVAValue(const aValue: String); virtual; - function GetID_FORMA_PAGOValue: Integer; virtual; - procedure SetID_FORMA_PAGOValue(const aValue: Integer); virtual; - function GetTIENDA_WEBValue: Integer; virtual; - procedure SetTIENDA_WEBValue(const aValue: Integer); virtual; - function GetRECARGO_EQUIVALENCIAValue: Integer; virtual; - procedure SetRECARGO_EQUIVALENCIAValue(const aValue: Integer); virtual; + function GetREFERENCIAIsNull: Boolean; virtual; + procedure SetREFERENCIAIsNull(const aValue: Boolean); virtual; function GetGRUPO_CLIENTEValue: String; virtual; procedure SetGRUPO_CLIENTEValue(const aValue: String); virtual; + function GetGRUPO_CLIENTEIsNull: Boolean; virtual; + procedure SetGRUPO_CLIENTEIsNull(const aValue: Boolean); virtual; function GetNOMBRE_COMERCIALValue: String; virtual; procedure SetNOMBRE_COMERCIALValue(const aValue: String); virtual; + function GetNOMBRE_COMERCIALIsNull: Boolean; virtual; + procedure SetNOMBRE_COMERCIALIsNull(const aValue: Boolean); virtual; function GetVENCIMIENTO_FACTURASValue: Integer; virtual; procedure SetVENCIMIENTO_FACTURASValue(const aValue: Integer); virtual; - function GetBLOQUEADOValue: Integer; virtual; - procedure SetBLOQUEADOValue(const aValue: Integer); virtual; + function GetVENCIMIENTO_FACTURASIsNull: Boolean; virtual; + procedure SetVENCIMIENTO_FACTURASIsNull(const aValue: Boolean); virtual; + function GetBLOQUEADOValue: SmallInt; virtual; + procedure SetBLOQUEADOValue(const aValue: SmallInt); virtual; + function GetBLOQUEADOIsNull: Boolean; virtual; + procedure SetBLOQUEADOIsNull(const aValue: Boolean); virtual; + function GetREGIMEN_IVAValue: String; virtual; + procedure SetREGIMEN_IVAValue(const aValue: String); virtual; + function GetREGIMEN_IVAIsNull: Boolean; virtual; + procedure SetREGIMEN_IVAIsNull(const aValue: Boolean); virtual; function GetMOTIVO_BLOQUEOValue: String; virtual; procedure SetMOTIVO_BLOQUEOValue(const aValue: String); virtual; + function GetMOTIVO_BLOQUEOIsNull: Boolean; virtual; + procedure SetMOTIVO_BLOQUEOIsNull(const aValue: Boolean); virtual; + function GetRECARGO_EQUIVALENCIAValue: Integer; virtual; + procedure SetRECARGO_EQUIVALENCIAValue(const aValue: Integer); virtual; + function GetRECARGO_EQUIVALENCIAIsNull: Boolean; virtual; + procedure SetRECARGO_EQUIVALENCIAIsNull(const aValue: Boolean); virtual; + function GetID_TIPO_IVAValue: Integer; virtual; + procedure SetID_TIPO_IVAValue(const aValue: Integer); virtual; + function GetID_TIPO_IVAIsNull: Boolean; virtual; + procedure SetID_TIPO_IVAIsNull(const aValue: Boolean); virtual; + function GetID_FORMA_PAGOValue: Integer; virtual; + procedure SetID_FORMA_PAGOValue(const aValue: Integer); virtual; + function GetID_FORMA_PAGOIsNull: Boolean; virtual; + procedure SetID_FORMA_PAGOIsNull(const aValue: Boolean); virtual; + function GetTIENDA_WEBValue: SmallInt; virtual; + procedure SetTIENDA_WEBValue(const aValue: SmallInt); virtual; + function GetTIENDA_WEBIsNull: Boolean; virtual; + procedure SetTIENDA_WEBIsNull(const aValue: Boolean); virtual; { Properties } property ID: Integer read GetIDValue write SetIDValue; + property IDIsNull: Boolean read GetIDIsNull write SetIDIsNull; property ID_CATEGORIA: Integer read GetID_CATEGORIAValue write SetID_CATEGORIAValue; + property ID_CATEGORIAIsNull: Boolean read GetID_CATEGORIAIsNull write SetID_CATEGORIAIsNull; property NIF_CIF: String read GetNIF_CIFValue write SetNIF_CIFValue; + property NIF_CIFIsNull: Boolean read GetNIF_CIFIsNull write SetNIF_CIFIsNull; property NOMBRE: String read GetNOMBREValue write SetNOMBREValue; - property CALLE: String read GetCALLEValue write SetCALLEValue; + property NOMBREIsNull: Boolean read GetNOMBREIsNull write SetNOMBREIsNull; property PERSONA_CONTACTO: String read GetPERSONA_CONTACTOValue write SetPERSONA_CONTACTOValue; + property PERSONA_CONTACTOIsNull: Boolean read GetPERSONA_CONTACTOIsNull write SetPERSONA_CONTACTOIsNull; + property CALLE: String read GetCALLEValue write SetCALLEValue; + property CALLEIsNull: Boolean read GetCALLEIsNull write SetCALLEIsNull; property POBLACION: String read GetPOBLACIONValue write SetPOBLACIONValue; + property POBLACIONIsNull: Boolean read GetPOBLACIONIsNull write SetPOBLACIONIsNull; property PROVINCIA: String read GetPROVINCIAValue write SetPROVINCIAValue; + property PROVINCIAIsNull: Boolean read GetPROVINCIAIsNull write SetPROVINCIAIsNull; property CODIGO_POSTAL: String read GetCODIGO_POSTALValue write SetCODIGO_POSTALValue; + property CODIGO_POSTALIsNull: Boolean read GetCODIGO_POSTALIsNull write SetCODIGO_POSTALIsNull; property TELEFONO_1: String read GetTELEFONO_1Value write SetTELEFONO_1Value; + property TELEFONO_1IsNull: Boolean read GetTELEFONO_1IsNull write SetTELEFONO_1IsNull; property TELEFONO_2: String read GetTELEFONO_2Value write SetTELEFONO_2Value; + property TELEFONO_2IsNull: Boolean read GetTELEFONO_2IsNull write SetTELEFONO_2IsNull; property MOVIL_1: String read GetMOVIL_1Value write SetMOVIL_1Value; + property MOVIL_1IsNull: Boolean read GetMOVIL_1IsNull write SetMOVIL_1IsNull; property MOVIL_2: String read GetMOVIL_2Value write SetMOVIL_2Value; + property MOVIL_2IsNull: Boolean read GetMOVIL_2IsNull write SetMOVIL_2IsNull; property FAX: String read GetFAXValue write SetFAXValue; + property FAXIsNull: Boolean read GetFAXIsNull write SetFAXIsNull; property EMAIL_1: String read GetEMAIL_1Value write SetEMAIL_1Value; + property EMAIL_1IsNull: Boolean read GetEMAIL_1IsNull write SetEMAIL_1IsNull; property EMAIL_2: String read GetEMAIL_2Value write SetEMAIL_2Value; + property EMAIL_2IsNull: Boolean read GetEMAIL_2IsNull write SetEMAIL_2IsNull; property PAGINA_WEB: String read GetPAGINA_WEBValue write SetPAGINA_WEBValue; - property NOTAS: IROStrings read GetNOTASValue write SetNOTASValue; + property PAGINA_WEBIsNull: Boolean read GetPAGINA_WEBIsNull write SetPAGINA_WEBIsNull; + property NOTAS: IROStrings read GetNOTASValue; + property NOTASIsNull: Boolean read GetNOTASIsNull write SetNOTASIsNull; + property FECHA_ALTA: DateTime read GetFECHA_ALTAValue write SetFECHA_ALTAValue; + property FECHA_ALTAIsNull: Boolean read GetFECHA_ALTAIsNull write SetFECHA_ALTAIsNull; + property FECHA_MODIFICACION: DateTime read GetFECHA_MODIFICACIONValue write SetFECHA_MODIFICACIONValue; + property FECHA_MODIFICACIONIsNull: Boolean read GetFECHA_MODIFICACIONIsNull write SetFECHA_MODIFICACIONIsNull; property USUARIO: String read GetUSUARIOValue write SetUSUARIOValue; + property USUARIOIsNull: Boolean read GetUSUARIOIsNull write SetUSUARIOIsNull; property ID_EMPRESA: Integer read GetID_EMPRESAValue write SetID_EMPRESAValue; + property ID_EMPRESAIsNull: Boolean read GetID_EMPRESAIsNull write SetID_EMPRESAIsNull; property REFERENCIA: String read GetREFERENCIAValue write SetREFERENCIAValue; - property ID_TIPO_IVA: Integer read GetID_TIPO_IVAValue write SetID_TIPO_IVAValue; - property REGIMEN_IVA: String read GetREGIMEN_IVAValue write SetREGIMEN_IVAValue; - property ID_FORMA_PAGO: Integer read GetID_FORMA_PAGOValue write SetID_FORMA_PAGOValue; - property TIENDA_WEB: Integer read GetTIENDA_WEBValue write SetTIENDA_WEBValue; - property RECARGO_EQUIVALENCIA: Integer read GetRECARGO_EQUIVALENCIAValue write SetRECARGO_EQUIVALENCIAValue; + property REFERENCIAIsNull: Boolean read GetREFERENCIAIsNull write SetREFERENCIAIsNull; property GRUPO_CLIENTE: String read GetGRUPO_CLIENTEValue write SetGRUPO_CLIENTEValue; + property GRUPO_CLIENTEIsNull: Boolean read GetGRUPO_CLIENTEIsNull write SetGRUPO_CLIENTEIsNull; property NOMBRE_COMERCIAL: String read GetNOMBRE_COMERCIALValue write SetNOMBRE_COMERCIALValue; + property NOMBRE_COMERCIALIsNull: Boolean read GetNOMBRE_COMERCIALIsNull write SetNOMBRE_COMERCIALIsNull; property VENCIMIENTO_FACTURAS: Integer read GetVENCIMIENTO_FACTURASValue write SetVENCIMIENTO_FACTURASValue; - property BLOQUEADO: Integer read GetBLOQUEADOValue write SetBLOQUEADOValue; + property VENCIMIENTO_FACTURASIsNull: Boolean read GetVENCIMIENTO_FACTURASIsNull write SetVENCIMIENTO_FACTURASIsNull; + property BLOQUEADO: SmallInt read GetBLOQUEADOValue write SetBLOQUEADOValue; + property BLOQUEADOIsNull: Boolean read GetBLOQUEADOIsNull write SetBLOQUEADOIsNull; + property REGIMEN_IVA: String read GetREGIMEN_IVAValue write SetREGIMEN_IVAValue; + property REGIMEN_IVAIsNull: Boolean read GetREGIMEN_IVAIsNull write SetREGIMEN_IVAIsNull; property MOTIVO_BLOQUEO: String read GetMOTIVO_BLOQUEOValue write SetMOTIVO_BLOQUEOValue; + property MOTIVO_BLOQUEOIsNull: Boolean read GetMOTIVO_BLOQUEOIsNull write SetMOTIVO_BLOQUEOIsNull; + property RECARGO_EQUIVALENCIA: Integer read GetRECARGO_EQUIVALENCIAValue write SetRECARGO_EQUIVALENCIAValue; + property RECARGO_EQUIVALENCIAIsNull: Boolean read GetRECARGO_EQUIVALENCIAIsNull write SetRECARGO_EQUIVALENCIAIsNull; + property ID_TIPO_IVA: Integer read GetID_TIPO_IVAValue write SetID_TIPO_IVAValue; + property ID_TIPO_IVAIsNull: Boolean read GetID_TIPO_IVAIsNull write SetID_TIPO_IVAIsNull; + property ID_FORMA_PAGO: Integer read GetID_FORMA_PAGOValue write SetID_FORMA_PAGOValue; + property ID_FORMA_PAGOIsNull: Boolean read GetID_FORMA_PAGOIsNull write SetID_FORMA_PAGOIsNull; + property TIENDA_WEB: SmallInt read GetTIENDA_WEBValue write SetTIENDA_WEBValue; + property TIENDA_WEBIsNull: Boolean read GetTIENDA_WEBIsNull write SetTIENDA_WEBIsNull; public constructor Create(aDataTable: TDADataTable); override; @@ -852,206 +1311,416 @@ type { IProveedores } IProveedores = interface(IDAStronglyTypedDataTable) - ['{3B317406-09C8-4CBA-B708-F2C52CFEAB09}'] + ['{A95870C3-18C8-4F26-A154-FF450D178739}'] { Property getters and setters } function GetIDValue: Integer; procedure SetIDValue(const aValue: Integer); + function GetIDIsNull: Boolean; + procedure SetIDIsNull(const aValue: Boolean); function GetID_CATEGORIAValue: Integer; procedure SetID_CATEGORIAValue(const aValue: Integer); + function GetID_CATEGORIAIsNull: Boolean; + procedure SetID_CATEGORIAIsNull(const aValue: Boolean); function GetNIF_CIFValue: String; procedure SetNIF_CIFValue(const aValue: String); + function GetNIF_CIFIsNull: Boolean; + procedure SetNIF_CIFIsNull(const aValue: Boolean); function GetNOMBREValue: String; procedure SetNOMBREValue(const aValue: String); - function GetCALLEValue: String; - procedure SetCALLEValue(const aValue: String); + function GetNOMBREIsNull: Boolean; + procedure SetNOMBREIsNull(const aValue: Boolean); function GetPERSONA_CONTACTOValue: String; procedure SetPERSONA_CONTACTOValue(const aValue: String); + function GetPERSONA_CONTACTOIsNull: Boolean; + procedure SetPERSONA_CONTACTOIsNull(const aValue: Boolean); + function GetCALLEValue: String; + procedure SetCALLEValue(const aValue: String); + function GetCALLEIsNull: Boolean; + procedure SetCALLEIsNull(const aValue: Boolean); function GetPOBLACIONValue: String; procedure SetPOBLACIONValue(const aValue: String); + function GetPOBLACIONIsNull: Boolean; + procedure SetPOBLACIONIsNull(const aValue: Boolean); function GetPROVINCIAValue: String; procedure SetPROVINCIAValue(const aValue: String); + function GetPROVINCIAIsNull: Boolean; + procedure SetPROVINCIAIsNull(const aValue: Boolean); function GetCODIGO_POSTALValue: String; procedure SetCODIGO_POSTALValue(const aValue: String); + function GetCODIGO_POSTALIsNull: Boolean; + procedure SetCODIGO_POSTALIsNull(const aValue: Boolean); function GetTELEFONO_1Value: String; procedure SetTELEFONO_1Value(const aValue: String); + function GetTELEFONO_1IsNull: Boolean; + procedure SetTELEFONO_1IsNull(const aValue: Boolean); function GetTELEFONO_2Value: String; procedure SetTELEFONO_2Value(const aValue: String); + function GetTELEFONO_2IsNull: Boolean; + procedure SetTELEFONO_2IsNull(const aValue: Boolean); function GetMOVIL_1Value: String; procedure SetMOVIL_1Value(const aValue: String); + function GetMOVIL_1IsNull: Boolean; + procedure SetMOVIL_1IsNull(const aValue: Boolean); function GetMOVIL_2Value: String; procedure SetMOVIL_2Value(const aValue: String); + function GetMOVIL_2IsNull: Boolean; + procedure SetMOVIL_2IsNull(const aValue: Boolean); function GetFAXValue: String; procedure SetFAXValue(const aValue: String); + function GetFAXIsNull: Boolean; + procedure SetFAXIsNull(const aValue: Boolean); function GetEMAIL_1Value: String; procedure SetEMAIL_1Value(const aValue: String); + function GetEMAIL_1IsNull: Boolean; + procedure SetEMAIL_1IsNull(const aValue: Boolean); function GetEMAIL_2Value: String; procedure SetEMAIL_2Value(const aValue: String); + function GetEMAIL_2IsNull: Boolean; + procedure SetEMAIL_2IsNull(const aValue: Boolean); function GetPAGINA_WEBValue: String; procedure SetPAGINA_WEBValue(const aValue: String); + function GetPAGINA_WEBIsNull: Boolean; + procedure SetPAGINA_WEBIsNull(const aValue: Boolean); function GetNOTASValue: IROStrings; - procedure SetNOTASValue(const aValue: IROStrings); + function GetNOTASIsNull: Boolean; + procedure SetNOTASIsNull(const aValue: Boolean); + function GetFECHA_ALTAValue: DateTime; + procedure SetFECHA_ALTAValue(const aValue: DateTime); + function GetFECHA_ALTAIsNull: Boolean; + procedure SetFECHA_ALTAIsNull(const aValue: Boolean); + function GetFECHA_MODIFICACIONValue: DateTime; + procedure SetFECHA_MODIFICACIONValue(const aValue: DateTime); + function GetFECHA_MODIFICACIONIsNull: Boolean; + procedure SetFECHA_MODIFICACIONIsNull(const aValue: Boolean); function GetUSUARIOValue: String; procedure SetUSUARIOValue(const aValue: String); + function GetUSUARIOIsNull: Boolean; + procedure SetUSUARIOIsNull(const aValue: Boolean); function GetID_EMPRESAValue: Integer; procedure SetID_EMPRESAValue(const aValue: Integer); + function GetID_EMPRESAIsNull: Boolean; + procedure SetID_EMPRESAIsNull(const aValue: Boolean); function GetREFERENCIAValue: String; procedure SetREFERENCIAValue(const aValue: String); - function GetID_TIPO_IVAValue: Integer; - procedure SetID_TIPO_IVAValue(const aValue: Integer); - function GetREGIMEN_IVAValue: String; - procedure SetREGIMEN_IVAValue(const aValue: String); - function GetID_FORMA_PAGOValue: Integer; - procedure SetID_FORMA_PAGOValue(const aValue: Integer); - function GetTIENDA_WEBValue: Integer; - procedure SetTIENDA_WEBValue(const aValue: Integer); + function GetREFERENCIAIsNull: Boolean; + procedure SetREFERENCIAIsNull(const aValue: Boolean); function GetDESCUENTOValue: Float; procedure SetDESCUENTOValue(const aValue: Float); + function GetDESCUENTOIsNull: Boolean; + procedure SetDESCUENTOIsNull(const aValue: Boolean); function GetDESCRIPCION_PROVEEDORValue: String; procedure SetDESCRIPCION_PROVEEDORValue(const aValue: String); + function GetDESCRIPCION_PROVEEDORIsNull: Boolean; + procedure SetDESCRIPCION_PROVEEDORIsNull(const aValue: Boolean); function GetCODIGO_ASIGNADOValue: String; procedure SetCODIGO_ASIGNADOValue(const aValue: String); - function GetHOMOLOGADOValue: Integer; - procedure SetHOMOLOGADOValue(const aValue: Integer); - function GetCERTIFICACIONValue: String; - procedure SetCERTIFICACIONValue(const aValue: String); + function GetCODIGO_ASIGNADOIsNull: Boolean; + procedure SetCODIGO_ASIGNADOIsNull(const aValue: Boolean); function GetGRUPO_PROVEEDORValue: String; procedure SetGRUPO_PROVEEDORValue(const aValue: String); + function GetGRUPO_PROVEEDORIsNull: Boolean; + procedure SetGRUPO_PROVEEDORIsNull(const aValue: Boolean); + function GetREGIMEN_IVAValue: String; + procedure SetREGIMEN_IVAValue(const aValue: String); + function GetREGIMEN_IVAIsNull: Boolean; + procedure SetREGIMEN_IVAIsNull(const aValue: Boolean); + function GetID_TIPO_IVAValue: Integer; + procedure SetID_TIPO_IVAValue(const aValue: Integer); + function GetID_TIPO_IVAIsNull: Boolean; + procedure SetID_TIPO_IVAIsNull(const aValue: Boolean); + function GetID_FORMA_PAGOValue: Integer; + procedure SetID_FORMA_PAGOValue(const aValue: Integer); + function GetID_FORMA_PAGOIsNull: Boolean; + procedure SetID_FORMA_PAGOIsNull(const aValue: Boolean); + function GetTIENDA_WEBValue: SmallInt; + procedure SetTIENDA_WEBValue(const aValue: SmallInt); + function GetTIENDA_WEBIsNull: Boolean; + procedure SetTIENDA_WEBIsNull(const aValue: Boolean); + function GetHOMOLOGADOValue: SmallInt; + procedure SetHOMOLOGADOValue(const aValue: SmallInt); + function GetHOMOLOGADOIsNull: Boolean; + procedure SetHOMOLOGADOIsNull(const aValue: Boolean); + function GetCERTIFICACIONValue: String; + procedure SetCERTIFICACIONValue(const aValue: String); + function GetCERTIFICACIONIsNull: Boolean; + procedure SetCERTIFICACIONIsNull(const aValue: Boolean); { Properties } property ID: Integer read GetIDValue write SetIDValue; + property IDIsNull: Boolean read GetIDIsNull write SetIDIsNull; property ID_CATEGORIA: Integer read GetID_CATEGORIAValue write SetID_CATEGORIAValue; + property ID_CATEGORIAIsNull: Boolean read GetID_CATEGORIAIsNull write SetID_CATEGORIAIsNull; property NIF_CIF: String read GetNIF_CIFValue write SetNIF_CIFValue; + property NIF_CIFIsNull: Boolean read GetNIF_CIFIsNull write SetNIF_CIFIsNull; property NOMBRE: String read GetNOMBREValue write SetNOMBREValue; - property CALLE: String read GetCALLEValue write SetCALLEValue; + property NOMBREIsNull: Boolean read GetNOMBREIsNull write SetNOMBREIsNull; property PERSONA_CONTACTO: String read GetPERSONA_CONTACTOValue write SetPERSONA_CONTACTOValue; + property PERSONA_CONTACTOIsNull: Boolean read GetPERSONA_CONTACTOIsNull write SetPERSONA_CONTACTOIsNull; + property CALLE: String read GetCALLEValue write SetCALLEValue; + property CALLEIsNull: Boolean read GetCALLEIsNull write SetCALLEIsNull; property POBLACION: String read GetPOBLACIONValue write SetPOBLACIONValue; + property POBLACIONIsNull: Boolean read GetPOBLACIONIsNull write SetPOBLACIONIsNull; property PROVINCIA: String read GetPROVINCIAValue write SetPROVINCIAValue; + property PROVINCIAIsNull: Boolean read GetPROVINCIAIsNull write SetPROVINCIAIsNull; property CODIGO_POSTAL: String read GetCODIGO_POSTALValue write SetCODIGO_POSTALValue; + property CODIGO_POSTALIsNull: Boolean read GetCODIGO_POSTALIsNull write SetCODIGO_POSTALIsNull; property TELEFONO_1: String read GetTELEFONO_1Value write SetTELEFONO_1Value; + property TELEFONO_1IsNull: Boolean read GetTELEFONO_1IsNull write SetTELEFONO_1IsNull; property TELEFONO_2: String read GetTELEFONO_2Value write SetTELEFONO_2Value; + property TELEFONO_2IsNull: Boolean read GetTELEFONO_2IsNull write SetTELEFONO_2IsNull; property MOVIL_1: String read GetMOVIL_1Value write SetMOVIL_1Value; + property MOVIL_1IsNull: Boolean read GetMOVIL_1IsNull write SetMOVIL_1IsNull; property MOVIL_2: String read GetMOVIL_2Value write SetMOVIL_2Value; + property MOVIL_2IsNull: Boolean read GetMOVIL_2IsNull write SetMOVIL_2IsNull; property FAX: String read GetFAXValue write SetFAXValue; + property FAXIsNull: Boolean read GetFAXIsNull write SetFAXIsNull; property EMAIL_1: String read GetEMAIL_1Value write SetEMAIL_1Value; + property EMAIL_1IsNull: Boolean read GetEMAIL_1IsNull write SetEMAIL_1IsNull; property EMAIL_2: String read GetEMAIL_2Value write SetEMAIL_2Value; + property EMAIL_2IsNull: Boolean read GetEMAIL_2IsNull write SetEMAIL_2IsNull; property PAGINA_WEB: String read GetPAGINA_WEBValue write SetPAGINA_WEBValue; - property NOTAS: IROStrings read GetNOTASValue write SetNOTASValue; + property PAGINA_WEBIsNull: Boolean read GetPAGINA_WEBIsNull write SetPAGINA_WEBIsNull; + property NOTAS: IROStrings read GetNOTASValue; + property NOTASIsNull: Boolean read GetNOTASIsNull write SetNOTASIsNull; + property FECHA_ALTA: DateTime read GetFECHA_ALTAValue write SetFECHA_ALTAValue; + property FECHA_ALTAIsNull: Boolean read GetFECHA_ALTAIsNull write SetFECHA_ALTAIsNull; + property FECHA_MODIFICACION: DateTime read GetFECHA_MODIFICACIONValue write SetFECHA_MODIFICACIONValue; + property FECHA_MODIFICACIONIsNull: Boolean read GetFECHA_MODIFICACIONIsNull write SetFECHA_MODIFICACIONIsNull; property USUARIO: String read GetUSUARIOValue write SetUSUARIOValue; + property USUARIOIsNull: Boolean read GetUSUARIOIsNull write SetUSUARIOIsNull; property ID_EMPRESA: Integer read GetID_EMPRESAValue write SetID_EMPRESAValue; + property ID_EMPRESAIsNull: Boolean read GetID_EMPRESAIsNull write SetID_EMPRESAIsNull; property REFERENCIA: String read GetREFERENCIAValue write SetREFERENCIAValue; - property ID_TIPO_IVA: Integer read GetID_TIPO_IVAValue write SetID_TIPO_IVAValue; - property REGIMEN_IVA: String read GetREGIMEN_IVAValue write SetREGIMEN_IVAValue; - property ID_FORMA_PAGO: Integer read GetID_FORMA_PAGOValue write SetID_FORMA_PAGOValue; - property TIENDA_WEB: Integer read GetTIENDA_WEBValue write SetTIENDA_WEBValue; + property REFERENCIAIsNull: Boolean read GetREFERENCIAIsNull write SetREFERENCIAIsNull; property DESCUENTO: Float read GetDESCUENTOValue write SetDESCUENTOValue; + property DESCUENTOIsNull: Boolean read GetDESCUENTOIsNull write SetDESCUENTOIsNull; property DESCRIPCION_PROVEEDOR: String read GetDESCRIPCION_PROVEEDORValue write SetDESCRIPCION_PROVEEDORValue; + property DESCRIPCION_PROVEEDORIsNull: Boolean read GetDESCRIPCION_PROVEEDORIsNull write SetDESCRIPCION_PROVEEDORIsNull; property CODIGO_ASIGNADO: String read GetCODIGO_ASIGNADOValue write SetCODIGO_ASIGNADOValue; - property HOMOLOGADO: Integer read GetHOMOLOGADOValue write SetHOMOLOGADOValue; - property CERTIFICACION: String read GetCERTIFICACIONValue write SetCERTIFICACIONValue; + property CODIGO_ASIGNADOIsNull: Boolean read GetCODIGO_ASIGNADOIsNull write SetCODIGO_ASIGNADOIsNull; property GRUPO_PROVEEDOR: String read GetGRUPO_PROVEEDORValue write SetGRUPO_PROVEEDORValue; + property GRUPO_PROVEEDORIsNull: Boolean read GetGRUPO_PROVEEDORIsNull write SetGRUPO_PROVEEDORIsNull; + property REGIMEN_IVA: String read GetREGIMEN_IVAValue write SetREGIMEN_IVAValue; + property REGIMEN_IVAIsNull: Boolean read GetREGIMEN_IVAIsNull write SetREGIMEN_IVAIsNull; + property ID_TIPO_IVA: Integer read GetID_TIPO_IVAValue write SetID_TIPO_IVAValue; + property ID_TIPO_IVAIsNull: Boolean read GetID_TIPO_IVAIsNull write SetID_TIPO_IVAIsNull; + property ID_FORMA_PAGO: Integer read GetID_FORMA_PAGOValue write SetID_FORMA_PAGOValue; + property ID_FORMA_PAGOIsNull: Boolean read GetID_FORMA_PAGOIsNull write SetID_FORMA_PAGOIsNull; + property TIENDA_WEB: SmallInt read GetTIENDA_WEBValue write SetTIENDA_WEBValue; + property TIENDA_WEBIsNull: Boolean read GetTIENDA_WEBIsNull write SetTIENDA_WEBIsNull; + property HOMOLOGADO: SmallInt read GetHOMOLOGADOValue write SetHOMOLOGADOValue; + property HOMOLOGADOIsNull: Boolean read GetHOMOLOGADOIsNull write SetHOMOLOGADOIsNull; + property CERTIFICACION: String read GetCERTIFICACIONValue write SetCERTIFICACIONValue; + property CERTIFICACIONIsNull: Boolean read GetCERTIFICACIONIsNull write SetCERTIFICACIONIsNull; end; { TProveedoresDataTableRules } TProveedoresDataTableRules = class(TDADataTableRules, IProveedores) private + f_NOTAS: IROStrings; + procedure NOTAS_OnChange(Sender: TObject); protected { Property getters and setters } function GetIDValue: Integer; virtual; procedure SetIDValue(const aValue: Integer); virtual; + function GetIDIsNull: Boolean; virtual; + procedure SetIDIsNull(const aValue: Boolean); virtual; function GetID_CATEGORIAValue: Integer; virtual; procedure SetID_CATEGORIAValue(const aValue: Integer); virtual; + function GetID_CATEGORIAIsNull: Boolean; virtual; + procedure SetID_CATEGORIAIsNull(const aValue: Boolean); virtual; function GetNIF_CIFValue: String; virtual; procedure SetNIF_CIFValue(const aValue: String); virtual; + function GetNIF_CIFIsNull: Boolean; virtual; + procedure SetNIF_CIFIsNull(const aValue: Boolean); virtual; function GetNOMBREValue: String; virtual; procedure SetNOMBREValue(const aValue: String); virtual; - function GetCALLEValue: String; virtual; - procedure SetCALLEValue(const aValue: String); virtual; + function GetNOMBREIsNull: Boolean; virtual; + procedure SetNOMBREIsNull(const aValue: Boolean); virtual; function GetPERSONA_CONTACTOValue: String; virtual; procedure SetPERSONA_CONTACTOValue(const aValue: String); virtual; + function GetPERSONA_CONTACTOIsNull: Boolean; virtual; + procedure SetPERSONA_CONTACTOIsNull(const aValue: Boolean); virtual; + function GetCALLEValue: String; virtual; + procedure SetCALLEValue(const aValue: String); virtual; + function GetCALLEIsNull: Boolean; virtual; + procedure SetCALLEIsNull(const aValue: Boolean); virtual; function GetPOBLACIONValue: String; virtual; procedure SetPOBLACIONValue(const aValue: String); virtual; + function GetPOBLACIONIsNull: Boolean; virtual; + procedure SetPOBLACIONIsNull(const aValue: Boolean); virtual; function GetPROVINCIAValue: String; virtual; procedure SetPROVINCIAValue(const aValue: String); virtual; + function GetPROVINCIAIsNull: Boolean; virtual; + procedure SetPROVINCIAIsNull(const aValue: Boolean); virtual; function GetCODIGO_POSTALValue: String; virtual; procedure SetCODIGO_POSTALValue(const aValue: String); virtual; + function GetCODIGO_POSTALIsNull: Boolean; virtual; + procedure SetCODIGO_POSTALIsNull(const aValue: Boolean); virtual; function GetTELEFONO_1Value: String; virtual; procedure SetTELEFONO_1Value(const aValue: String); virtual; + function GetTELEFONO_1IsNull: Boolean; virtual; + procedure SetTELEFONO_1IsNull(const aValue: Boolean); virtual; function GetTELEFONO_2Value: String; virtual; procedure SetTELEFONO_2Value(const aValue: String); virtual; + function GetTELEFONO_2IsNull: Boolean; virtual; + procedure SetTELEFONO_2IsNull(const aValue: Boolean); virtual; function GetMOVIL_1Value: String; virtual; procedure SetMOVIL_1Value(const aValue: String); virtual; + function GetMOVIL_1IsNull: Boolean; virtual; + procedure SetMOVIL_1IsNull(const aValue: Boolean); virtual; function GetMOVIL_2Value: String; virtual; procedure SetMOVIL_2Value(const aValue: String); virtual; + function GetMOVIL_2IsNull: Boolean; virtual; + procedure SetMOVIL_2IsNull(const aValue: Boolean); virtual; function GetFAXValue: String; virtual; procedure SetFAXValue(const aValue: String); virtual; + function GetFAXIsNull: Boolean; virtual; + procedure SetFAXIsNull(const aValue: Boolean); virtual; function GetEMAIL_1Value: String; virtual; procedure SetEMAIL_1Value(const aValue: String); virtual; + function GetEMAIL_1IsNull: Boolean; virtual; + procedure SetEMAIL_1IsNull(const aValue: Boolean); virtual; function GetEMAIL_2Value: String; virtual; procedure SetEMAIL_2Value(const aValue: String); virtual; + function GetEMAIL_2IsNull: Boolean; virtual; + procedure SetEMAIL_2IsNull(const aValue: Boolean); virtual; function GetPAGINA_WEBValue: String; virtual; procedure SetPAGINA_WEBValue(const aValue: String); virtual; + function GetPAGINA_WEBIsNull: Boolean; virtual; + procedure SetPAGINA_WEBIsNull(const aValue: Boolean); virtual; function GetNOTASValue: IROStrings; virtual; - procedure SetNOTASValue(const aValue: IROStrings); virtual; + function GetNOTASIsNull: Boolean; virtual; + procedure SetNOTASIsNull(const aValue: Boolean); virtual; + function GetFECHA_ALTAValue: DateTime; virtual; + procedure SetFECHA_ALTAValue(const aValue: DateTime); virtual; + function GetFECHA_ALTAIsNull: Boolean; virtual; + procedure SetFECHA_ALTAIsNull(const aValue: Boolean); virtual; + function GetFECHA_MODIFICACIONValue: DateTime; virtual; + procedure SetFECHA_MODIFICACIONValue(const aValue: DateTime); virtual; + function GetFECHA_MODIFICACIONIsNull: Boolean; virtual; + procedure SetFECHA_MODIFICACIONIsNull(const aValue: Boolean); virtual; function GetUSUARIOValue: String; virtual; procedure SetUSUARIOValue(const aValue: String); virtual; + function GetUSUARIOIsNull: Boolean; virtual; + procedure SetUSUARIOIsNull(const aValue: Boolean); virtual; function GetID_EMPRESAValue: Integer; virtual; procedure SetID_EMPRESAValue(const aValue: Integer); virtual; + function GetID_EMPRESAIsNull: Boolean; virtual; + procedure SetID_EMPRESAIsNull(const aValue: Boolean); virtual; function GetREFERENCIAValue: String; virtual; procedure SetREFERENCIAValue(const aValue: String); virtual; - function GetID_TIPO_IVAValue: Integer; virtual; - procedure SetID_TIPO_IVAValue(const aValue: Integer); virtual; - function GetREGIMEN_IVAValue: String; virtual; - procedure SetREGIMEN_IVAValue(const aValue: String); virtual; - function GetID_FORMA_PAGOValue: Integer; virtual; - procedure SetID_FORMA_PAGOValue(const aValue: Integer); virtual; - function GetTIENDA_WEBValue: Integer; virtual; - procedure SetTIENDA_WEBValue(const aValue: Integer); virtual; + function GetREFERENCIAIsNull: Boolean; virtual; + procedure SetREFERENCIAIsNull(const aValue: Boolean); virtual; function GetDESCUENTOValue: Float; virtual; procedure SetDESCUENTOValue(const aValue: Float); virtual; + function GetDESCUENTOIsNull: Boolean; virtual; + procedure SetDESCUENTOIsNull(const aValue: Boolean); virtual; function GetDESCRIPCION_PROVEEDORValue: String; virtual; procedure SetDESCRIPCION_PROVEEDORValue(const aValue: String); virtual; + function GetDESCRIPCION_PROVEEDORIsNull: Boolean; virtual; + procedure SetDESCRIPCION_PROVEEDORIsNull(const aValue: Boolean); virtual; function GetCODIGO_ASIGNADOValue: String; virtual; procedure SetCODIGO_ASIGNADOValue(const aValue: String); virtual; - function GetHOMOLOGADOValue: Integer; virtual; - procedure SetHOMOLOGADOValue(const aValue: Integer); virtual; - function GetCERTIFICACIONValue: String; virtual; - procedure SetCERTIFICACIONValue(const aValue: String); virtual; + function GetCODIGO_ASIGNADOIsNull: Boolean; virtual; + procedure SetCODIGO_ASIGNADOIsNull(const aValue: Boolean); virtual; function GetGRUPO_PROVEEDORValue: String; virtual; procedure SetGRUPO_PROVEEDORValue(const aValue: String); virtual; + function GetGRUPO_PROVEEDORIsNull: Boolean; virtual; + procedure SetGRUPO_PROVEEDORIsNull(const aValue: Boolean); virtual; + function GetREGIMEN_IVAValue: String; virtual; + procedure SetREGIMEN_IVAValue(const aValue: String); virtual; + function GetREGIMEN_IVAIsNull: Boolean; virtual; + procedure SetREGIMEN_IVAIsNull(const aValue: Boolean); virtual; + function GetID_TIPO_IVAValue: Integer; virtual; + procedure SetID_TIPO_IVAValue(const aValue: Integer); virtual; + function GetID_TIPO_IVAIsNull: Boolean; virtual; + procedure SetID_TIPO_IVAIsNull(const aValue: Boolean); virtual; + function GetID_FORMA_PAGOValue: Integer; virtual; + procedure SetID_FORMA_PAGOValue(const aValue: Integer); virtual; + function GetID_FORMA_PAGOIsNull: Boolean; virtual; + procedure SetID_FORMA_PAGOIsNull(const aValue: Boolean); virtual; + function GetTIENDA_WEBValue: SmallInt; virtual; + procedure SetTIENDA_WEBValue(const aValue: SmallInt); virtual; + function GetTIENDA_WEBIsNull: Boolean; virtual; + procedure SetTIENDA_WEBIsNull(const aValue: Boolean); virtual; + function GetHOMOLOGADOValue: SmallInt; virtual; + procedure SetHOMOLOGADOValue(const aValue: SmallInt); virtual; + function GetHOMOLOGADOIsNull: Boolean; virtual; + procedure SetHOMOLOGADOIsNull(const aValue: Boolean); virtual; + function GetCERTIFICACIONValue: String; virtual; + procedure SetCERTIFICACIONValue(const aValue: String); virtual; + function GetCERTIFICACIONIsNull: Boolean; virtual; + procedure SetCERTIFICACIONIsNull(const aValue: Boolean); virtual; { Properties } property ID: Integer read GetIDValue write SetIDValue; + property IDIsNull: Boolean read GetIDIsNull write SetIDIsNull; property ID_CATEGORIA: Integer read GetID_CATEGORIAValue write SetID_CATEGORIAValue; + property ID_CATEGORIAIsNull: Boolean read GetID_CATEGORIAIsNull write SetID_CATEGORIAIsNull; property NIF_CIF: String read GetNIF_CIFValue write SetNIF_CIFValue; + property NIF_CIFIsNull: Boolean read GetNIF_CIFIsNull write SetNIF_CIFIsNull; property NOMBRE: String read GetNOMBREValue write SetNOMBREValue; - property CALLE: String read GetCALLEValue write SetCALLEValue; + property NOMBREIsNull: Boolean read GetNOMBREIsNull write SetNOMBREIsNull; property PERSONA_CONTACTO: String read GetPERSONA_CONTACTOValue write SetPERSONA_CONTACTOValue; + property PERSONA_CONTACTOIsNull: Boolean read GetPERSONA_CONTACTOIsNull write SetPERSONA_CONTACTOIsNull; + property CALLE: String read GetCALLEValue write SetCALLEValue; + property CALLEIsNull: Boolean read GetCALLEIsNull write SetCALLEIsNull; property POBLACION: String read GetPOBLACIONValue write SetPOBLACIONValue; + property POBLACIONIsNull: Boolean read GetPOBLACIONIsNull write SetPOBLACIONIsNull; property PROVINCIA: String read GetPROVINCIAValue write SetPROVINCIAValue; + property PROVINCIAIsNull: Boolean read GetPROVINCIAIsNull write SetPROVINCIAIsNull; property CODIGO_POSTAL: String read GetCODIGO_POSTALValue write SetCODIGO_POSTALValue; + property CODIGO_POSTALIsNull: Boolean read GetCODIGO_POSTALIsNull write SetCODIGO_POSTALIsNull; property TELEFONO_1: String read GetTELEFONO_1Value write SetTELEFONO_1Value; + property TELEFONO_1IsNull: Boolean read GetTELEFONO_1IsNull write SetTELEFONO_1IsNull; property TELEFONO_2: String read GetTELEFONO_2Value write SetTELEFONO_2Value; + property TELEFONO_2IsNull: Boolean read GetTELEFONO_2IsNull write SetTELEFONO_2IsNull; property MOVIL_1: String read GetMOVIL_1Value write SetMOVIL_1Value; + property MOVIL_1IsNull: Boolean read GetMOVIL_1IsNull write SetMOVIL_1IsNull; property MOVIL_2: String read GetMOVIL_2Value write SetMOVIL_2Value; + property MOVIL_2IsNull: Boolean read GetMOVIL_2IsNull write SetMOVIL_2IsNull; property FAX: String read GetFAXValue write SetFAXValue; + property FAXIsNull: Boolean read GetFAXIsNull write SetFAXIsNull; property EMAIL_1: String read GetEMAIL_1Value write SetEMAIL_1Value; + property EMAIL_1IsNull: Boolean read GetEMAIL_1IsNull write SetEMAIL_1IsNull; property EMAIL_2: String read GetEMAIL_2Value write SetEMAIL_2Value; + property EMAIL_2IsNull: Boolean read GetEMAIL_2IsNull write SetEMAIL_2IsNull; property PAGINA_WEB: String read GetPAGINA_WEBValue write SetPAGINA_WEBValue; - property NOTAS: IROStrings read GetNOTASValue write SetNOTASValue; + property PAGINA_WEBIsNull: Boolean read GetPAGINA_WEBIsNull write SetPAGINA_WEBIsNull; + property NOTAS: IROStrings read GetNOTASValue; + property NOTASIsNull: Boolean read GetNOTASIsNull write SetNOTASIsNull; + property FECHA_ALTA: DateTime read GetFECHA_ALTAValue write SetFECHA_ALTAValue; + property FECHA_ALTAIsNull: Boolean read GetFECHA_ALTAIsNull write SetFECHA_ALTAIsNull; + property FECHA_MODIFICACION: DateTime read GetFECHA_MODIFICACIONValue write SetFECHA_MODIFICACIONValue; + property FECHA_MODIFICACIONIsNull: Boolean read GetFECHA_MODIFICACIONIsNull write SetFECHA_MODIFICACIONIsNull; property USUARIO: String read GetUSUARIOValue write SetUSUARIOValue; + property USUARIOIsNull: Boolean read GetUSUARIOIsNull write SetUSUARIOIsNull; property ID_EMPRESA: Integer read GetID_EMPRESAValue write SetID_EMPRESAValue; + property ID_EMPRESAIsNull: Boolean read GetID_EMPRESAIsNull write SetID_EMPRESAIsNull; property REFERENCIA: String read GetREFERENCIAValue write SetREFERENCIAValue; - property ID_TIPO_IVA: Integer read GetID_TIPO_IVAValue write SetID_TIPO_IVAValue; - property REGIMEN_IVA: String read GetREGIMEN_IVAValue write SetREGIMEN_IVAValue; - property ID_FORMA_PAGO: Integer read GetID_FORMA_PAGOValue write SetID_FORMA_PAGOValue; - property TIENDA_WEB: Integer read GetTIENDA_WEBValue write SetTIENDA_WEBValue; + property REFERENCIAIsNull: Boolean read GetREFERENCIAIsNull write SetREFERENCIAIsNull; property DESCUENTO: Float read GetDESCUENTOValue write SetDESCUENTOValue; + property DESCUENTOIsNull: Boolean read GetDESCUENTOIsNull write SetDESCUENTOIsNull; property DESCRIPCION_PROVEEDOR: String read GetDESCRIPCION_PROVEEDORValue write SetDESCRIPCION_PROVEEDORValue; + property DESCRIPCION_PROVEEDORIsNull: Boolean read GetDESCRIPCION_PROVEEDORIsNull write SetDESCRIPCION_PROVEEDORIsNull; property CODIGO_ASIGNADO: String read GetCODIGO_ASIGNADOValue write SetCODIGO_ASIGNADOValue; - property HOMOLOGADO: Integer read GetHOMOLOGADOValue write SetHOMOLOGADOValue; - property CERTIFICACION: String read GetCERTIFICACIONValue write SetCERTIFICACIONValue; + property CODIGO_ASIGNADOIsNull: Boolean read GetCODIGO_ASIGNADOIsNull write SetCODIGO_ASIGNADOIsNull; property GRUPO_PROVEEDOR: String read GetGRUPO_PROVEEDORValue write SetGRUPO_PROVEEDORValue; + property GRUPO_PROVEEDORIsNull: Boolean read GetGRUPO_PROVEEDORIsNull write SetGRUPO_PROVEEDORIsNull; + property REGIMEN_IVA: String read GetREGIMEN_IVAValue write SetREGIMEN_IVAValue; + property REGIMEN_IVAIsNull: Boolean read GetREGIMEN_IVAIsNull write SetREGIMEN_IVAIsNull; + property ID_TIPO_IVA: Integer read GetID_TIPO_IVAValue write SetID_TIPO_IVAValue; + property ID_TIPO_IVAIsNull: Boolean read GetID_TIPO_IVAIsNull write SetID_TIPO_IVAIsNull; + property ID_FORMA_PAGO: Integer read GetID_FORMA_PAGOValue write SetID_FORMA_PAGOValue; + property ID_FORMA_PAGOIsNull: Boolean read GetID_FORMA_PAGOIsNull write SetID_FORMA_PAGOIsNull; + property TIENDA_WEB: SmallInt read GetTIENDA_WEBValue write SetTIENDA_WEBValue; + property TIENDA_WEBIsNull: Boolean read GetTIENDA_WEBIsNull write SetTIENDA_WEBIsNull; + property HOMOLOGADO: SmallInt read GetHOMOLOGADOValue write SetHOMOLOGADOValue; + property HOMOLOGADOIsNull: Boolean read GetHOMOLOGADOIsNull write SetHOMOLOGADOIsNull; + property CERTIFICACION: String read GetCERTIFICACIONValue write SetCERTIFICACIONValue; + property CERTIFICACIONIsNull: Boolean read GetCERTIFICACIONIsNull write SetCERTIFICACIONIsNull; public constructor Create(aDataTable: TDADataTable); override; @@ -1061,188 +1730,380 @@ type { IEmpleados } IEmpleados = interface(IDAStronglyTypedDataTable) - ['{0A5A325E-1A87-439B-A785-60E26CCD025D}'] + ['{42D396C8-77D0-4750-8E63-A5F30DEB4CEB}'] { Property getters and setters } function GetIDValue: Integer; procedure SetIDValue(const aValue: Integer); + function GetIDIsNull: Boolean; + procedure SetIDIsNull(const aValue: Boolean); function GetID_CATEGORIAValue: Integer; procedure SetID_CATEGORIAValue(const aValue: Integer); + function GetID_CATEGORIAIsNull: Boolean; + procedure SetID_CATEGORIAIsNull(const aValue: Boolean); function GetNIF_CIFValue: String; procedure SetNIF_CIFValue(const aValue: String); + function GetNIF_CIFIsNull: Boolean; + procedure SetNIF_CIFIsNull(const aValue: Boolean); function GetNOMBREValue: String; procedure SetNOMBREValue(const aValue: String); - function GetCALLEValue: String; - procedure SetCALLEValue(const aValue: String); + function GetNOMBREIsNull: Boolean; + procedure SetNOMBREIsNull(const aValue: Boolean); function GetPERSONA_CONTACTOValue: String; procedure SetPERSONA_CONTACTOValue(const aValue: String); + function GetPERSONA_CONTACTOIsNull: Boolean; + procedure SetPERSONA_CONTACTOIsNull(const aValue: Boolean); + function GetCALLEValue: String; + procedure SetCALLEValue(const aValue: String); + function GetCALLEIsNull: Boolean; + procedure SetCALLEIsNull(const aValue: Boolean); function GetPOBLACIONValue: String; procedure SetPOBLACIONValue(const aValue: String); + function GetPOBLACIONIsNull: Boolean; + procedure SetPOBLACIONIsNull(const aValue: Boolean); function GetPROVINCIAValue: String; procedure SetPROVINCIAValue(const aValue: String); + function GetPROVINCIAIsNull: Boolean; + procedure SetPROVINCIAIsNull(const aValue: Boolean); function GetCODIGO_POSTALValue: String; procedure SetCODIGO_POSTALValue(const aValue: String); + function GetCODIGO_POSTALIsNull: Boolean; + procedure SetCODIGO_POSTALIsNull(const aValue: Boolean); function GetTELEFONO_1Value: String; procedure SetTELEFONO_1Value(const aValue: String); + function GetTELEFONO_1IsNull: Boolean; + procedure SetTELEFONO_1IsNull(const aValue: Boolean); function GetTELEFONO_2Value: String; procedure SetTELEFONO_2Value(const aValue: String); + function GetTELEFONO_2IsNull: Boolean; + procedure SetTELEFONO_2IsNull(const aValue: Boolean); function GetMOVIL_1Value: String; procedure SetMOVIL_1Value(const aValue: String); + function GetMOVIL_1IsNull: Boolean; + procedure SetMOVIL_1IsNull(const aValue: Boolean); function GetMOVIL_2Value: String; procedure SetMOVIL_2Value(const aValue: String); + function GetMOVIL_2IsNull: Boolean; + procedure SetMOVIL_2IsNull(const aValue: Boolean); function GetFAXValue: String; procedure SetFAXValue(const aValue: String); + function GetFAXIsNull: Boolean; + procedure SetFAXIsNull(const aValue: Boolean); function GetEMAIL_1Value: String; procedure SetEMAIL_1Value(const aValue: String); + function GetEMAIL_1IsNull: Boolean; + procedure SetEMAIL_1IsNull(const aValue: Boolean); function GetEMAIL_2Value: String; procedure SetEMAIL_2Value(const aValue: String); + function GetEMAIL_2IsNull: Boolean; + procedure SetEMAIL_2IsNull(const aValue: Boolean); function GetPAGINA_WEBValue: String; procedure SetPAGINA_WEBValue(const aValue: String); + function GetPAGINA_WEBIsNull: Boolean; + procedure SetPAGINA_WEBIsNull(const aValue: Boolean); function GetNOTASValue: IROStrings; - procedure SetNOTASValue(const aValue: IROStrings); + function GetNOTASIsNull: Boolean; + procedure SetNOTASIsNull(const aValue: Boolean); + function GetFECHA_ALTAValue: DateTime; + procedure SetFECHA_ALTAValue(const aValue: DateTime); + function GetFECHA_ALTAIsNull: Boolean; + procedure SetFECHA_ALTAIsNull(const aValue: Boolean); + function GetFECHA_MODIFICACIONValue: DateTime; + procedure SetFECHA_MODIFICACIONValue(const aValue: DateTime); + function GetFECHA_MODIFICACIONIsNull: Boolean; + procedure SetFECHA_MODIFICACIONIsNull(const aValue: Boolean); function GetUSUARIOValue: String; procedure SetUSUARIOValue(const aValue: String); + function GetUSUARIOIsNull: Boolean; + procedure SetUSUARIOIsNull(const aValue: Boolean); function GetID_EMPRESAValue: Integer; procedure SetID_EMPRESAValue(const aValue: Integer); + function GetID_EMPRESAIsNull: Boolean; + procedure SetID_EMPRESAIsNull(const aValue: Boolean); function GetREFERENCIAValue: String; procedure SetREFERENCIAValue(const aValue: String); - function GetCATEGORIAValue: String; - procedure SetCATEGORIAValue(const aValue: String); + function GetREFERENCIAIsNull: Boolean; + procedure SetREFERENCIAIsNull(const aValue: Boolean); function GetFECHA_NACIMIENTOValue: DateTime; procedure SetFECHA_NACIMIENTOValue(const aValue: DateTime); + function GetFECHA_NACIMIENTOIsNull: Boolean; + procedure SetFECHA_NACIMIENTOIsNull(const aValue: Boolean); + function GetCATEGORIAValue: String; + procedure SetCATEGORIAValue(const aValue: String); + function GetCATEGORIAIsNull: Boolean; + procedure SetCATEGORIAIsNull(const aValue: Boolean); function GetFECHA_ALTA_EMPRESAValue: DateTime; procedure SetFECHA_ALTA_EMPRESAValue(const aValue: DateTime); + function GetFECHA_ALTA_EMPRESAIsNull: Boolean; + procedure SetFECHA_ALTA_EMPRESAIsNull(const aValue: Boolean); function GetFORMACION_BASEValue: IROStrings; - procedure SetFORMACION_BASEValue(const aValue: IROStrings); + function GetFORMACION_BASEIsNull: Boolean; + procedure SetFORMACION_BASEIsNull(const aValue: Boolean); function GetFORMACION_COMPLEValue: IROStrings; - procedure SetFORMACION_COMPLEValue(const aValue: IROStrings); + function GetFORMACION_COMPLEIsNull: Boolean; + procedure SetFORMACION_COMPLEIsNull(const aValue: Boolean); function GetFORMACION_RECIBIDAValue: IROStrings; - procedure SetFORMACION_RECIBIDAValue(const aValue: IROStrings); + function GetFORMACION_RECIBIDAIsNull: Boolean; + procedure SetFORMACION_RECIBIDAIsNull(const aValue: Boolean); function GetEXPERIENCIAValue: IROStrings; - procedure SetEXPERIENCIAValue(const aValue: IROStrings); + function GetEXPERIENCIAIsNull: Boolean; + procedure SetEXPERIENCIAIsNull(const aValue: Boolean); { Properties } property ID: Integer read GetIDValue write SetIDValue; + property IDIsNull: Boolean read GetIDIsNull write SetIDIsNull; property ID_CATEGORIA: Integer read GetID_CATEGORIAValue write SetID_CATEGORIAValue; + property ID_CATEGORIAIsNull: Boolean read GetID_CATEGORIAIsNull write SetID_CATEGORIAIsNull; property NIF_CIF: String read GetNIF_CIFValue write SetNIF_CIFValue; + property NIF_CIFIsNull: Boolean read GetNIF_CIFIsNull write SetNIF_CIFIsNull; property NOMBRE: String read GetNOMBREValue write SetNOMBREValue; - property CALLE: String read GetCALLEValue write SetCALLEValue; + property NOMBREIsNull: Boolean read GetNOMBREIsNull write SetNOMBREIsNull; property PERSONA_CONTACTO: String read GetPERSONA_CONTACTOValue write SetPERSONA_CONTACTOValue; + property PERSONA_CONTACTOIsNull: Boolean read GetPERSONA_CONTACTOIsNull write SetPERSONA_CONTACTOIsNull; + property CALLE: String read GetCALLEValue write SetCALLEValue; + property CALLEIsNull: Boolean read GetCALLEIsNull write SetCALLEIsNull; property POBLACION: String read GetPOBLACIONValue write SetPOBLACIONValue; + property POBLACIONIsNull: Boolean read GetPOBLACIONIsNull write SetPOBLACIONIsNull; property PROVINCIA: String read GetPROVINCIAValue write SetPROVINCIAValue; + property PROVINCIAIsNull: Boolean read GetPROVINCIAIsNull write SetPROVINCIAIsNull; property CODIGO_POSTAL: String read GetCODIGO_POSTALValue write SetCODIGO_POSTALValue; + property CODIGO_POSTALIsNull: Boolean read GetCODIGO_POSTALIsNull write SetCODIGO_POSTALIsNull; property TELEFONO_1: String read GetTELEFONO_1Value write SetTELEFONO_1Value; + property TELEFONO_1IsNull: Boolean read GetTELEFONO_1IsNull write SetTELEFONO_1IsNull; property TELEFONO_2: String read GetTELEFONO_2Value write SetTELEFONO_2Value; + property TELEFONO_2IsNull: Boolean read GetTELEFONO_2IsNull write SetTELEFONO_2IsNull; property MOVIL_1: String read GetMOVIL_1Value write SetMOVIL_1Value; + property MOVIL_1IsNull: Boolean read GetMOVIL_1IsNull write SetMOVIL_1IsNull; property MOVIL_2: String read GetMOVIL_2Value write SetMOVIL_2Value; + property MOVIL_2IsNull: Boolean read GetMOVIL_2IsNull write SetMOVIL_2IsNull; property FAX: String read GetFAXValue write SetFAXValue; + property FAXIsNull: Boolean read GetFAXIsNull write SetFAXIsNull; property EMAIL_1: String read GetEMAIL_1Value write SetEMAIL_1Value; + property EMAIL_1IsNull: Boolean read GetEMAIL_1IsNull write SetEMAIL_1IsNull; property EMAIL_2: String read GetEMAIL_2Value write SetEMAIL_2Value; + property EMAIL_2IsNull: Boolean read GetEMAIL_2IsNull write SetEMAIL_2IsNull; property PAGINA_WEB: String read GetPAGINA_WEBValue write SetPAGINA_WEBValue; - property NOTAS: IROStrings read GetNOTASValue write SetNOTASValue; + property PAGINA_WEBIsNull: Boolean read GetPAGINA_WEBIsNull write SetPAGINA_WEBIsNull; + property NOTAS: IROStrings read GetNOTASValue; + property NOTASIsNull: Boolean read GetNOTASIsNull write SetNOTASIsNull; + property FECHA_ALTA: DateTime read GetFECHA_ALTAValue write SetFECHA_ALTAValue; + property FECHA_ALTAIsNull: Boolean read GetFECHA_ALTAIsNull write SetFECHA_ALTAIsNull; + property FECHA_MODIFICACION: DateTime read GetFECHA_MODIFICACIONValue write SetFECHA_MODIFICACIONValue; + property FECHA_MODIFICACIONIsNull: Boolean read GetFECHA_MODIFICACIONIsNull write SetFECHA_MODIFICACIONIsNull; property USUARIO: String read GetUSUARIOValue write SetUSUARIOValue; + property USUARIOIsNull: Boolean read GetUSUARIOIsNull write SetUSUARIOIsNull; property ID_EMPRESA: Integer read GetID_EMPRESAValue write SetID_EMPRESAValue; + property ID_EMPRESAIsNull: Boolean read GetID_EMPRESAIsNull write SetID_EMPRESAIsNull; property REFERENCIA: String read GetREFERENCIAValue write SetREFERENCIAValue; - property CATEGORIA: String read GetCATEGORIAValue write SetCATEGORIAValue; + property REFERENCIAIsNull: Boolean read GetREFERENCIAIsNull write SetREFERENCIAIsNull; property FECHA_NACIMIENTO: DateTime read GetFECHA_NACIMIENTOValue write SetFECHA_NACIMIENTOValue; + property FECHA_NACIMIENTOIsNull: Boolean read GetFECHA_NACIMIENTOIsNull write SetFECHA_NACIMIENTOIsNull; + property CATEGORIA: String read GetCATEGORIAValue write SetCATEGORIAValue; + property CATEGORIAIsNull: Boolean read GetCATEGORIAIsNull write SetCATEGORIAIsNull; property FECHA_ALTA_EMPRESA: DateTime read GetFECHA_ALTA_EMPRESAValue write SetFECHA_ALTA_EMPRESAValue; - property FORMACION_BASE: IROStrings read GetFORMACION_BASEValue write SetFORMACION_BASEValue; - property FORMACION_COMPLE: IROStrings read GetFORMACION_COMPLEValue write SetFORMACION_COMPLEValue; - property FORMACION_RECIBIDA: IROStrings read GetFORMACION_RECIBIDAValue write SetFORMACION_RECIBIDAValue; - property EXPERIENCIA: IROStrings read GetEXPERIENCIAValue write SetEXPERIENCIAValue; + property FECHA_ALTA_EMPRESAIsNull: Boolean read GetFECHA_ALTA_EMPRESAIsNull write SetFECHA_ALTA_EMPRESAIsNull; + property FORMACION_BASE: IROStrings read GetFORMACION_BASEValue; + property FORMACION_BASEIsNull: Boolean read GetFORMACION_BASEIsNull write SetFORMACION_BASEIsNull; + property FORMACION_COMPLE: IROStrings read GetFORMACION_COMPLEValue; + property FORMACION_COMPLEIsNull: Boolean read GetFORMACION_COMPLEIsNull write SetFORMACION_COMPLEIsNull; + property FORMACION_RECIBIDA: IROStrings read GetFORMACION_RECIBIDAValue; + property FORMACION_RECIBIDAIsNull: Boolean read GetFORMACION_RECIBIDAIsNull write SetFORMACION_RECIBIDAIsNull; + property EXPERIENCIA: IROStrings read GetEXPERIENCIAValue; + property EXPERIENCIAIsNull: Boolean read GetEXPERIENCIAIsNull write SetEXPERIENCIAIsNull; end; { TEmpleadosDataTableRules } TEmpleadosDataTableRules = class(TDADataTableRules, IEmpleados) private + f_NOTAS: IROStrings; + f_FORMACION_BASE: IROStrings; + f_FORMACION_COMPLE: IROStrings; + f_FORMACION_RECIBIDA: IROStrings; + f_EXPERIENCIA: IROStrings; + procedure NOTAS_OnChange(Sender: TObject); + procedure FORMACION_BASE_OnChange(Sender: TObject); + procedure FORMACION_COMPLE_OnChange(Sender: TObject); + procedure FORMACION_RECIBIDA_OnChange(Sender: TObject); + procedure EXPERIENCIA_OnChange(Sender: TObject); protected { Property getters and setters } function GetIDValue: Integer; virtual; procedure SetIDValue(const aValue: Integer); virtual; + function GetIDIsNull: Boolean; virtual; + procedure SetIDIsNull(const aValue: Boolean); virtual; function GetID_CATEGORIAValue: Integer; virtual; procedure SetID_CATEGORIAValue(const aValue: Integer); virtual; + function GetID_CATEGORIAIsNull: Boolean; virtual; + procedure SetID_CATEGORIAIsNull(const aValue: Boolean); virtual; function GetNIF_CIFValue: String; virtual; procedure SetNIF_CIFValue(const aValue: String); virtual; + function GetNIF_CIFIsNull: Boolean; virtual; + procedure SetNIF_CIFIsNull(const aValue: Boolean); virtual; function GetNOMBREValue: String; virtual; procedure SetNOMBREValue(const aValue: String); virtual; - function GetCALLEValue: String; virtual; - procedure SetCALLEValue(const aValue: String); virtual; + function GetNOMBREIsNull: Boolean; virtual; + procedure SetNOMBREIsNull(const aValue: Boolean); virtual; function GetPERSONA_CONTACTOValue: String; virtual; procedure SetPERSONA_CONTACTOValue(const aValue: String); virtual; + function GetPERSONA_CONTACTOIsNull: Boolean; virtual; + procedure SetPERSONA_CONTACTOIsNull(const aValue: Boolean); virtual; + function GetCALLEValue: String; virtual; + procedure SetCALLEValue(const aValue: String); virtual; + function GetCALLEIsNull: Boolean; virtual; + procedure SetCALLEIsNull(const aValue: Boolean); virtual; function GetPOBLACIONValue: String; virtual; procedure SetPOBLACIONValue(const aValue: String); virtual; + function GetPOBLACIONIsNull: Boolean; virtual; + procedure SetPOBLACIONIsNull(const aValue: Boolean); virtual; function GetPROVINCIAValue: String; virtual; procedure SetPROVINCIAValue(const aValue: String); virtual; + function GetPROVINCIAIsNull: Boolean; virtual; + procedure SetPROVINCIAIsNull(const aValue: Boolean); virtual; function GetCODIGO_POSTALValue: String; virtual; procedure SetCODIGO_POSTALValue(const aValue: String); virtual; + function GetCODIGO_POSTALIsNull: Boolean; virtual; + procedure SetCODIGO_POSTALIsNull(const aValue: Boolean); virtual; function GetTELEFONO_1Value: String; virtual; procedure SetTELEFONO_1Value(const aValue: String); virtual; + function GetTELEFONO_1IsNull: Boolean; virtual; + procedure SetTELEFONO_1IsNull(const aValue: Boolean); virtual; function GetTELEFONO_2Value: String; virtual; procedure SetTELEFONO_2Value(const aValue: String); virtual; + function GetTELEFONO_2IsNull: Boolean; virtual; + procedure SetTELEFONO_2IsNull(const aValue: Boolean); virtual; function GetMOVIL_1Value: String; virtual; procedure SetMOVIL_1Value(const aValue: String); virtual; + function GetMOVIL_1IsNull: Boolean; virtual; + procedure SetMOVIL_1IsNull(const aValue: Boolean); virtual; function GetMOVIL_2Value: String; virtual; procedure SetMOVIL_2Value(const aValue: String); virtual; + function GetMOVIL_2IsNull: Boolean; virtual; + procedure SetMOVIL_2IsNull(const aValue: Boolean); virtual; function GetFAXValue: String; virtual; procedure SetFAXValue(const aValue: String); virtual; + function GetFAXIsNull: Boolean; virtual; + procedure SetFAXIsNull(const aValue: Boolean); virtual; function GetEMAIL_1Value: String; virtual; procedure SetEMAIL_1Value(const aValue: String); virtual; + function GetEMAIL_1IsNull: Boolean; virtual; + procedure SetEMAIL_1IsNull(const aValue: Boolean); virtual; function GetEMAIL_2Value: String; virtual; procedure SetEMAIL_2Value(const aValue: String); virtual; + function GetEMAIL_2IsNull: Boolean; virtual; + procedure SetEMAIL_2IsNull(const aValue: Boolean); virtual; function GetPAGINA_WEBValue: String; virtual; procedure SetPAGINA_WEBValue(const aValue: String); virtual; + function GetPAGINA_WEBIsNull: Boolean; virtual; + procedure SetPAGINA_WEBIsNull(const aValue: Boolean); virtual; function GetNOTASValue: IROStrings; virtual; - procedure SetNOTASValue(const aValue: IROStrings); virtual; + function GetNOTASIsNull: Boolean; virtual; + procedure SetNOTASIsNull(const aValue: Boolean); virtual; + function GetFECHA_ALTAValue: DateTime; virtual; + procedure SetFECHA_ALTAValue(const aValue: DateTime); virtual; + function GetFECHA_ALTAIsNull: Boolean; virtual; + procedure SetFECHA_ALTAIsNull(const aValue: Boolean); virtual; + function GetFECHA_MODIFICACIONValue: DateTime; virtual; + procedure SetFECHA_MODIFICACIONValue(const aValue: DateTime); virtual; + function GetFECHA_MODIFICACIONIsNull: Boolean; virtual; + procedure SetFECHA_MODIFICACIONIsNull(const aValue: Boolean); virtual; function GetUSUARIOValue: String; virtual; procedure SetUSUARIOValue(const aValue: String); virtual; + function GetUSUARIOIsNull: Boolean; virtual; + procedure SetUSUARIOIsNull(const aValue: Boolean); virtual; function GetID_EMPRESAValue: Integer; virtual; procedure SetID_EMPRESAValue(const aValue: Integer); virtual; + function GetID_EMPRESAIsNull: Boolean; virtual; + procedure SetID_EMPRESAIsNull(const aValue: Boolean); virtual; function GetREFERENCIAValue: String; virtual; procedure SetREFERENCIAValue(const aValue: String); virtual; - function GetCATEGORIAValue: String; virtual; - procedure SetCATEGORIAValue(const aValue: String); virtual; + function GetREFERENCIAIsNull: Boolean; virtual; + procedure SetREFERENCIAIsNull(const aValue: Boolean); virtual; function GetFECHA_NACIMIENTOValue: DateTime; virtual; procedure SetFECHA_NACIMIENTOValue(const aValue: DateTime); virtual; + function GetFECHA_NACIMIENTOIsNull: Boolean; virtual; + procedure SetFECHA_NACIMIENTOIsNull(const aValue: Boolean); virtual; + function GetCATEGORIAValue: String; virtual; + procedure SetCATEGORIAValue(const aValue: String); virtual; + function GetCATEGORIAIsNull: Boolean; virtual; + procedure SetCATEGORIAIsNull(const aValue: Boolean); virtual; function GetFECHA_ALTA_EMPRESAValue: DateTime; virtual; procedure SetFECHA_ALTA_EMPRESAValue(const aValue: DateTime); virtual; + function GetFECHA_ALTA_EMPRESAIsNull: Boolean; virtual; + procedure SetFECHA_ALTA_EMPRESAIsNull(const aValue: Boolean); virtual; function GetFORMACION_BASEValue: IROStrings; virtual; - procedure SetFORMACION_BASEValue(const aValue: IROStrings); virtual; + function GetFORMACION_BASEIsNull: Boolean; virtual; + procedure SetFORMACION_BASEIsNull(const aValue: Boolean); virtual; function GetFORMACION_COMPLEValue: IROStrings; virtual; - procedure SetFORMACION_COMPLEValue(const aValue: IROStrings); virtual; + function GetFORMACION_COMPLEIsNull: Boolean; virtual; + procedure SetFORMACION_COMPLEIsNull(const aValue: Boolean); virtual; function GetFORMACION_RECIBIDAValue: IROStrings; virtual; - procedure SetFORMACION_RECIBIDAValue(const aValue: IROStrings); virtual; + function GetFORMACION_RECIBIDAIsNull: Boolean; virtual; + procedure SetFORMACION_RECIBIDAIsNull(const aValue: Boolean); virtual; function GetEXPERIENCIAValue: IROStrings; virtual; - procedure SetEXPERIENCIAValue(const aValue: IROStrings); virtual; + function GetEXPERIENCIAIsNull: Boolean; virtual; + procedure SetEXPERIENCIAIsNull(const aValue: Boolean); virtual; { Properties } property ID: Integer read GetIDValue write SetIDValue; + property IDIsNull: Boolean read GetIDIsNull write SetIDIsNull; property ID_CATEGORIA: Integer read GetID_CATEGORIAValue write SetID_CATEGORIAValue; + property ID_CATEGORIAIsNull: Boolean read GetID_CATEGORIAIsNull write SetID_CATEGORIAIsNull; property NIF_CIF: String read GetNIF_CIFValue write SetNIF_CIFValue; + property NIF_CIFIsNull: Boolean read GetNIF_CIFIsNull write SetNIF_CIFIsNull; property NOMBRE: String read GetNOMBREValue write SetNOMBREValue; - property CALLE: String read GetCALLEValue write SetCALLEValue; + property NOMBREIsNull: Boolean read GetNOMBREIsNull write SetNOMBREIsNull; property PERSONA_CONTACTO: String read GetPERSONA_CONTACTOValue write SetPERSONA_CONTACTOValue; + property PERSONA_CONTACTOIsNull: Boolean read GetPERSONA_CONTACTOIsNull write SetPERSONA_CONTACTOIsNull; + property CALLE: String read GetCALLEValue write SetCALLEValue; + property CALLEIsNull: Boolean read GetCALLEIsNull write SetCALLEIsNull; property POBLACION: String read GetPOBLACIONValue write SetPOBLACIONValue; + property POBLACIONIsNull: Boolean read GetPOBLACIONIsNull write SetPOBLACIONIsNull; property PROVINCIA: String read GetPROVINCIAValue write SetPROVINCIAValue; + property PROVINCIAIsNull: Boolean read GetPROVINCIAIsNull write SetPROVINCIAIsNull; property CODIGO_POSTAL: String read GetCODIGO_POSTALValue write SetCODIGO_POSTALValue; + property CODIGO_POSTALIsNull: Boolean read GetCODIGO_POSTALIsNull write SetCODIGO_POSTALIsNull; property TELEFONO_1: String read GetTELEFONO_1Value write SetTELEFONO_1Value; + property TELEFONO_1IsNull: Boolean read GetTELEFONO_1IsNull write SetTELEFONO_1IsNull; property TELEFONO_2: String read GetTELEFONO_2Value write SetTELEFONO_2Value; + property TELEFONO_2IsNull: Boolean read GetTELEFONO_2IsNull write SetTELEFONO_2IsNull; property MOVIL_1: String read GetMOVIL_1Value write SetMOVIL_1Value; + property MOVIL_1IsNull: Boolean read GetMOVIL_1IsNull write SetMOVIL_1IsNull; property MOVIL_2: String read GetMOVIL_2Value write SetMOVIL_2Value; + property MOVIL_2IsNull: Boolean read GetMOVIL_2IsNull write SetMOVIL_2IsNull; property FAX: String read GetFAXValue write SetFAXValue; + property FAXIsNull: Boolean read GetFAXIsNull write SetFAXIsNull; property EMAIL_1: String read GetEMAIL_1Value write SetEMAIL_1Value; + property EMAIL_1IsNull: Boolean read GetEMAIL_1IsNull write SetEMAIL_1IsNull; property EMAIL_2: String read GetEMAIL_2Value write SetEMAIL_2Value; + property EMAIL_2IsNull: Boolean read GetEMAIL_2IsNull write SetEMAIL_2IsNull; property PAGINA_WEB: String read GetPAGINA_WEBValue write SetPAGINA_WEBValue; - property NOTAS: IROStrings read GetNOTASValue write SetNOTASValue; + property PAGINA_WEBIsNull: Boolean read GetPAGINA_WEBIsNull write SetPAGINA_WEBIsNull; + property NOTAS: IROStrings read GetNOTASValue; + property NOTASIsNull: Boolean read GetNOTASIsNull write SetNOTASIsNull; + property FECHA_ALTA: DateTime read GetFECHA_ALTAValue write SetFECHA_ALTAValue; + property FECHA_ALTAIsNull: Boolean read GetFECHA_ALTAIsNull write SetFECHA_ALTAIsNull; + property FECHA_MODIFICACION: DateTime read GetFECHA_MODIFICACIONValue write SetFECHA_MODIFICACIONValue; + property FECHA_MODIFICACIONIsNull: Boolean read GetFECHA_MODIFICACIONIsNull write SetFECHA_MODIFICACIONIsNull; property USUARIO: String read GetUSUARIOValue write SetUSUARIOValue; + property USUARIOIsNull: Boolean read GetUSUARIOIsNull write SetUSUARIOIsNull; property ID_EMPRESA: Integer read GetID_EMPRESAValue write SetID_EMPRESAValue; + property ID_EMPRESAIsNull: Boolean read GetID_EMPRESAIsNull write SetID_EMPRESAIsNull; property REFERENCIA: String read GetREFERENCIAValue write SetREFERENCIAValue; - property CATEGORIA: String read GetCATEGORIAValue write SetCATEGORIAValue; + property REFERENCIAIsNull: Boolean read GetREFERENCIAIsNull write SetREFERENCIAIsNull; property FECHA_NACIMIENTO: DateTime read GetFECHA_NACIMIENTOValue write SetFECHA_NACIMIENTOValue; + property FECHA_NACIMIENTOIsNull: Boolean read GetFECHA_NACIMIENTOIsNull write SetFECHA_NACIMIENTOIsNull; + property CATEGORIA: String read GetCATEGORIAValue write SetCATEGORIAValue; + property CATEGORIAIsNull: Boolean read GetCATEGORIAIsNull write SetCATEGORIAIsNull; property FECHA_ALTA_EMPRESA: DateTime read GetFECHA_ALTA_EMPRESAValue write SetFECHA_ALTA_EMPRESAValue; - property FORMACION_BASE: IROStrings read GetFORMACION_BASEValue write SetFORMACION_BASEValue; - property FORMACION_COMPLE: IROStrings read GetFORMACION_COMPLEValue write SetFORMACION_COMPLEValue; - property FORMACION_RECIBIDA: IROStrings read GetFORMACION_RECIBIDAValue write SetFORMACION_RECIBIDAValue; - property EXPERIENCIA: IROStrings read GetEXPERIENCIAValue write SetEXPERIENCIAValue; + property FECHA_ALTA_EMPRESAIsNull: Boolean read GetFECHA_ALTA_EMPRESAIsNull write SetFECHA_ALTA_EMPRESAIsNull; + property FORMACION_BASE: IROStrings read GetFORMACION_BASEValue; + property FORMACION_BASEIsNull: Boolean read GetFORMACION_BASEIsNull write SetFORMACION_BASEIsNull; + property FORMACION_COMPLE: IROStrings read GetFORMACION_COMPLEValue; + property FORMACION_COMPLEIsNull: Boolean read GetFORMACION_COMPLEIsNull write SetFORMACION_COMPLEIsNull; + property FORMACION_RECIBIDA: IROStrings read GetFORMACION_RECIBIDAValue; + property FORMACION_RECIBIDAIsNull: Boolean read GetFORMACION_RECIBIDAIsNull write SetFORMACION_RECIBIDAIsNull; + property EXPERIENCIA: IROStrings read GetEXPERIENCIAValue; + property EXPERIENCIAIsNull: Boolean read GetEXPERIENCIAIsNull write SetEXPERIENCIAIsNull; public constructor Create(aDataTable: TDADataTable); override; @@ -1252,104 +2113,212 @@ type { IDireccionesContacto } IDireccionesContacto = interface(IDAStronglyTypedDataTable) - ['{8AE98E4A-35D7-4E61-BE7D-64DD5B4AC7AF}'] + ['{38322BE3-0518-4B04-A0D9-EAE063592DD6}'] { Property getters and setters } function GetIDValue: Integer; procedure SetIDValue(const aValue: Integer); + function GetIDIsNull: Boolean; + procedure SetIDIsNull(const aValue: Boolean); function GetID_CONTACTOValue: Integer; procedure SetID_CONTACTOValue(const aValue: Integer); - function GetNOMBREValue: String; - procedure SetNOMBREValue(const aValue: String); + function GetID_CONTACTOIsNull: Boolean; + procedure SetID_CONTACTOIsNull(const aValue: Boolean); function GetCALLEValue: String; procedure SetCALLEValue(const aValue: String); + function GetCALLEIsNull: Boolean; + procedure SetCALLEIsNull(const aValue: Boolean); function GetPOBLACIONValue: String; procedure SetPOBLACIONValue(const aValue: String); + function GetPOBLACIONIsNull: Boolean; + procedure SetPOBLACIONIsNull(const aValue: Boolean); function GetPROVINCIAValue: String; procedure SetPROVINCIAValue(const aValue: String); + function GetPROVINCIAIsNull: Boolean; + procedure SetPROVINCIAIsNull(const aValue: Boolean); function GetCODIGO_POSTALValue: String; procedure SetCODIGO_POSTALValue(const aValue: String); + function GetCODIGO_POSTALIsNull: Boolean; + procedure SetCODIGO_POSTALIsNull(const aValue: Boolean); function GetPERSONA_CONTACTOValue: String; procedure SetPERSONA_CONTACTOValue(const aValue: String); + function GetPERSONA_CONTACTOIsNull: Boolean; + procedure SetPERSONA_CONTACTOIsNull(const aValue: Boolean); + function GetNOMBREValue: String; + procedure SetNOMBREValue(const aValue: String); + function GetNOMBREIsNull: Boolean; + procedure SetNOMBREIsNull(const aValue: Boolean); function GetTELEFONOValue: String; procedure SetTELEFONOValue(const aValue: String); + function GetTELEFONOIsNull: Boolean; + procedure SetTELEFONOIsNull(const aValue: Boolean); function GetMOVILValue: String; procedure SetMOVILValue(const aValue: String); + function GetMOVILIsNull: Boolean; + procedure SetMOVILIsNull(const aValue: Boolean); function GetFAXValue: String; procedure SetFAXValue(const aValue: String); + function GetFAXIsNull: Boolean; + procedure SetFAXIsNull(const aValue: Boolean); function GetEMAILValue: String; procedure SetEMAILValue(const aValue: String); + function GetEMAILIsNull: Boolean; + procedure SetEMAILIsNull(const aValue: Boolean); function GetNOTASValue: IROStrings; - procedure SetNOTASValue(const aValue: IROStrings); + function GetNOTASIsNull: Boolean; + procedure SetNOTASIsNull(const aValue: Boolean); function GetPORTEValue: Float; procedure SetPORTEValue(const aValue: Float); + function GetPORTEIsNull: Boolean; + procedure SetPORTEIsNull(const aValue: Boolean); + function GetFECHA_ALTAValue: DateTime; + procedure SetFECHA_ALTAValue(const aValue: DateTime); + function GetFECHA_ALTAIsNull: Boolean; + procedure SetFECHA_ALTAIsNull(const aValue: Boolean); + function GetFECHA_MODIFICACIONValue: DateTime; + procedure SetFECHA_MODIFICACIONValue(const aValue: DateTime); + function GetFECHA_MODIFICACIONIsNull: Boolean; + procedure SetFECHA_MODIFICACIONIsNull(const aValue: Boolean); { Properties } property ID: Integer read GetIDValue write SetIDValue; + property IDIsNull: Boolean read GetIDIsNull write SetIDIsNull; property ID_CONTACTO: Integer read GetID_CONTACTOValue write SetID_CONTACTOValue; - property NOMBRE: String read GetNOMBREValue write SetNOMBREValue; + property ID_CONTACTOIsNull: Boolean read GetID_CONTACTOIsNull write SetID_CONTACTOIsNull; property CALLE: String read GetCALLEValue write SetCALLEValue; + property CALLEIsNull: Boolean read GetCALLEIsNull write SetCALLEIsNull; property POBLACION: String read GetPOBLACIONValue write SetPOBLACIONValue; + property POBLACIONIsNull: Boolean read GetPOBLACIONIsNull write SetPOBLACIONIsNull; property PROVINCIA: String read GetPROVINCIAValue write SetPROVINCIAValue; + property PROVINCIAIsNull: Boolean read GetPROVINCIAIsNull write SetPROVINCIAIsNull; property CODIGO_POSTAL: String read GetCODIGO_POSTALValue write SetCODIGO_POSTALValue; + property CODIGO_POSTALIsNull: Boolean read GetCODIGO_POSTALIsNull write SetCODIGO_POSTALIsNull; property PERSONA_CONTACTO: String read GetPERSONA_CONTACTOValue write SetPERSONA_CONTACTOValue; + property PERSONA_CONTACTOIsNull: Boolean read GetPERSONA_CONTACTOIsNull write SetPERSONA_CONTACTOIsNull; + property NOMBRE: String read GetNOMBREValue write SetNOMBREValue; + property NOMBREIsNull: Boolean read GetNOMBREIsNull write SetNOMBREIsNull; property TELEFONO: String read GetTELEFONOValue write SetTELEFONOValue; + property TELEFONOIsNull: Boolean read GetTELEFONOIsNull write SetTELEFONOIsNull; property MOVIL: String read GetMOVILValue write SetMOVILValue; + property MOVILIsNull: Boolean read GetMOVILIsNull write SetMOVILIsNull; property FAX: String read GetFAXValue write SetFAXValue; + property FAXIsNull: Boolean read GetFAXIsNull write SetFAXIsNull; property EMAIL: String read GetEMAILValue write SetEMAILValue; - property NOTAS: IROStrings read GetNOTASValue write SetNOTASValue; + property EMAILIsNull: Boolean read GetEMAILIsNull write SetEMAILIsNull; + property NOTAS: IROStrings read GetNOTASValue; + property NOTASIsNull: Boolean read GetNOTASIsNull write SetNOTASIsNull; property PORTE: Float read GetPORTEValue write SetPORTEValue; + property PORTEIsNull: Boolean read GetPORTEIsNull write SetPORTEIsNull; + property FECHA_ALTA: DateTime read GetFECHA_ALTAValue write SetFECHA_ALTAValue; + property FECHA_ALTAIsNull: Boolean read GetFECHA_ALTAIsNull write SetFECHA_ALTAIsNull; + property FECHA_MODIFICACION: DateTime read GetFECHA_MODIFICACIONValue write SetFECHA_MODIFICACIONValue; + property FECHA_MODIFICACIONIsNull: Boolean read GetFECHA_MODIFICACIONIsNull write SetFECHA_MODIFICACIONIsNull; end; { TDireccionesContactoDataTableRules } TDireccionesContactoDataTableRules = class(TDADataTableRules, IDireccionesContacto) private + f_NOTAS: IROStrings; + procedure NOTAS_OnChange(Sender: TObject); protected { Property getters and setters } function GetIDValue: Integer; virtual; procedure SetIDValue(const aValue: Integer); virtual; + function GetIDIsNull: Boolean; virtual; + procedure SetIDIsNull(const aValue: Boolean); virtual; function GetID_CONTACTOValue: Integer; virtual; procedure SetID_CONTACTOValue(const aValue: Integer); virtual; - function GetNOMBREValue: String; virtual; - procedure SetNOMBREValue(const aValue: String); virtual; + function GetID_CONTACTOIsNull: Boolean; virtual; + procedure SetID_CONTACTOIsNull(const aValue: Boolean); virtual; function GetCALLEValue: String; virtual; procedure SetCALLEValue(const aValue: String); virtual; + function GetCALLEIsNull: Boolean; virtual; + procedure SetCALLEIsNull(const aValue: Boolean); virtual; function GetPOBLACIONValue: String; virtual; procedure SetPOBLACIONValue(const aValue: String); virtual; + function GetPOBLACIONIsNull: Boolean; virtual; + procedure SetPOBLACIONIsNull(const aValue: Boolean); virtual; function GetPROVINCIAValue: String; virtual; procedure SetPROVINCIAValue(const aValue: String); virtual; + function GetPROVINCIAIsNull: Boolean; virtual; + procedure SetPROVINCIAIsNull(const aValue: Boolean); virtual; function GetCODIGO_POSTALValue: String; virtual; procedure SetCODIGO_POSTALValue(const aValue: String); virtual; + function GetCODIGO_POSTALIsNull: Boolean; virtual; + procedure SetCODIGO_POSTALIsNull(const aValue: Boolean); virtual; function GetPERSONA_CONTACTOValue: String; virtual; procedure SetPERSONA_CONTACTOValue(const aValue: String); virtual; + function GetPERSONA_CONTACTOIsNull: Boolean; virtual; + procedure SetPERSONA_CONTACTOIsNull(const aValue: Boolean); virtual; + function GetNOMBREValue: String; virtual; + procedure SetNOMBREValue(const aValue: String); virtual; + function GetNOMBREIsNull: Boolean; virtual; + procedure SetNOMBREIsNull(const aValue: Boolean); virtual; function GetTELEFONOValue: String; virtual; procedure SetTELEFONOValue(const aValue: String); virtual; + function GetTELEFONOIsNull: Boolean; virtual; + procedure SetTELEFONOIsNull(const aValue: Boolean); virtual; function GetMOVILValue: String; virtual; procedure SetMOVILValue(const aValue: String); virtual; + function GetMOVILIsNull: Boolean; virtual; + procedure SetMOVILIsNull(const aValue: Boolean); virtual; function GetFAXValue: String; virtual; procedure SetFAXValue(const aValue: String); virtual; + function GetFAXIsNull: Boolean; virtual; + procedure SetFAXIsNull(const aValue: Boolean); virtual; function GetEMAILValue: String; virtual; procedure SetEMAILValue(const aValue: String); virtual; + function GetEMAILIsNull: Boolean; virtual; + procedure SetEMAILIsNull(const aValue: Boolean); virtual; function GetNOTASValue: IROStrings; virtual; - procedure SetNOTASValue(const aValue: IROStrings); virtual; + function GetNOTASIsNull: Boolean; virtual; + procedure SetNOTASIsNull(const aValue: Boolean); virtual; function GetPORTEValue: Float; virtual; procedure SetPORTEValue(const aValue: Float); virtual; + function GetPORTEIsNull: Boolean; virtual; + procedure SetPORTEIsNull(const aValue: Boolean); virtual; + function GetFECHA_ALTAValue: DateTime; virtual; + procedure SetFECHA_ALTAValue(const aValue: DateTime); virtual; + function GetFECHA_ALTAIsNull: Boolean; virtual; + procedure SetFECHA_ALTAIsNull(const aValue: Boolean); virtual; + function GetFECHA_MODIFICACIONValue: DateTime; virtual; + procedure SetFECHA_MODIFICACIONValue(const aValue: DateTime); virtual; + function GetFECHA_MODIFICACIONIsNull: Boolean; virtual; + procedure SetFECHA_MODIFICACIONIsNull(const aValue: Boolean); virtual; { Properties } property ID: Integer read GetIDValue write SetIDValue; + property IDIsNull: Boolean read GetIDIsNull write SetIDIsNull; property ID_CONTACTO: Integer read GetID_CONTACTOValue write SetID_CONTACTOValue; - property NOMBRE: String read GetNOMBREValue write SetNOMBREValue; + property ID_CONTACTOIsNull: Boolean read GetID_CONTACTOIsNull write SetID_CONTACTOIsNull; property CALLE: String read GetCALLEValue write SetCALLEValue; + property CALLEIsNull: Boolean read GetCALLEIsNull write SetCALLEIsNull; property POBLACION: String read GetPOBLACIONValue write SetPOBLACIONValue; + property POBLACIONIsNull: Boolean read GetPOBLACIONIsNull write SetPOBLACIONIsNull; property PROVINCIA: String read GetPROVINCIAValue write SetPROVINCIAValue; + property PROVINCIAIsNull: Boolean read GetPROVINCIAIsNull write SetPROVINCIAIsNull; property CODIGO_POSTAL: String read GetCODIGO_POSTALValue write SetCODIGO_POSTALValue; + property CODIGO_POSTALIsNull: Boolean read GetCODIGO_POSTALIsNull write SetCODIGO_POSTALIsNull; property PERSONA_CONTACTO: String read GetPERSONA_CONTACTOValue write SetPERSONA_CONTACTOValue; + property PERSONA_CONTACTOIsNull: Boolean read GetPERSONA_CONTACTOIsNull write SetPERSONA_CONTACTOIsNull; + property NOMBRE: String read GetNOMBREValue write SetNOMBREValue; + property NOMBREIsNull: Boolean read GetNOMBREIsNull write SetNOMBREIsNull; property TELEFONO: String read GetTELEFONOValue write SetTELEFONOValue; + property TELEFONOIsNull: Boolean read GetTELEFONOIsNull write SetTELEFONOIsNull; property MOVIL: String read GetMOVILValue write SetMOVILValue; + property MOVILIsNull: Boolean read GetMOVILIsNull write SetMOVILIsNull; property FAX: String read GetFAXValue write SetFAXValue; + property FAXIsNull: Boolean read GetFAXIsNull write SetFAXIsNull; property EMAIL: String read GetEMAILValue write SetEMAILValue; - property NOTAS: IROStrings read GetNOTASValue write SetNOTASValue; + property EMAILIsNull: Boolean read GetEMAILIsNull write SetEMAILIsNull; + property NOTAS: IROStrings read GetNOTASValue; + property NOTASIsNull: Boolean read GetNOTASIsNull write SetNOTASIsNull; property PORTE: Float read GetPORTEValue write SetPORTEValue; + property PORTEIsNull: Boolean read GetPORTEIsNull write SetPORTEIsNull; + property FECHA_ALTA: DateTime read GetFECHA_ALTAValue write SetFECHA_ALTAValue; + property FECHA_ALTAIsNull: Boolean read GetFECHA_ALTAIsNull write SetFECHA_ALTAIsNull; + property FECHA_MODIFICACION: DateTime read GetFECHA_MODIFICACIONValue write SetFECHA_MODIFICACIONValue; + property FECHA_MODIFICACIONIsNull: Boolean read GetFECHA_MODIFICACIONIsNull write SetFECHA_MODIFICACIONIsNull; public constructor Create(aDataTable: TDADataTable); override; @@ -1359,26 +2328,41 @@ type { IClientesDescuentos } IClientesDescuentos = interface(IDAStronglyTypedDataTable) - ['{F886D2B5-74CF-4173-A04A-085EB4844795}'] + ['{4D253EA6-435C-4C0B-A1A0-D133E1320C20}'] { Property getters and setters } function GetIDValue: Integer; procedure SetIDValue(const aValue: Integer); + function GetIDIsNull: Boolean; + procedure SetIDIsNull(const aValue: Boolean); function GetID_CLIENTEValue: Integer; procedure SetID_CLIENTEValue(const aValue: Integer); + function GetID_CLIENTEIsNull: Boolean; + procedure SetID_CLIENTEIsNull(const aValue: Boolean); function GetID_PROVEEDORValue: Integer; procedure SetID_PROVEEDORValue(const aValue: Integer); + function GetID_PROVEEDORIsNull: Boolean; + procedure SetID_PROVEEDORIsNull(const aValue: Boolean); function GetNOMBREValue: String; procedure SetNOMBREValue(const aValue: String); + function GetNOMBREIsNull: Boolean; + procedure SetNOMBREIsNull(const aValue: Boolean); function GetDESCUENTOValue: Float; procedure SetDESCUENTOValue(const aValue: Float); + function GetDESCUENTOIsNull: Boolean; + procedure SetDESCUENTOIsNull(const aValue: Boolean); { Properties } property ID: Integer read GetIDValue write SetIDValue; + property IDIsNull: Boolean read GetIDIsNull write SetIDIsNull; property ID_CLIENTE: Integer read GetID_CLIENTEValue write SetID_CLIENTEValue; + property ID_CLIENTEIsNull: Boolean read GetID_CLIENTEIsNull write SetID_CLIENTEIsNull; property ID_PROVEEDOR: Integer read GetID_PROVEEDORValue write SetID_PROVEEDORValue; + property ID_PROVEEDORIsNull: Boolean read GetID_PROVEEDORIsNull write SetID_PROVEEDORIsNull; property NOMBRE: String read GetNOMBREValue write SetNOMBREValue; + property NOMBREIsNull: Boolean read GetNOMBREIsNull write SetNOMBREIsNull; property DESCUENTO: Float read GetDESCUENTOValue write SetDESCUENTOValue; + property DESCUENTOIsNull: Boolean read GetDESCUENTOIsNull write SetDESCUENTOIsNull; end; { TClientesDescuentosDataTableRules } @@ -1388,21 +2372,36 @@ type { Property getters and setters } function GetIDValue: Integer; virtual; procedure SetIDValue(const aValue: Integer); virtual; + function GetIDIsNull: Boolean; virtual; + procedure SetIDIsNull(const aValue: Boolean); virtual; function GetID_CLIENTEValue: Integer; virtual; procedure SetID_CLIENTEValue(const aValue: Integer); virtual; + function GetID_CLIENTEIsNull: Boolean; virtual; + procedure SetID_CLIENTEIsNull(const aValue: Boolean); virtual; function GetID_PROVEEDORValue: Integer; virtual; procedure SetID_PROVEEDORValue(const aValue: Integer); virtual; + function GetID_PROVEEDORIsNull: Boolean; virtual; + procedure SetID_PROVEEDORIsNull(const aValue: Boolean); virtual; function GetNOMBREValue: String; virtual; procedure SetNOMBREValue(const aValue: String); virtual; + function GetNOMBREIsNull: Boolean; virtual; + procedure SetNOMBREIsNull(const aValue: Boolean); virtual; function GetDESCUENTOValue: Float; virtual; procedure SetDESCUENTOValue(const aValue: Float); virtual; + function GetDESCUENTOIsNull: Boolean; virtual; + procedure SetDESCUENTOIsNull(const aValue: Boolean); virtual; { Properties } property ID: Integer read GetIDValue write SetIDValue; + property IDIsNull: Boolean read GetIDIsNull write SetIDIsNull; property ID_CLIENTE: Integer read GetID_CLIENTEValue write SetID_CLIENTEValue; + property ID_CLIENTEIsNull: Boolean read GetID_CLIENTEIsNull write SetID_CLIENTEIsNull; property ID_PROVEEDOR: Integer read GetID_PROVEEDORValue write SetID_PROVEEDORValue; + property ID_PROVEEDORIsNull: Boolean read GetID_PROVEEDORIsNull write SetID_PROVEEDORIsNull; property NOMBRE: String read GetNOMBREValue write SetNOMBREValue; + property NOMBREIsNull: Boolean read GetNOMBREIsNull write SetNOMBREIsNull; property DESCUENTO: Float read GetDESCUENTOValue write SetDESCUENTOValue; + property DESCUENTOIsNull: Boolean read GetDESCUENTOIsNull write SetDESCUENTOIsNull; public constructor Create(aDataTable: TDADataTable); override; @@ -1412,14 +2411,17 @@ type { IGruposProveedor } IGruposProveedor = interface(IDAStronglyTypedDataTable) - ['{8A40BF38-E4DE-41D3-BC1F-B683003EDC4D}'] + ['{B7A45421-0C3B-462B-9E58-A27AE1D71575}'] { Property getters and setters } function GetDESCRIPCIONValue: String; procedure SetDESCRIPCIONValue(const aValue: String); + function GetDESCRIPCIONIsNull: Boolean; + procedure SetDESCRIPCIONIsNull(const aValue: Boolean); { Properties } property DESCRIPCION: String read GetDESCRIPCIONValue write SetDESCRIPCIONValue; + property DESCRIPCIONIsNull: Boolean read GetDESCRIPCIONIsNull write SetDESCRIPCIONIsNull; end; { TGruposProveedorDataTableRules } @@ -1429,9 +2431,12 @@ type { Property getters and setters } function GetDESCRIPCIONValue: String; virtual; procedure SetDESCRIPCIONValue(const aValue: String); virtual; + function GetDESCRIPCIONIsNull: Boolean; virtual; + procedure SetDESCRIPCIONIsNull(const aValue: Boolean); virtual; { Properties } property DESCRIPCION: String read GetDESCRIPCIONValue write SetDESCRIPCIONValue; + property DESCRIPCIONIsNull: Boolean read GetDESCRIPCIONIsNull write SetDESCRIPCIONIsNull; public constructor Create(aDataTable: TDADataTable); override; @@ -1441,14 +2446,17 @@ type { IGruposEmpleado } IGruposEmpleado = interface(IDAStronglyTypedDataTable) - ['{6E0FF24B-75DD-4796-AE74-B1D28F67770E}'] + ['{0D368F59-0457-4AAA-88E0-5DC08217AD42}'] { Property getters and setters } function GetDESCRIPCIONValue: String; procedure SetDESCRIPCIONValue(const aValue: String); + function GetDESCRIPCIONIsNull: Boolean; + procedure SetDESCRIPCIONIsNull(const aValue: Boolean); { Properties } property DESCRIPCION: String read GetDESCRIPCIONValue write SetDESCRIPCIONValue; + property DESCRIPCIONIsNull: Boolean read GetDESCRIPCIONIsNull write SetDESCRIPCIONIsNull; end; { TGruposEmpleadoDataTableRules } @@ -1458,9 +2466,287 @@ type { Property getters and setters } function GetDESCRIPCIONValue: String; virtual; procedure SetDESCRIPCIONValue(const aValue: String); virtual; + function GetDESCRIPCIONIsNull: Boolean; virtual; + procedure SetDESCRIPCIONIsNull(const aValue: Boolean); virtual; { Properties } property DESCRIPCION: String read GetDESCRIPCIONValue write SetDESCRIPCIONValue; + property DESCRIPCIONIsNull: Boolean read GetDESCRIPCIONIsNull write SetDESCRIPCIONIsNull; + + public + constructor Create(aDataTable: TDADataTable); override; + destructor Destroy; override; + + end; + + { IContactos_Refresh } + IContactos_Refresh = interface(IDAStronglyTypedDataTable) + ['{3F747BDC-1167-4192-9CA7-4FC51C649698}'] + { Property getters and setters } + function GetIDValue: Integer; + procedure SetIDValue(const aValue: Integer); + function GetIDIsNull: Boolean; + procedure SetIDIsNull(const aValue: Boolean); + function GetNIF_CIFValue: String; + procedure SetNIF_CIFValue(const aValue: String); + function GetNIF_CIFIsNull: Boolean; + procedure SetNIF_CIFIsNull(const aValue: Boolean); + function GetNOMBREValue: String; + procedure SetNOMBREValue(const aValue: String); + function GetNOMBREIsNull: Boolean; + procedure SetNOMBREIsNull(const aValue: Boolean); + function GetCALLEValue: String; + procedure SetCALLEValue(const aValue: String); + function GetCALLEIsNull: Boolean; + procedure SetCALLEIsNull(const aValue: Boolean); + function GetPOBLACIONValue: String; + procedure SetPOBLACIONValue(const aValue: String); + function GetPOBLACIONIsNull: Boolean; + procedure SetPOBLACIONIsNull(const aValue: Boolean); + function GetPROVINCIAValue: String; + procedure SetPROVINCIAValue(const aValue: String); + function GetPROVINCIAIsNull: Boolean; + procedure SetPROVINCIAIsNull(const aValue: Boolean); + function GetCODIGO_POSTALValue: String; + procedure SetCODIGO_POSTALValue(const aValue: String); + function GetCODIGO_POSTALIsNull: Boolean; + procedure SetCODIGO_POSTALIsNull(const aValue: Boolean); + function GetTELEFONO_1Value: String; + procedure SetTELEFONO_1Value(const aValue: String); + function GetTELEFONO_1IsNull: Boolean; + procedure SetTELEFONO_1IsNull(const aValue: Boolean); + function GetTELEFONO_2Value: String; + procedure SetTELEFONO_2Value(const aValue: String); + function GetTELEFONO_2IsNull: Boolean; + procedure SetTELEFONO_2IsNull(const aValue: Boolean); + function GetMOVIL_1Value: String; + procedure SetMOVIL_1Value(const aValue: String); + function GetMOVIL_1IsNull: Boolean; + procedure SetMOVIL_1IsNull(const aValue: Boolean); + function GetMOVIL_2Value: String; + procedure SetMOVIL_2Value(const aValue: String); + function GetMOVIL_2IsNull: Boolean; + procedure SetMOVIL_2IsNull(const aValue: Boolean); + function GetFAXValue: String; + procedure SetFAXValue(const aValue: String); + function GetFAXIsNull: Boolean; + procedure SetFAXIsNull(const aValue: Boolean); + function GetEMAIL_1Value: String; + procedure SetEMAIL_1Value(const aValue: String); + function GetEMAIL_1IsNull: Boolean; + procedure SetEMAIL_1IsNull(const aValue: Boolean); + function GetEMAIL_2Value: String; + procedure SetEMAIL_2Value(const aValue: String); + function GetEMAIL_2IsNull: Boolean; + procedure SetEMAIL_2IsNull(const aValue: Boolean); + function GetPAGINA_WEBValue: String; + procedure SetPAGINA_WEBValue(const aValue: String); + function GetPAGINA_WEBIsNull: Boolean; + procedure SetPAGINA_WEBIsNull(const aValue: Boolean); + function GetNOTASValue: IROStrings; + function GetNOTASIsNull: Boolean; + procedure SetNOTASIsNull(const aValue: Boolean); + function GetFECHA_ALTAValue: DateTime; + procedure SetFECHA_ALTAValue(const aValue: DateTime); + function GetFECHA_ALTAIsNull: Boolean; + procedure SetFECHA_ALTAIsNull(const aValue: Boolean); + function GetFECHA_MODIFICACIONValue: DateTime; + procedure SetFECHA_MODIFICACIONValue(const aValue: DateTime); + function GetFECHA_MODIFICACIONIsNull: Boolean; + procedure SetFECHA_MODIFICACIONIsNull(const aValue: Boolean); + function GetUSUARIOValue: String; + procedure SetUSUARIOValue(const aValue: String); + function GetUSUARIOIsNull: Boolean; + procedure SetUSUARIOIsNull(const aValue: Boolean); + function GetREFERENCIAValue: String; + procedure SetREFERENCIAValue(const aValue: String); + function GetREFERENCIAIsNull: Boolean; + procedure SetREFERENCIAIsNull(const aValue: Boolean); + function GetPERSONA_CONTACTOValue: String; + procedure SetPERSONA_CONTACTOValue(const aValue: String); + function GetPERSONA_CONTACTOIsNull: Boolean; + procedure SetPERSONA_CONTACTOIsNull(const aValue: Boolean); + + + { Properties } + property ID: Integer read GetIDValue write SetIDValue; + property IDIsNull: Boolean read GetIDIsNull write SetIDIsNull; + property NIF_CIF: String read GetNIF_CIFValue write SetNIF_CIFValue; + property NIF_CIFIsNull: Boolean read GetNIF_CIFIsNull write SetNIF_CIFIsNull; + property NOMBRE: String read GetNOMBREValue write SetNOMBREValue; + property NOMBREIsNull: Boolean read GetNOMBREIsNull write SetNOMBREIsNull; + property CALLE: String read GetCALLEValue write SetCALLEValue; + property CALLEIsNull: Boolean read GetCALLEIsNull write SetCALLEIsNull; + property POBLACION: String read GetPOBLACIONValue write SetPOBLACIONValue; + property POBLACIONIsNull: Boolean read GetPOBLACIONIsNull write SetPOBLACIONIsNull; + property PROVINCIA: String read GetPROVINCIAValue write SetPROVINCIAValue; + property PROVINCIAIsNull: Boolean read GetPROVINCIAIsNull write SetPROVINCIAIsNull; + property CODIGO_POSTAL: String read GetCODIGO_POSTALValue write SetCODIGO_POSTALValue; + property CODIGO_POSTALIsNull: Boolean read GetCODIGO_POSTALIsNull write SetCODIGO_POSTALIsNull; + property TELEFONO_1: String read GetTELEFONO_1Value write SetTELEFONO_1Value; + property TELEFONO_1IsNull: Boolean read GetTELEFONO_1IsNull write SetTELEFONO_1IsNull; + property TELEFONO_2: String read GetTELEFONO_2Value write SetTELEFONO_2Value; + property TELEFONO_2IsNull: Boolean read GetTELEFONO_2IsNull write SetTELEFONO_2IsNull; + property MOVIL_1: String read GetMOVIL_1Value write SetMOVIL_1Value; + property MOVIL_1IsNull: Boolean read GetMOVIL_1IsNull write SetMOVIL_1IsNull; + property MOVIL_2: String read GetMOVIL_2Value write SetMOVIL_2Value; + property MOVIL_2IsNull: Boolean read GetMOVIL_2IsNull write SetMOVIL_2IsNull; + property FAX: String read GetFAXValue write SetFAXValue; + property FAXIsNull: Boolean read GetFAXIsNull write SetFAXIsNull; + property EMAIL_1: String read GetEMAIL_1Value write SetEMAIL_1Value; + property EMAIL_1IsNull: Boolean read GetEMAIL_1IsNull write SetEMAIL_1IsNull; + property EMAIL_2: String read GetEMAIL_2Value write SetEMAIL_2Value; + property EMAIL_2IsNull: Boolean read GetEMAIL_2IsNull write SetEMAIL_2IsNull; + property PAGINA_WEB: String read GetPAGINA_WEBValue write SetPAGINA_WEBValue; + property PAGINA_WEBIsNull: Boolean read GetPAGINA_WEBIsNull write SetPAGINA_WEBIsNull; + property NOTAS: IROStrings read GetNOTASValue; + property NOTASIsNull: Boolean read GetNOTASIsNull write SetNOTASIsNull; + property FECHA_ALTA: DateTime read GetFECHA_ALTAValue write SetFECHA_ALTAValue; + property FECHA_ALTAIsNull: Boolean read GetFECHA_ALTAIsNull write SetFECHA_ALTAIsNull; + property FECHA_MODIFICACION: DateTime read GetFECHA_MODIFICACIONValue write SetFECHA_MODIFICACIONValue; + property FECHA_MODIFICACIONIsNull: Boolean read GetFECHA_MODIFICACIONIsNull write SetFECHA_MODIFICACIONIsNull; + property USUARIO: String read GetUSUARIOValue write SetUSUARIOValue; + property USUARIOIsNull: Boolean read GetUSUARIOIsNull write SetUSUARIOIsNull; + property REFERENCIA: String read GetREFERENCIAValue write SetREFERENCIAValue; + property REFERENCIAIsNull: Boolean read GetREFERENCIAIsNull write SetREFERENCIAIsNull; + property PERSONA_CONTACTO: String read GetPERSONA_CONTACTOValue write SetPERSONA_CONTACTOValue; + property PERSONA_CONTACTOIsNull: Boolean read GetPERSONA_CONTACTOIsNull write SetPERSONA_CONTACTOIsNull; + end; + + { TContactos_RefreshDataTableRules } + TContactos_RefreshDataTableRules = class(TDADataTableRules, IContactos_Refresh) + private + f_NOTAS: IROStrings; + procedure NOTAS_OnChange(Sender: TObject); + protected + { Property getters and setters } + function GetIDValue: Integer; virtual; + procedure SetIDValue(const aValue: Integer); virtual; + function GetIDIsNull: Boolean; virtual; + procedure SetIDIsNull(const aValue: Boolean); virtual; + function GetNIF_CIFValue: String; virtual; + procedure SetNIF_CIFValue(const aValue: String); virtual; + function GetNIF_CIFIsNull: Boolean; virtual; + procedure SetNIF_CIFIsNull(const aValue: Boolean); virtual; + function GetNOMBREValue: String; virtual; + procedure SetNOMBREValue(const aValue: String); virtual; + function GetNOMBREIsNull: Boolean; virtual; + procedure SetNOMBREIsNull(const aValue: Boolean); virtual; + function GetCALLEValue: String; virtual; + procedure SetCALLEValue(const aValue: String); virtual; + function GetCALLEIsNull: Boolean; virtual; + procedure SetCALLEIsNull(const aValue: Boolean); virtual; + function GetPOBLACIONValue: String; virtual; + procedure SetPOBLACIONValue(const aValue: String); virtual; + function GetPOBLACIONIsNull: Boolean; virtual; + procedure SetPOBLACIONIsNull(const aValue: Boolean); virtual; + function GetPROVINCIAValue: String; virtual; + procedure SetPROVINCIAValue(const aValue: String); virtual; + function GetPROVINCIAIsNull: Boolean; virtual; + procedure SetPROVINCIAIsNull(const aValue: Boolean); virtual; + function GetCODIGO_POSTALValue: String; virtual; + procedure SetCODIGO_POSTALValue(const aValue: String); virtual; + function GetCODIGO_POSTALIsNull: Boolean; virtual; + procedure SetCODIGO_POSTALIsNull(const aValue: Boolean); virtual; + function GetTELEFONO_1Value: String; virtual; + procedure SetTELEFONO_1Value(const aValue: String); virtual; + function GetTELEFONO_1IsNull: Boolean; virtual; + procedure SetTELEFONO_1IsNull(const aValue: Boolean); virtual; + function GetTELEFONO_2Value: String; virtual; + procedure SetTELEFONO_2Value(const aValue: String); virtual; + function GetTELEFONO_2IsNull: Boolean; virtual; + procedure SetTELEFONO_2IsNull(const aValue: Boolean); virtual; + function GetMOVIL_1Value: String; virtual; + procedure SetMOVIL_1Value(const aValue: String); virtual; + function GetMOVIL_1IsNull: Boolean; virtual; + procedure SetMOVIL_1IsNull(const aValue: Boolean); virtual; + function GetMOVIL_2Value: String; virtual; + procedure SetMOVIL_2Value(const aValue: String); virtual; + function GetMOVIL_2IsNull: Boolean; virtual; + procedure SetMOVIL_2IsNull(const aValue: Boolean); virtual; + function GetFAXValue: String; virtual; + procedure SetFAXValue(const aValue: String); virtual; + function GetFAXIsNull: Boolean; virtual; + procedure SetFAXIsNull(const aValue: Boolean); virtual; + function GetEMAIL_1Value: String; virtual; + procedure SetEMAIL_1Value(const aValue: String); virtual; + function GetEMAIL_1IsNull: Boolean; virtual; + procedure SetEMAIL_1IsNull(const aValue: Boolean); virtual; + function GetEMAIL_2Value: String; virtual; + procedure SetEMAIL_2Value(const aValue: String); virtual; + function GetEMAIL_2IsNull: Boolean; virtual; + procedure SetEMAIL_2IsNull(const aValue: Boolean); virtual; + function GetPAGINA_WEBValue: String; virtual; + procedure SetPAGINA_WEBValue(const aValue: String); virtual; + function GetPAGINA_WEBIsNull: Boolean; virtual; + procedure SetPAGINA_WEBIsNull(const aValue: Boolean); virtual; + function GetNOTASValue: IROStrings; virtual; + function GetNOTASIsNull: Boolean; virtual; + procedure SetNOTASIsNull(const aValue: Boolean); virtual; + function GetFECHA_ALTAValue: DateTime; virtual; + procedure SetFECHA_ALTAValue(const aValue: DateTime); virtual; + function GetFECHA_ALTAIsNull: Boolean; virtual; + procedure SetFECHA_ALTAIsNull(const aValue: Boolean); virtual; + function GetFECHA_MODIFICACIONValue: DateTime; virtual; + procedure SetFECHA_MODIFICACIONValue(const aValue: DateTime); virtual; + function GetFECHA_MODIFICACIONIsNull: Boolean; virtual; + procedure SetFECHA_MODIFICACIONIsNull(const aValue: Boolean); virtual; + function GetUSUARIOValue: String; virtual; + procedure SetUSUARIOValue(const aValue: String); virtual; + function GetUSUARIOIsNull: Boolean; virtual; + procedure SetUSUARIOIsNull(const aValue: Boolean); virtual; + function GetREFERENCIAValue: String; virtual; + procedure SetREFERENCIAValue(const aValue: String); virtual; + function GetREFERENCIAIsNull: Boolean; virtual; + procedure SetREFERENCIAIsNull(const aValue: Boolean); virtual; + function GetPERSONA_CONTACTOValue: String; virtual; + procedure SetPERSONA_CONTACTOValue(const aValue: String); virtual; + function GetPERSONA_CONTACTOIsNull: Boolean; virtual; + procedure SetPERSONA_CONTACTOIsNull(const aValue: Boolean); virtual; + + { Properties } + property ID: Integer read GetIDValue write SetIDValue; + property IDIsNull: Boolean read GetIDIsNull write SetIDIsNull; + property NIF_CIF: String read GetNIF_CIFValue write SetNIF_CIFValue; + property NIF_CIFIsNull: Boolean read GetNIF_CIFIsNull write SetNIF_CIFIsNull; + property NOMBRE: String read GetNOMBREValue write SetNOMBREValue; + property NOMBREIsNull: Boolean read GetNOMBREIsNull write SetNOMBREIsNull; + property CALLE: String read GetCALLEValue write SetCALLEValue; + property CALLEIsNull: Boolean read GetCALLEIsNull write SetCALLEIsNull; + property POBLACION: String read GetPOBLACIONValue write SetPOBLACIONValue; + property POBLACIONIsNull: Boolean read GetPOBLACIONIsNull write SetPOBLACIONIsNull; + property PROVINCIA: String read GetPROVINCIAValue write SetPROVINCIAValue; + property PROVINCIAIsNull: Boolean read GetPROVINCIAIsNull write SetPROVINCIAIsNull; + property CODIGO_POSTAL: String read GetCODIGO_POSTALValue write SetCODIGO_POSTALValue; + property CODIGO_POSTALIsNull: Boolean read GetCODIGO_POSTALIsNull write SetCODIGO_POSTALIsNull; + property TELEFONO_1: String read GetTELEFONO_1Value write SetTELEFONO_1Value; + property TELEFONO_1IsNull: Boolean read GetTELEFONO_1IsNull write SetTELEFONO_1IsNull; + property TELEFONO_2: String read GetTELEFONO_2Value write SetTELEFONO_2Value; + property TELEFONO_2IsNull: Boolean read GetTELEFONO_2IsNull write SetTELEFONO_2IsNull; + property MOVIL_1: String read GetMOVIL_1Value write SetMOVIL_1Value; + property MOVIL_1IsNull: Boolean read GetMOVIL_1IsNull write SetMOVIL_1IsNull; + property MOVIL_2: String read GetMOVIL_2Value write SetMOVIL_2Value; + property MOVIL_2IsNull: Boolean read GetMOVIL_2IsNull write SetMOVIL_2IsNull; + property FAX: String read GetFAXValue write SetFAXValue; + property FAXIsNull: Boolean read GetFAXIsNull write SetFAXIsNull; + property EMAIL_1: String read GetEMAIL_1Value write SetEMAIL_1Value; + property EMAIL_1IsNull: Boolean read GetEMAIL_1IsNull write SetEMAIL_1IsNull; + property EMAIL_2: String read GetEMAIL_2Value write SetEMAIL_2Value; + property EMAIL_2IsNull: Boolean read GetEMAIL_2IsNull write SetEMAIL_2IsNull; + property PAGINA_WEB: String read GetPAGINA_WEBValue write SetPAGINA_WEBValue; + property PAGINA_WEBIsNull: Boolean read GetPAGINA_WEBIsNull write SetPAGINA_WEBIsNull; + property NOTAS: IROStrings read GetNOTASValue; + property NOTASIsNull: Boolean read GetNOTASIsNull write SetNOTASIsNull; + property FECHA_ALTA: DateTime read GetFECHA_ALTAValue write SetFECHA_ALTAValue; + property FECHA_ALTAIsNull: Boolean read GetFECHA_ALTAIsNull write SetFECHA_ALTAIsNull; + property FECHA_MODIFICACION: DateTime read GetFECHA_MODIFICACIONValue write SetFECHA_MODIFICACIONValue; + property FECHA_MODIFICACIONIsNull: Boolean read GetFECHA_MODIFICACIONIsNull write SetFECHA_MODIFICACIONIsNull; + property USUARIO: String read GetUSUARIOValue write SetUSUARIOValue; + property USUARIOIsNull: Boolean read GetUSUARIOIsNull write SetUSUARIOIsNull; + property REFERENCIA: String read GetREFERENCIAValue write SetREFERENCIAValue; + property REFERENCIAIsNull: Boolean read GetREFERENCIAIsNull write SetREFERENCIAIsNull; + property PERSONA_CONTACTO: String read GetPERSONA_CONTACTOValue write SetPERSONA_CONTACTOValue; + property PERSONA_CONTACTOIsNull: Boolean read GetPERSONA_CONTACTOIsNull write SetPERSONA_CONTACTOIsNull; public constructor Create(aDataTable: TDADataTable); override; @@ -1470,12 +2756,18 @@ type implementation -uses Variants; +uses Variants, uROBinaryHelpers; { TContactosDataTableRules } constructor TContactosDataTableRules.Create(aDataTable: TDADataTable); +var + StrList: TStringList; begin inherited; + + StrList := TStringList.Create; + StrList.OnChange := NOTAS_OnChange; + f_NOTAS := NewROStrings(StrList,True); end; destructor TContactosDataTableRules.Destroy; @@ -1483,6 +2775,11 @@ begin inherited; end; +procedure TContactosDataTableRules.NOTAS_OnChange(Sender: TObject); +begin + if DataTable.Editing then DataTable.Fields[idx_ContactosNOTAS].AsVariant := TStringList(Sender).Text; +end; + function TContactosDataTableRules.GetIDValue: Integer; begin result := DataTable.Fields[idx_ContactosID].AsInteger; @@ -1493,6 +2790,17 @@ begin DataTable.Fields[idx_ContactosID].AsInteger := aValue; end; +function TContactosDataTableRules.GetIDIsNull: boolean; +begin + result := DataTable.Fields[idx_ContactosID].IsNull; +end; + +procedure TContactosDataTableRules.SetIDIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_ContactosID].AsVariant := Null; +end; + function TContactosDataTableRules.GetID_CATEGORIAValue: Integer; begin result := DataTable.Fields[idx_ContactosID_CATEGORIA].AsInteger; @@ -1503,6 +2811,17 @@ begin DataTable.Fields[idx_ContactosID_CATEGORIA].AsInteger := aValue; end; +function TContactosDataTableRules.GetID_CATEGORIAIsNull: boolean; +begin + result := DataTable.Fields[idx_ContactosID_CATEGORIA].IsNull; +end; + +procedure TContactosDataTableRules.SetID_CATEGORIAIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_ContactosID_CATEGORIA].AsVariant := Null; +end; + function TContactosDataTableRules.GetNIF_CIFValue: String; begin result := DataTable.Fields[idx_ContactosNIF_CIF].AsString; @@ -1513,6 +2832,17 @@ begin DataTable.Fields[idx_ContactosNIF_CIF].AsString := aValue; end; +function TContactosDataTableRules.GetNIF_CIFIsNull: boolean; +begin + result := DataTable.Fields[idx_ContactosNIF_CIF].IsNull; +end; + +procedure TContactosDataTableRules.SetNIF_CIFIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_ContactosNIF_CIF].AsVariant := Null; +end; + function TContactosDataTableRules.GetNOMBREValue: String; begin result := DataTable.Fields[idx_ContactosNOMBRE].AsString; @@ -1523,6 +2853,17 @@ begin DataTable.Fields[idx_ContactosNOMBRE].AsString := aValue; end; +function TContactosDataTableRules.GetNOMBREIsNull: boolean; +begin + result := DataTable.Fields[idx_ContactosNOMBRE].IsNull; +end; + +procedure TContactosDataTableRules.SetNOMBREIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_ContactosNOMBRE].AsVariant := Null; +end; + function TContactosDataTableRules.GetPERSONA_CONTACTOValue: String; begin result := DataTable.Fields[idx_ContactosPERSONA_CONTACTO].AsString; @@ -1533,6 +2874,17 @@ begin DataTable.Fields[idx_ContactosPERSONA_CONTACTO].AsString := aValue; end; +function TContactosDataTableRules.GetPERSONA_CONTACTOIsNull: boolean; +begin + result := DataTable.Fields[idx_ContactosPERSONA_CONTACTO].IsNull; +end; + +procedure TContactosDataTableRules.SetPERSONA_CONTACTOIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_ContactosPERSONA_CONTACTO].AsVariant := Null; +end; + function TContactosDataTableRules.GetCALLEValue: String; begin result := DataTable.Fields[idx_ContactosCALLE].AsString; @@ -1543,6 +2895,17 @@ begin DataTable.Fields[idx_ContactosCALLE].AsString := aValue; end; +function TContactosDataTableRules.GetCALLEIsNull: boolean; +begin + result := DataTable.Fields[idx_ContactosCALLE].IsNull; +end; + +procedure TContactosDataTableRules.SetCALLEIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_ContactosCALLE].AsVariant := Null; +end; + function TContactosDataTableRules.GetPOBLACIONValue: String; begin result := DataTable.Fields[idx_ContactosPOBLACION].AsString; @@ -1553,6 +2916,17 @@ begin DataTable.Fields[idx_ContactosPOBLACION].AsString := aValue; end; +function TContactosDataTableRules.GetPOBLACIONIsNull: boolean; +begin + result := DataTable.Fields[idx_ContactosPOBLACION].IsNull; +end; + +procedure TContactosDataTableRules.SetPOBLACIONIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_ContactosPOBLACION].AsVariant := Null; +end; + function TContactosDataTableRules.GetPROVINCIAValue: String; begin result := DataTable.Fields[idx_ContactosPROVINCIA].AsString; @@ -1563,6 +2937,17 @@ begin DataTable.Fields[idx_ContactosPROVINCIA].AsString := aValue; end; +function TContactosDataTableRules.GetPROVINCIAIsNull: boolean; +begin + result := DataTable.Fields[idx_ContactosPROVINCIA].IsNull; +end; + +procedure TContactosDataTableRules.SetPROVINCIAIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_ContactosPROVINCIA].AsVariant := Null; +end; + function TContactosDataTableRules.GetCODIGO_POSTALValue: String; begin result := DataTable.Fields[idx_ContactosCODIGO_POSTAL].AsString; @@ -1573,6 +2958,17 @@ begin DataTable.Fields[idx_ContactosCODIGO_POSTAL].AsString := aValue; end; +function TContactosDataTableRules.GetCODIGO_POSTALIsNull: boolean; +begin + result := DataTable.Fields[idx_ContactosCODIGO_POSTAL].IsNull; +end; + +procedure TContactosDataTableRules.SetCODIGO_POSTALIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_ContactosCODIGO_POSTAL].AsVariant := Null; +end; + function TContactosDataTableRules.GetTELEFONO_1Value: String; begin result := DataTable.Fields[idx_ContactosTELEFONO_1].AsString; @@ -1583,6 +2979,17 @@ begin DataTable.Fields[idx_ContactosTELEFONO_1].AsString := aValue; end; +function TContactosDataTableRules.GetTELEFONO_1IsNull: boolean; +begin + result := DataTable.Fields[idx_ContactosTELEFONO_1].IsNull; +end; + +procedure TContactosDataTableRules.SetTELEFONO_1IsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_ContactosTELEFONO_1].AsVariant := Null; +end; + function TContactosDataTableRules.GetTELEFONO_2Value: String; begin result := DataTable.Fields[idx_ContactosTELEFONO_2].AsString; @@ -1593,6 +3000,17 @@ begin DataTable.Fields[idx_ContactosTELEFONO_2].AsString := aValue; end; +function TContactosDataTableRules.GetTELEFONO_2IsNull: boolean; +begin + result := DataTable.Fields[idx_ContactosTELEFONO_2].IsNull; +end; + +procedure TContactosDataTableRules.SetTELEFONO_2IsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_ContactosTELEFONO_2].AsVariant := Null; +end; + function TContactosDataTableRules.GetMOVIL_1Value: String; begin result := DataTable.Fields[idx_ContactosMOVIL_1].AsString; @@ -1603,6 +3021,17 @@ begin DataTable.Fields[idx_ContactosMOVIL_1].AsString := aValue; end; +function TContactosDataTableRules.GetMOVIL_1IsNull: boolean; +begin + result := DataTable.Fields[idx_ContactosMOVIL_1].IsNull; +end; + +procedure TContactosDataTableRules.SetMOVIL_1IsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_ContactosMOVIL_1].AsVariant := Null; +end; + function TContactosDataTableRules.GetMOVIL_2Value: String; begin result := DataTable.Fields[idx_ContactosMOVIL_2].AsString; @@ -1613,6 +3042,17 @@ begin DataTable.Fields[idx_ContactosMOVIL_2].AsString := aValue; end; +function TContactosDataTableRules.GetMOVIL_2IsNull: boolean; +begin + result := DataTable.Fields[idx_ContactosMOVIL_2].IsNull; +end; + +procedure TContactosDataTableRules.SetMOVIL_2IsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_ContactosMOVIL_2].AsVariant := Null; +end; + function TContactosDataTableRules.GetFAXValue: String; begin result := DataTable.Fields[idx_ContactosFAX].AsString; @@ -1623,6 +3063,17 @@ begin DataTable.Fields[idx_ContactosFAX].AsString := aValue; end; +function TContactosDataTableRules.GetFAXIsNull: boolean; +begin + result := DataTable.Fields[idx_ContactosFAX].IsNull; +end; + +procedure TContactosDataTableRules.SetFAXIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_ContactosFAX].AsVariant := Null; +end; + function TContactosDataTableRules.GetEMAIL_1Value: String; begin result := DataTable.Fields[idx_ContactosEMAIL_1].AsString; @@ -1633,6 +3084,17 @@ begin DataTable.Fields[idx_ContactosEMAIL_1].AsString := aValue; end; +function TContactosDataTableRules.GetEMAIL_1IsNull: boolean; +begin + result := DataTable.Fields[idx_ContactosEMAIL_1].IsNull; +end; + +procedure TContactosDataTableRules.SetEMAIL_1IsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_ContactosEMAIL_1].AsVariant := Null; +end; + function TContactosDataTableRules.GetEMAIL_2Value: String; begin result := DataTable.Fields[idx_ContactosEMAIL_2].AsString; @@ -1643,6 +3105,17 @@ begin DataTable.Fields[idx_ContactosEMAIL_2].AsString := aValue; end; +function TContactosDataTableRules.GetEMAIL_2IsNull: boolean; +begin + result := DataTable.Fields[idx_ContactosEMAIL_2].IsNull; +end; + +procedure TContactosDataTableRules.SetEMAIL_2IsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_ContactosEMAIL_2].AsVariant := Null; +end; + function TContactosDataTableRules.GetPAGINA_WEBValue: String; begin result := DataTable.Fields[idx_ContactosPAGINA_WEB].AsString; @@ -1653,15 +3126,74 @@ begin DataTable.Fields[idx_ContactosPAGINA_WEB].AsString := aValue; end; +function TContactosDataTableRules.GetPAGINA_WEBIsNull: boolean; +begin + result := DataTable.Fields[idx_ContactosPAGINA_WEB].IsNull; +end; + +procedure TContactosDataTableRules.SetPAGINA_WEBIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_ContactosPAGINA_WEB].AsVariant := Null; +end; + function TContactosDataTableRules.GetNOTASValue: IROStrings; begin - result := NewROStrings(); + result := f_NOTAS; result.Text := DataTable.Fields[idx_ContactosNOTAS].AsString; end; -procedure TContactosDataTableRules.SetNOTASValue(const aValue: IROStrings); +function TContactosDataTableRules.GetNOTASIsNull: boolean; begin - DataTable.Fields[idx_ContactosNOTAS].AsString := aValue.Text; + result := DataTable.Fields[idx_ContactosNOTAS].IsNull; +end; + +procedure TContactosDataTableRules.SetNOTASIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_ContactosNOTAS].AsVariant := Null; +end; + +function TContactosDataTableRules.GetFECHA_ALTAValue: DateTime; +begin + result := DataTable.Fields[idx_ContactosFECHA_ALTA].AsDateTime; +end; + +procedure TContactosDataTableRules.SetFECHA_ALTAValue(const aValue: DateTime); +begin + DataTable.Fields[idx_ContactosFECHA_ALTA].AsDateTime := aValue; +end; + +function TContactosDataTableRules.GetFECHA_ALTAIsNull: boolean; +begin + result := DataTable.Fields[idx_ContactosFECHA_ALTA].IsNull; +end; + +procedure TContactosDataTableRules.SetFECHA_ALTAIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_ContactosFECHA_ALTA].AsVariant := Null; +end; + +function TContactosDataTableRules.GetFECHA_MODIFICACIONValue: DateTime; +begin + result := DataTable.Fields[idx_ContactosFECHA_MODIFICACION].AsDateTime; +end; + +procedure TContactosDataTableRules.SetFECHA_MODIFICACIONValue(const aValue: DateTime); +begin + DataTable.Fields[idx_ContactosFECHA_MODIFICACION].AsDateTime := aValue; +end; + +function TContactosDataTableRules.GetFECHA_MODIFICACIONIsNull: boolean; +begin + result := DataTable.Fields[idx_ContactosFECHA_MODIFICACION].IsNull; +end; + +procedure TContactosDataTableRules.SetFECHA_MODIFICACIONIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_ContactosFECHA_MODIFICACION].AsVariant := Null; end; function TContactosDataTableRules.GetUSUARIOValue: String; @@ -1674,6 +3206,17 @@ begin DataTable.Fields[idx_ContactosUSUARIO].AsString := aValue; end; +function TContactosDataTableRules.GetUSUARIOIsNull: boolean; +begin + result := DataTable.Fields[idx_ContactosUSUARIO].IsNull; +end; + +procedure TContactosDataTableRules.SetUSUARIOIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_ContactosUSUARIO].AsVariant := Null; +end; + function TContactosDataTableRules.GetID_EMPRESAValue: Integer; begin result := DataTable.Fields[idx_ContactosID_EMPRESA].AsInteger; @@ -1684,6 +3227,17 @@ begin DataTable.Fields[idx_ContactosID_EMPRESA].AsInteger := aValue; end; +function TContactosDataTableRules.GetID_EMPRESAIsNull: boolean; +begin + result := DataTable.Fields[idx_ContactosID_EMPRESA].IsNull; +end; + +procedure TContactosDataTableRules.SetID_EMPRESAIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_ContactosID_EMPRESA].AsVariant := Null; +end; + function TContactosDataTableRules.GetREFERENCIAValue: String; begin result := DataTable.Fields[idx_ContactosREFERENCIA].AsString; @@ -1694,6 +3248,17 @@ begin DataTable.Fields[idx_ContactosREFERENCIA].AsString := aValue; end; +function TContactosDataTableRules.GetREFERENCIAIsNull: boolean; +begin + result := DataTable.Fields[idx_ContactosREFERENCIA].IsNull; +end; + +procedure TContactosDataTableRules.SetREFERENCIAIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_ContactosREFERENCIA].AsVariant := Null; +end; + { TGruposClienteDataTableRules } constructor TGruposClienteDataTableRules.Create(aDataTable: TDADataTable); @@ -1716,6 +3281,17 @@ begin DataTable.Fields[idx_GruposClienteDESCRIPCION].AsString := aValue; end; +function TGruposClienteDataTableRules.GetDESCRIPCIONIsNull: boolean; +begin + result := DataTable.Fields[idx_GruposClienteDESCRIPCION].IsNull; +end; + +procedure TGruposClienteDataTableRules.SetDESCRIPCIONIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_GruposClienteDESCRIPCION].AsVariant := Null; +end; + { TDatosBancariosDataTableRules } constructor TDatosBancariosDataTableRules.Create(aDataTable: TDADataTable); @@ -1738,6 +3314,17 @@ begin DataTable.Fields[idx_DatosBancariosID].AsInteger := aValue; end; +function TDatosBancariosDataTableRules.GetIDIsNull: boolean; +begin + result := DataTable.Fields[idx_DatosBancariosID].IsNull; +end; + +procedure TDatosBancariosDataTableRules.SetIDIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_DatosBancariosID].AsVariant := Null; +end; + function TDatosBancariosDataTableRules.GetID_CONTACTOValue: Integer; begin result := DataTable.Fields[idx_DatosBancariosID_CONTACTO].AsInteger; @@ -1748,6 +3335,17 @@ begin DataTable.Fields[idx_DatosBancariosID_CONTACTO].AsInteger := aValue; end; +function TDatosBancariosDataTableRules.GetID_CONTACTOIsNull: boolean; +begin + result := DataTable.Fields[idx_DatosBancariosID_CONTACTO].IsNull; +end; + +procedure TDatosBancariosDataTableRules.SetID_CONTACTOIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_DatosBancariosID_CONTACTO].AsVariant := Null; +end; + function TDatosBancariosDataTableRules.GetTITULARValue: String; begin result := DataTable.Fields[idx_DatosBancariosTITULAR].AsString; @@ -1758,6 +3356,17 @@ begin DataTable.Fields[idx_DatosBancariosTITULAR].AsString := aValue; end; +function TDatosBancariosDataTableRules.GetTITULARIsNull: boolean; +begin + result := DataTable.Fields[idx_DatosBancariosTITULAR].IsNull; +end; + +procedure TDatosBancariosDataTableRules.SetTITULARIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_DatosBancariosTITULAR].AsVariant := Null; +end; + function TDatosBancariosDataTableRules.GetENTIDADValue: String; begin result := DataTable.Fields[idx_DatosBancariosENTIDAD].AsString; @@ -1768,6 +3377,17 @@ begin DataTable.Fields[idx_DatosBancariosENTIDAD].AsString := aValue; end; +function TDatosBancariosDataTableRules.GetENTIDADIsNull: boolean; +begin + result := DataTable.Fields[idx_DatosBancariosENTIDAD].IsNull; +end; + +procedure TDatosBancariosDataTableRules.SetENTIDADIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_DatosBancariosENTIDAD].AsVariant := Null; +end; + function TDatosBancariosDataTableRules.GetSUCURSALValue: String; begin result := DataTable.Fields[idx_DatosBancariosSUCURSAL].AsString; @@ -1778,6 +3398,17 @@ begin DataTable.Fields[idx_DatosBancariosSUCURSAL].AsString := aValue; end; +function TDatosBancariosDataTableRules.GetSUCURSALIsNull: boolean; +begin + result := DataTable.Fields[idx_DatosBancariosSUCURSAL].IsNull; +end; + +procedure TDatosBancariosDataTableRules.SetSUCURSALIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_DatosBancariosSUCURSAL].AsVariant := Null; +end; + function TDatosBancariosDataTableRules.GetDCValue: String; begin result := DataTable.Fields[idx_DatosBancariosDC].AsString; @@ -1788,6 +3419,17 @@ begin DataTable.Fields[idx_DatosBancariosDC].AsString := aValue; end; +function TDatosBancariosDataTableRules.GetDCIsNull: boolean; +begin + result := DataTable.Fields[idx_DatosBancariosDC].IsNull; +end; + +procedure TDatosBancariosDataTableRules.SetDCIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_DatosBancariosDC].AsVariant := Null; +end; + function TDatosBancariosDataTableRules.GetCUENTAValue: String; begin result := DataTable.Fields[idx_DatosBancariosCUENTA].AsString; @@ -1798,43 +3440,70 @@ begin DataTable.Fields[idx_DatosBancariosCUENTA].AsString := aValue; end; - -{ TContactosCategoriasDataTableRules } -constructor TContactosCategoriasDataTableRules.Create(aDataTable: TDADataTable); +function TDatosBancariosDataTableRules.GetCUENTAIsNull: boolean; begin - inherited; + result := DataTable.Fields[idx_DatosBancariosCUENTA].IsNull; end; -destructor TContactosCategoriasDataTableRules.Destroy; +procedure TDatosBancariosDataTableRules.SetCUENTAIsNull(const aValue: Boolean); begin - inherited; + if aValue then + DataTable.Fields[idx_DatosBancariosCUENTA].AsVariant := Null; end; -function TContactosCategoriasDataTableRules.GetID_CONTACTOValue: Integer; +function TDatosBancariosDataTableRules.GetFECHA_ALTAValue: DateTime; begin - result := DataTable.Fields[idx_ContactosCategoriasID_CONTACTO].AsInteger; + result := DataTable.Fields[idx_DatosBancariosFECHA_ALTA].AsDateTime; end; -procedure TContactosCategoriasDataTableRules.SetID_CONTACTOValue(const aValue: Integer); +procedure TDatosBancariosDataTableRules.SetFECHA_ALTAValue(const aValue: DateTime); begin - DataTable.Fields[idx_ContactosCategoriasID_CONTACTO].AsInteger := aValue; + DataTable.Fields[idx_DatosBancariosFECHA_ALTA].AsDateTime := aValue; end; -function TContactosCategoriasDataTableRules.GetID_CATEGORIAValue: Integer; +function TDatosBancariosDataTableRules.GetFECHA_ALTAIsNull: boolean; begin - result := DataTable.Fields[idx_ContactosCategoriasID_CATEGORIA].AsInteger; + result := DataTable.Fields[idx_DatosBancariosFECHA_ALTA].IsNull; end; -procedure TContactosCategoriasDataTableRules.SetID_CATEGORIAValue(const aValue: Integer); +procedure TDatosBancariosDataTableRules.SetFECHA_ALTAIsNull(const aValue: Boolean); begin - DataTable.Fields[idx_ContactosCategoriasID_CATEGORIA].AsInteger := aValue; + if aValue then + DataTable.Fields[idx_DatosBancariosFECHA_ALTA].AsVariant := Null; +end; + +function TDatosBancariosDataTableRules.GetFECHA_MODIFICACIONValue: DateTime; +begin + result := DataTable.Fields[idx_DatosBancariosFECHA_MODIFICACION].AsDateTime; +end; + +procedure TDatosBancariosDataTableRules.SetFECHA_MODIFICACIONValue(const aValue: DateTime); +begin + DataTable.Fields[idx_DatosBancariosFECHA_MODIFICACION].AsDateTime := aValue; +end; + +function TDatosBancariosDataTableRules.GetFECHA_MODIFICACIONIsNull: boolean; +begin + result := DataTable.Fields[idx_DatosBancariosFECHA_MODIFICACION].IsNull; +end; + +procedure TDatosBancariosDataTableRules.SetFECHA_MODIFICACIONIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_DatosBancariosFECHA_MODIFICACION].AsVariant := Null; end; { TClientesDataTableRules } constructor TClientesDataTableRules.Create(aDataTable: TDADataTable); +var + StrList: TStringList; begin inherited; + + StrList := TStringList.Create; + StrList.OnChange := NOTAS_OnChange; + f_NOTAS := NewROStrings(StrList,True); end; destructor TClientesDataTableRules.Destroy; @@ -1842,6 +3511,11 @@ begin inherited; end; +procedure TClientesDataTableRules.NOTAS_OnChange(Sender: TObject); +begin + if DataTable.Editing then DataTable.Fields[idx_ClientesNOTAS].AsVariant := TStringList(Sender).Text; +end; + function TClientesDataTableRules.GetIDValue: Integer; begin result := DataTable.Fields[idx_ClientesID].AsInteger; @@ -1852,6 +3526,17 @@ begin DataTable.Fields[idx_ClientesID].AsInteger := aValue; end; +function TClientesDataTableRules.GetIDIsNull: boolean; +begin + result := DataTable.Fields[idx_ClientesID].IsNull; +end; + +procedure TClientesDataTableRules.SetIDIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_ClientesID].AsVariant := Null; +end; + function TClientesDataTableRules.GetID_CATEGORIAValue: Integer; begin result := DataTable.Fields[idx_ClientesID_CATEGORIA].AsInteger; @@ -1862,6 +3547,17 @@ begin DataTable.Fields[idx_ClientesID_CATEGORIA].AsInteger := aValue; end; +function TClientesDataTableRules.GetID_CATEGORIAIsNull: boolean; +begin + result := DataTable.Fields[idx_ClientesID_CATEGORIA].IsNull; +end; + +procedure TClientesDataTableRules.SetID_CATEGORIAIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_ClientesID_CATEGORIA].AsVariant := Null; +end; + function TClientesDataTableRules.GetNIF_CIFValue: String; begin result := DataTable.Fields[idx_ClientesNIF_CIF].AsString; @@ -1872,6 +3568,17 @@ begin DataTable.Fields[idx_ClientesNIF_CIF].AsString := aValue; end; +function TClientesDataTableRules.GetNIF_CIFIsNull: boolean; +begin + result := DataTable.Fields[idx_ClientesNIF_CIF].IsNull; +end; + +procedure TClientesDataTableRules.SetNIF_CIFIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_ClientesNIF_CIF].AsVariant := Null; +end; + function TClientesDataTableRules.GetNOMBREValue: String; begin result := DataTable.Fields[idx_ClientesNOMBRE].AsString; @@ -1882,14 +3589,15 @@ begin DataTable.Fields[idx_ClientesNOMBRE].AsString := aValue; end; -function TClientesDataTableRules.GetCALLEValue: String; +function TClientesDataTableRules.GetNOMBREIsNull: boolean; begin - result := DataTable.Fields[idx_ClientesCALLE].AsString; + result := DataTable.Fields[idx_ClientesNOMBRE].IsNull; end; -procedure TClientesDataTableRules.SetCALLEValue(const aValue: String); +procedure TClientesDataTableRules.SetNOMBREIsNull(const aValue: Boolean); begin - DataTable.Fields[idx_ClientesCALLE].AsString := aValue; + if aValue then + DataTable.Fields[idx_ClientesNOMBRE].AsVariant := Null; end; function TClientesDataTableRules.GetPERSONA_CONTACTOValue: String; @@ -1902,6 +3610,38 @@ begin DataTable.Fields[idx_ClientesPERSONA_CONTACTO].AsString := aValue; end; +function TClientesDataTableRules.GetPERSONA_CONTACTOIsNull: boolean; +begin + result := DataTable.Fields[idx_ClientesPERSONA_CONTACTO].IsNull; +end; + +procedure TClientesDataTableRules.SetPERSONA_CONTACTOIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_ClientesPERSONA_CONTACTO].AsVariant := Null; +end; + +function TClientesDataTableRules.GetCALLEValue: String; +begin + result := DataTable.Fields[idx_ClientesCALLE].AsString; +end; + +procedure TClientesDataTableRules.SetCALLEValue(const aValue: String); +begin + DataTable.Fields[idx_ClientesCALLE].AsString := aValue; +end; + +function TClientesDataTableRules.GetCALLEIsNull: boolean; +begin + result := DataTable.Fields[idx_ClientesCALLE].IsNull; +end; + +procedure TClientesDataTableRules.SetCALLEIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_ClientesCALLE].AsVariant := Null; +end; + function TClientesDataTableRules.GetPOBLACIONValue: String; begin result := DataTable.Fields[idx_ClientesPOBLACION].AsString; @@ -1912,6 +3652,17 @@ begin DataTable.Fields[idx_ClientesPOBLACION].AsString := aValue; end; +function TClientesDataTableRules.GetPOBLACIONIsNull: boolean; +begin + result := DataTable.Fields[idx_ClientesPOBLACION].IsNull; +end; + +procedure TClientesDataTableRules.SetPOBLACIONIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_ClientesPOBLACION].AsVariant := Null; +end; + function TClientesDataTableRules.GetPROVINCIAValue: String; begin result := DataTable.Fields[idx_ClientesPROVINCIA].AsString; @@ -1922,6 +3673,17 @@ begin DataTable.Fields[idx_ClientesPROVINCIA].AsString := aValue; end; +function TClientesDataTableRules.GetPROVINCIAIsNull: boolean; +begin + result := DataTable.Fields[idx_ClientesPROVINCIA].IsNull; +end; + +procedure TClientesDataTableRules.SetPROVINCIAIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_ClientesPROVINCIA].AsVariant := Null; +end; + function TClientesDataTableRules.GetCODIGO_POSTALValue: String; begin result := DataTable.Fields[idx_ClientesCODIGO_POSTAL].AsString; @@ -1932,6 +3694,17 @@ begin DataTable.Fields[idx_ClientesCODIGO_POSTAL].AsString := aValue; end; +function TClientesDataTableRules.GetCODIGO_POSTALIsNull: boolean; +begin + result := DataTable.Fields[idx_ClientesCODIGO_POSTAL].IsNull; +end; + +procedure TClientesDataTableRules.SetCODIGO_POSTALIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_ClientesCODIGO_POSTAL].AsVariant := Null; +end; + function TClientesDataTableRules.GetTELEFONO_1Value: String; begin result := DataTable.Fields[idx_ClientesTELEFONO_1].AsString; @@ -1942,6 +3715,17 @@ begin DataTable.Fields[idx_ClientesTELEFONO_1].AsString := aValue; end; +function TClientesDataTableRules.GetTELEFONO_1IsNull: boolean; +begin + result := DataTable.Fields[idx_ClientesTELEFONO_1].IsNull; +end; + +procedure TClientesDataTableRules.SetTELEFONO_1IsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_ClientesTELEFONO_1].AsVariant := Null; +end; + function TClientesDataTableRules.GetTELEFONO_2Value: String; begin result := DataTable.Fields[idx_ClientesTELEFONO_2].AsString; @@ -1952,6 +3736,17 @@ begin DataTable.Fields[idx_ClientesTELEFONO_2].AsString := aValue; end; +function TClientesDataTableRules.GetTELEFONO_2IsNull: boolean; +begin + result := DataTable.Fields[idx_ClientesTELEFONO_2].IsNull; +end; + +procedure TClientesDataTableRules.SetTELEFONO_2IsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_ClientesTELEFONO_2].AsVariant := Null; +end; + function TClientesDataTableRules.GetMOVIL_1Value: String; begin result := DataTable.Fields[idx_ClientesMOVIL_1].AsString; @@ -1962,6 +3757,17 @@ begin DataTable.Fields[idx_ClientesMOVIL_1].AsString := aValue; end; +function TClientesDataTableRules.GetMOVIL_1IsNull: boolean; +begin + result := DataTable.Fields[idx_ClientesMOVIL_1].IsNull; +end; + +procedure TClientesDataTableRules.SetMOVIL_1IsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_ClientesMOVIL_1].AsVariant := Null; +end; + function TClientesDataTableRules.GetMOVIL_2Value: String; begin result := DataTable.Fields[idx_ClientesMOVIL_2].AsString; @@ -1972,6 +3778,17 @@ begin DataTable.Fields[idx_ClientesMOVIL_2].AsString := aValue; end; +function TClientesDataTableRules.GetMOVIL_2IsNull: boolean; +begin + result := DataTable.Fields[idx_ClientesMOVIL_2].IsNull; +end; + +procedure TClientesDataTableRules.SetMOVIL_2IsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_ClientesMOVIL_2].AsVariant := Null; +end; + function TClientesDataTableRules.GetFAXValue: String; begin result := DataTable.Fields[idx_ClientesFAX].AsString; @@ -1982,6 +3799,17 @@ begin DataTable.Fields[idx_ClientesFAX].AsString := aValue; end; +function TClientesDataTableRules.GetFAXIsNull: boolean; +begin + result := DataTable.Fields[idx_ClientesFAX].IsNull; +end; + +procedure TClientesDataTableRules.SetFAXIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_ClientesFAX].AsVariant := Null; +end; + function TClientesDataTableRules.GetEMAIL_1Value: String; begin result := DataTable.Fields[idx_ClientesEMAIL_1].AsString; @@ -1992,6 +3820,17 @@ begin DataTable.Fields[idx_ClientesEMAIL_1].AsString := aValue; end; +function TClientesDataTableRules.GetEMAIL_1IsNull: boolean; +begin + result := DataTable.Fields[idx_ClientesEMAIL_1].IsNull; +end; + +procedure TClientesDataTableRules.SetEMAIL_1IsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_ClientesEMAIL_1].AsVariant := Null; +end; + function TClientesDataTableRules.GetEMAIL_2Value: String; begin result := DataTable.Fields[idx_ClientesEMAIL_2].AsString; @@ -2002,6 +3841,17 @@ begin DataTable.Fields[idx_ClientesEMAIL_2].AsString := aValue; end; +function TClientesDataTableRules.GetEMAIL_2IsNull: boolean; +begin + result := DataTable.Fields[idx_ClientesEMAIL_2].IsNull; +end; + +procedure TClientesDataTableRules.SetEMAIL_2IsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_ClientesEMAIL_2].AsVariant := Null; +end; + function TClientesDataTableRules.GetPAGINA_WEBValue: String; begin result := DataTable.Fields[idx_ClientesPAGINA_WEB].AsString; @@ -2012,15 +3862,74 @@ begin DataTable.Fields[idx_ClientesPAGINA_WEB].AsString := aValue; end; +function TClientesDataTableRules.GetPAGINA_WEBIsNull: boolean; +begin + result := DataTable.Fields[idx_ClientesPAGINA_WEB].IsNull; +end; + +procedure TClientesDataTableRules.SetPAGINA_WEBIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_ClientesPAGINA_WEB].AsVariant := Null; +end; + function TClientesDataTableRules.GetNOTASValue: IROStrings; begin - result := NewROStrings(); + result := f_NOTAS; result.Text := DataTable.Fields[idx_ClientesNOTAS].AsString; end; -procedure TClientesDataTableRules.SetNOTASValue(const aValue: IROStrings); +function TClientesDataTableRules.GetNOTASIsNull: boolean; begin - DataTable.Fields[idx_ClientesNOTAS].AsString := aValue.Text; + result := DataTable.Fields[idx_ClientesNOTAS].IsNull; +end; + +procedure TClientesDataTableRules.SetNOTASIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_ClientesNOTAS].AsVariant := Null; +end; + +function TClientesDataTableRules.GetFECHA_ALTAValue: DateTime; +begin + result := DataTable.Fields[idx_ClientesFECHA_ALTA].AsDateTime; +end; + +procedure TClientesDataTableRules.SetFECHA_ALTAValue(const aValue: DateTime); +begin + DataTable.Fields[idx_ClientesFECHA_ALTA].AsDateTime := aValue; +end; + +function TClientesDataTableRules.GetFECHA_ALTAIsNull: boolean; +begin + result := DataTable.Fields[idx_ClientesFECHA_ALTA].IsNull; +end; + +procedure TClientesDataTableRules.SetFECHA_ALTAIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_ClientesFECHA_ALTA].AsVariant := Null; +end; + +function TClientesDataTableRules.GetFECHA_MODIFICACIONValue: DateTime; +begin + result := DataTable.Fields[idx_ClientesFECHA_MODIFICACION].AsDateTime; +end; + +procedure TClientesDataTableRules.SetFECHA_MODIFICACIONValue(const aValue: DateTime); +begin + DataTable.Fields[idx_ClientesFECHA_MODIFICACION].AsDateTime := aValue; +end; + +function TClientesDataTableRules.GetFECHA_MODIFICACIONIsNull: boolean; +begin + result := DataTable.Fields[idx_ClientesFECHA_MODIFICACION].IsNull; +end; + +procedure TClientesDataTableRules.SetFECHA_MODIFICACIONIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_ClientesFECHA_MODIFICACION].AsVariant := Null; end; function TClientesDataTableRules.GetUSUARIOValue: String; @@ -2033,6 +3942,17 @@ begin DataTable.Fields[idx_ClientesUSUARIO].AsString := aValue; end; +function TClientesDataTableRules.GetUSUARIOIsNull: boolean; +begin + result := DataTable.Fields[idx_ClientesUSUARIO].IsNull; +end; + +procedure TClientesDataTableRules.SetUSUARIOIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_ClientesUSUARIO].AsVariant := Null; +end; + function TClientesDataTableRules.GetID_EMPRESAValue: Integer; begin result := DataTable.Fields[idx_ClientesID_EMPRESA].AsInteger; @@ -2043,6 +3963,17 @@ begin DataTable.Fields[idx_ClientesID_EMPRESA].AsInteger := aValue; end; +function TClientesDataTableRules.GetID_EMPRESAIsNull: boolean; +begin + result := DataTable.Fields[idx_ClientesID_EMPRESA].IsNull; +end; + +procedure TClientesDataTableRules.SetID_EMPRESAIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_ClientesID_EMPRESA].AsVariant := Null; +end; + function TClientesDataTableRules.GetREFERENCIAValue: String; begin result := DataTable.Fields[idx_ClientesREFERENCIA].AsString; @@ -2053,54 +3984,15 @@ begin DataTable.Fields[idx_ClientesREFERENCIA].AsString := aValue; end; -function TClientesDataTableRules.GetID_TIPO_IVAValue: Integer; +function TClientesDataTableRules.GetREFERENCIAIsNull: boolean; begin - result := DataTable.Fields[idx_ClientesID_TIPO_IVA].AsInteger; + result := DataTable.Fields[idx_ClientesREFERENCIA].IsNull; end; -procedure TClientesDataTableRules.SetID_TIPO_IVAValue(const aValue: Integer); +procedure TClientesDataTableRules.SetREFERENCIAIsNull(const aValue: Boolean); begin - DataTable.Fields[idx_ClientesID_TIPO_IVA].AsInteger := aValue; -end; - -function TClientesDataTableRules.GetREGIMEN_IVAValue: String; -begin - result := DataTable.Fields[idx_ClientesREGIMEN_IVA].AsString; -end; - -procedure TClientesDataTableRules.SetREGIMEN_IVAValue(const aValue: String); -begin - DataTable.Fields[idx_ClientesREGIMEN_IVA].AsString := aValue; -end; - -function TClientesDataTableRules.GetID_FORMA_PAGOValue: Integer; -begin - result := DataTable.Fields[idx_ClientesID_FORMA_PAGO].AsInteger; -end; - -procedure TClientesDataTableRules.SetID_FORMA_PAGOValue(const aValue: Integer); -begin - DataTable.Fields[idx_ClientesID_FORMA_PAGO].AsInteger := aValue; -end; - -function TClientesDataTableRules.GetTIENDA_WEBValue: Integer; -begin - result := DataTable.Fields[idx_ClientesTIENDA_WEB].AsInteger; -end; - -procedure TClientesDataTableRules.SetTIENDA_WEBValue(const aValue: Integer); -begin - DataTable.Fields[idx_ClientesTIENDA_WEB].AsInteger := aValue; -end; - -function TClientesDataTableRules.GetRECARGO_EQUIVALENCIAValue: Integer; -begin - result := DataTable.Fields[idx_ClientesRECARGO_EQUIVALENCIA].AsInteger; -end; - -procedure TClientesDataTableRules.SetRECARGO_EQUIVALENCIAValue(const aValue: Integer); -begin - DataTable.Fields[idx_ClientesRECARGO_EQUIVALENCIA].AsInteger := aValue; + if aValue then + DataTable.Fields[idx_ClientesREFERENCIA].AsVariant := Null; end; function TClientesDataTableRules.GetGRUPO_CLIENTEValue: String; @@ -2113,6 +4005,17 @@ begin DataTable.Fields[idx_ClientesGRUPO_CLIENTE].AsString := aValue; end; +function TClientesDataTableRules.GetGRUPO_CLIENTEIsNull: boolean; +begin + result := DataTable.Fields[idx_ClientesGRUPO_CLIENTE].IsNull; +end; + +procedure TClientesDataTableRules.SetGRUPO_CLIENTEIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_ClientesGRUPO_CLIENTE].AsVariant := Null; +end; + function TClientesDataTableRules.GetNOMBRE_COMERCIALValue: String; begin result := DataTable.Fields[idx_ClientesNOMBRE_COMERCIAL].AsString; @@ -2123,6 +4026,17 @@ begin DataTable.Fields[idx_ClientesNOMBRE_COMERCIAL].AsString := aValue; end; +function TClientesDataTableRules.GetNOMBRE_COMERCIALIsNull: boolean; +begin + result := DataTable.Fields[idx_ClientesNOMBRE_COMERCIAL].IsNull; +end; + +procedure TClientesDataTableRules.SetNOMBRE_COMERCIALIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_ClientesNOMBRE_COMERCIAL].AsVariant := Null; +end; + function TClientesDataTableRules.GetVENCIMIENTO_FACTURASValue: Integer; begin result := DataTable.Fields[idx_ClientesVENCIMIENTO_FACTURAS].AsInteger; @@ -2133,14 +4047,57 @@ begin DataTable.Fields[idx_ClientesVENCIMIENTO_FACTURAS].AsInteger := aValue; end; -function TClientesDataTableRules.GetBLOQUEADOValue: Integer; +function TClientesDataTableRules.GetVENCIMIENTO_FACTURASIsNull: boolean; begin - result := DataTable.Fields[idx_ClientesBLOQUEADO].AsInteger; + result := DataTable.Fields[idx_ClientesVENCIMIENTO_FACTURAS].IsNull; end; -procedure TClientesDataTableRules.SetBLOQUEADOValue(const aValue: Integer); +procedure TClientesDataTableRules.SetVENCIMIENTO_FACTURASIsNull(const aValue: Boolean); begin - DataTable.Fields[idx_ClientesBLOQUEADO].AsInteger := aValue; + if aValue then + DataTable.Fields[idx_ClientesVENCIMIENTO_FACTURAS].AsVariant := Null; +end; + +function TClientesDataTableRules.GetBLOQUEADOValue: SmallInt; +begin + result := DataTable.Fields[idx_ClientesBLOQUEADO].AsSmallInt; +end; + +procedure TClientesDataTableRules.SetBLOQUEADOValue(const aValue: SmallInt); +begin + DataTable.Fields[idx_ClientesBLOQUEADO].AsSmallInt := aValue; +end; + +function TClientesDataTableRules.GetBLOQUEADOIsNull: boolean; +begin + result := DataTable.Fields[idx_ClientesBLOQUEADO].IsNull; +end; + +procedure TClientesDataTableRules.SetBLOQUEADOIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_ClientesBLOQUEADO].AsVariant := Null; +end; + +function TClientesDataTableRules.GetREGIMEN_IVAValue: String; +begin + result := DataTable.Fields[idx_ClientesREGIMEN_IVA].AsString; +end; + +procedure TClientesDataTableRules.SetREGIMEN_IVAValue(const aValue: String); +begin + DataTable.Fields[idx_ClientesREGIMEN_IVA].AsString := aValue; +end; + +function TClientesDataTableRules.GetREGIMEN_IVAIsNull: boolean; +begin + result := DataTable.Fields[idx_ClientesREGIMEN_IVA].IsNull; +end; + +procedure TClientesDataTableRules.SetREGIMEN_IVAIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_ClientesREGIMEN_IVA].AsVariant := Null; end; function TClientesDataTableRules.GetMOTIVO_BLOQUEOValue: String; @@ -2153,11 +4110,112 @@ begin DataTable.Fields[idx_ClientesMOTIVO_BLOQUEO].AsString := aValue; end; +function TClientesDataTableRules.GetMOTIVO_BLOQUEOIsNull: boolean; +begin + result := DataTable.Fields[idx_ClientesMOTIVO_BLOQUEO].IsNull; +end; + +procedure TClientesDataTableRules.SetMOTIVO_BLOQUEOIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_ClientesMOTIVO_BLOQUEO].AsVariant := Null; +end; + +function TClientesDataTableRules.GetRECARGO_EQUIVALENCIAValue: Integer; +begin + result := DataTable.Fields[idx_ClientesRECARGO_EQUIVALENCIA].AsInteger; +end; + +procedure TClientesDataTableRules.SetRECARGO_EQUIVALENCIAValue(const aValue: Integer); +begin + DataTable.Fields[idx_ClientesRECARGO_EQUIVALENCIA].AsInteger := aValue; +end; + +function TClientesDataTableRules.GetRECARGO_EQUIVALENCIAIsNull: boolean; +begin + result := DataTable.Fields[idx_ClientesRECARGO_EQUIVALENCIA].IsNull; +end; + +procedure TClientesDataTableRules.SetRECARGO_EQUIVALENCIAIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_ClientesRECARGO_EQUIVALENCIA].AsVariant := Null; +end; + +function TClientesDataTableRules.GetID_TIPO_IVAValue: Integer; +begin + result := DataTable.Fields[idx_ClientesID_TIPO_IVA].AsInteger; +end; + +procedure TClientesDataTableRules.SetID_TIPO_IVAValue(const aValue: Integer); +begin + DataTable.Fields[idx_ClientesID_TIPO_IVA].AsInteger := aValue; +end; + +function TClientesDataTableRules.GetID_TIPO_IVAIsNull: boolean; +begin + result := DataTable.Fields[idx_ClientesID_TIPO_IVA].IsNull; +end; + +procedure TClientesDataTableRules.SetID_TIPO_IVAIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_ClientesID_TIPO_IVA].AsVariant := Null; +end; + +function TClientesDataTableRules.GetID_FORMA_PAGOValue: Integer; +begin + result := DataTable.Fields[idx_ClientesID_FORMA_PAGO].AsInteger; +end; + +procedure TClientesDataTableRules.SetID_FORMA_PAGOValue(const aValue: Integer); +begin + DataTable.Fields[idx_ClientesID_FORMA_PAGO].AsInteger := aValue; +end; + +function TClientesDataTableRules.GetID_FORMA_PAGOIsNull: boolean; +begin + result := DataTable.Fields[idx_ClientesID_FORMA_PAGO].IsNull; +end; + +procedure TClientesDataTableRules.SetID_FORMA_PAGOIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_ClientesID_FORMA_PAGO].AsVariant := Null; +end; + +function TClientesDataTableRules.GetTIENDA_WEBValue: SmallInt; +begin + result := DataTable.Fields[idx_ClientesTIENDA_WEB].AsSmallInt; +end; + +procedure TClientesDataTableRules.SetTIENDA_WEBValue(const aValue: SmallInt); +begin + DataTable.Fields[idx_ClientesTIENDA_WEB].AsSmallInt := aValue; +end; + +function TClientesDataTableRules.GetTIENDA_WEBIsNull: boolean; +begin + result := DataTable.Fields[idx_ClientesTIENDA_WEB].IsNull; +end; + +procedure TClientesDataTableRules.SetTIENDA_WEBIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_ClientesTIENDA_WEB].AsVariant := Null; +end; + { TProveedoresDataTableRules } constructor TProveedoresDataTableRules.Create(aDataTable: TDADataTable); +var + StrList: TStringList; begin inherited; + + StrList := TStringList.Create; + StrList.OnChange := NOTAS_OnChange; + f_NOTAS := NewROStrings(StrList,True); end; destructor TProveedoresDataTableRules.Destroy; @@ -2165,6 +4223,11 @@ begin inherited; end; +procedure TProveedoresDataTableRules.NOTAS_OnChange(Sender: TObject); +begin + if DataTable.Editing then DataTable.Fields[idx_ProveedoresNOTAS].AsVariant := TStringList(Sender).Text; +end; + function TProveedoresDataTableRules.GetIDValue: Integer; begin result := DataTable.Fields[idx_ProveedoresID].AsInteger; @@ -2175,6 +4238,17 @@ begin DataTable.Fields[idx_ProveedoresID].AsInteger := aValue; end; +function TProveedoresDataTableRules.GetIDIsNull: boolean; +begin + result := DataTable.Fields[idx_ProveedoresID].IsNull; +end; + +procedure TProveedoresDataTableRules.SetIDIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_ProveedoresID].AsVariant := Null; +end; + function TProveedoresDataTableRules.GetID_CATEGORIAValue: Integer; begin result := DataTable.Fields[idx_ProveedoresID_CATEGORIA].AsInteger; @@ -2185,6 +4259,17 @@ begin DataTable.Fields[idx_ProveedoresID_CATEGORIA].AsInteger := aValue; end; +function TProveedoresDataTableRules.GetID_CATEGORIAIsNull: boolean; +begin + result := DataTable.Fields[idx_ProveedoresID_CATEGORIA].IsNull; +end; + +procedure TProveedoresDataTableRules.SetID_CATEGORIAIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_ProveedoresID_CATEGORIA].AsVariant := Null; +end; + function TProveedoresDataTableRules.GetNIF_CIFValue: String; begin result := DataTable.Fields[idx_ProveedoresNIF_CIF].AsString; @@ -2195,6 +4280,17 @@ begin DataTable.Fields[idx_ProveedoresNIF_CIF].AsString := aValue; end; +function TProveedoresDataTableRules.GetNIF_CIFIsNull: boolean; +begin + result := DataTable.Fields[idx_ProveedoresNIF_CIF].IsNull; +end; + +procedure TProveedoresDataTableRules.SetNIF_CIFIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_ProveedoresNIF_CIF].AsVariant := Null; +end; + function TProveedoresDataTableRules.GetNOMBREValue: String; begin result := DataTable.Fields[idx_ProveedoresNOMBRE].AsString; @@ -2205,14 +4301,15 @@ begin DataTable.Fields[idx_ProveedoresNOMBRE].AsString := aValue; end; -function TProveedoresDataTableRules.GetCALLEValue: String; +function TProveedoresDataTableRules.GetNOMBREIsNull: boolean; begin - result := DataTable.Fields[idx_ProveedoresCALLE].AsString; + result := DataTable.Fields[idx_ProveedoresNOMBRE].IsNull; end; -procedure TProveedoresDataTableRules.SetCALLEValue(const aValue: String); +procedure TProveedoresDataTableRules.SetNOMBREIsNull(const aValue: Boolean); begin - DataTable.Fields[idx_ProveedoresCALLE].AsString := aValue; + if aValue then + DataTable.Fields[idx_ProveedoresNOMBRE].AsVariant := Null; end; function TProveedoresDataTableRules.GetPERSONA_CONTACTOValue: String; @@ -2225,6 +4322,38 @@ begin DataTable.Fields[idx_ProveedoresPERSONA_CONTACTO].AsString := aValue; end; +function TProveedoresDataTableRules.GetPERSONA_CONTACTOIsNull: boolean; +begin + result := DataTable.Fields[idx_ProveedoresPERSONA_CONTACTO].IsNull; +end; + +procedure TProveedoresDataTableRules.SetPERSONA_CONTACTOIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_ProveedoresPERSONA_CONTACTO].AsVariant := Null; +end; + +function TProveedoresDataTableRules.GetCALLEValue: String; +begin + result := DataTable.Fields[idx_ProveedoresCALLE].AsString; +end; + +procedure TProveedoresDataTableRules.SetCALLEValue(const aValue: String); +begin + DataTable.Fields[idx_ProveedoresCALLE].AsString := aValue; +end; + +function TProveedoresDataTableRules.GetCALLEIsNull: boolean; +begin + result := DataTable.Fields[idx_ProveedoresCALLE].IsNull; +end; + +procedure TProveedoresDataTableRules.SetCALLEIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_ProveedoresCALLE].AsVariant := Null; +end; + function TProveedoresDataTableRules.GetPOBLACIONValue: String; begin result := DataTable.Fields[idx_ProveedoresPOBLACION].AsString; @@ -2235,6 +4364,17 @@ begin DataTable.Fields[idx_ProveedoresPOBLACION].AsString := aValue; end; +function TProveedoresDataTableRules.GetPOBLACIONIsNull: boolean; +begin + result := DataTable.Fields[idx_ProveedoresPOBLACION].IsNull; +end; + +procedure TProveedoresDataTableRules.SetPOBLACIONIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_ProveedoresPOBLACION].AsVariant := Null; +end; + function TProveedoresDataTableRules.GetPROVINCIAValue: String; begin result := DataTable.Fields[idx_ProveedoresPROVINCIA].AsString; @@ -2245,6 +4385,17 @@ begin DataTable.Fields[idx_ProveedoresPROVINCIA].AsString := aValue; end; +function TProveedoresDataTableRules.GetPROVINCIAIsNull: boolean; +begin + result := DataTable.Fields[idx_ProveedoresPROVINCIA].IsNull; +end; + +procedure TProveedoresDataTableRules.SetPROVINCIAIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_ProveedoresPROVINCIA].AsVariant := Null; +end; + function TProveedoresDataTableRules.GetCODIGO_POSTALValue: String; begin result := DataTable.Fields[idx_ProveedoresCODIGO_POSTAL].AsString; @@ -2255,6 +4406,17 @@ begin DataTable.Fields[idx_ProveedoresCODIGO_POSTAL].AsString := aValue; end; +function TProveedoresDataTableRules.GetCODIGO_POSTALIsNull: boolean; +begin + result := DataTable.Fields[idx_ProveedoresCODIGO_POSTAL].IsNull; +end; + +procedure TProveedoresDataTableRules.SetCODIGO_POSTALIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_ProveedoresCODIGO_POSTAL].AsVariant := Null; +end; + function TProveedoresDataTableRules.GetTELEFONO_1Value: String; begin result := DataTable.Fields[idx_ProveedoresTELEFONO_1].AsString; @@ -2265,6 +4427,17 @@ begin DataTable.Fields[idx_ProveedoresTELEFONO_1].AsString := aValue; end; +function TProveedoresDataTableRules.GetTELEFONO_1IsNull: boolean; +begin + result := DataTable.Fields[idx_ProveedoresTELEFONO_1].IsNull; +end; + +procedure TProveedoresDataTableRules.SetTELEFONO_1IsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_ProveedoresTELEFONO_1].AsVariant := Null; +end; + function TProveedoresDataTableRules.GetTELEFONO_2Value: String; begin result := DataTable.Fields[idx_ProveedoresTELEFONO_2].AsString; @@ -2275,6 +4448,17 @@ begin DataTable.Fields[idx_ProveedoresTELEFONO_2].AsString := aValue; end; +function TProveedoresDataTableRules.GetTELEFONO_2IsNull: boolean; +begin + result := DataTable.Fields[idx_ProveedoresTELEFONO_2].IsNull; +end; + +procedure TProveedoresDataTableRules.SetTELEFONO_2IsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_ProveedoresTELEFONO_2].AsVariant := Null; +end; + function TProveedoresDataTableRules.GetMOVIL_1Value: String; begin result := DataTable.Fields[idx_ProveedoresMOVIL_1].AsString; @@ -2285,6 +4469,17 @@ begin DataTable.Fields[idx_ProveedoresMOVIL_1].AsString := aValue; end; +function TProveedoresDataTableRules.GetMOVIL_1IsNull: boolean; +begin + result := DataTable.Fields[idx_ProveedoresMOVIL_1].IsNull; +end; + +procedure TProveedoresDataTableRules.SetMOVIL_1IsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_ProveedoresMOVIL_1].AsVariant := Null; +end; + function TProveedoresDataTableRules.GetMOVIL_2Value: String; begin result := DataTable.Fields[idx_ProveedoresMOVIL_2].AsString; @@ -2295,6 +4490,17 @@ begin DataTable.Fields[idx_ProveedoresMOVIL_2].AsString := aValue; end; +function TProveedoresDataTableRules.GetMOVIL_2IsNull: boolean; +begin + result := DataTable.Fields[idx_ProveedoresMOVIL_2].IsNull; +end; + +procedure TProveedoresDataTableRules.SetMOVIL_2IsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_ProveedoresMOVIL_2].AsVariant := Null; +end; + function TProveedoresDataTableRules.GetFAXValue: String; begin result := DataTable.Fields[idx_ProveedoresFAX].AsString; @@ -2305,6 +4511,17 @@ begin DataTable.Fields[idx_ProveedoresFAX].AsString := aValue; end; +function TProveedoresDataTableRules.GetFAXIsNull: boolean; +begin + result := DataTable.Fields[idx_ProveedoresFAX].IsNull; +end; + +procedure TProveedoresDataTableRules.SetFAXIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_ProveedoresFAX].AsVariant := Null; +end; + function TProveedoresDataTableRules.GetEMAIL_1Value: String; begin result := DataTable.Fields[idx_ProveedoresEMAIL_1].AsString; @@ -2315,6 +4532,17 @@ begin DataTable.Fields[idx_ProveedoresEMAIL_1].AsString := aValue; end; +function TProveedoresDataTableRules.GetEMAIL_1IsNull: boolean; +begin + result := DataTable.Fields[idx_ProveedoresEMAIL_1].IsNull; +end; + +procedure TProveedoresDataTableRules.SetEMAIL_1IsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_ProveedoresEMAIL_1].AsVariant := Null; +end; + function TProveedoresDataTableRules.GetEMAIL_2Value: String; begin result := DataTable.Fields[idx_ProveedoresEMAIL_2].AsString; @@ -2325,6 +4553,17 @@ begin DataTable.Fields[idx_ProveedoresEMAIL_2].AsString := aValue; end; +function TProveedoresDataTableRules.GetEMAIL_2IsNull: boolean; +begin + result := DataTable.Fields[idx_ProveedoresEMAIL_2].IsNull; +end; + +procedure TProveedoresDataTableRules.SetEMAIL_2IsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_ProveedoresEMAIL_2].AsVariant := Null; +end; + function TProveedoresDataTableRules.GetPAGINA_WEBValue: String; begin result := DataTable.Fields[idx_ProveedoresPAGINA_WEB].AsString; @@ -2335,15 +4574,74 @@ begin DataTable.Fields[idx_ProveedoresPAGINA_WEB].AsString := aValue; end; +function TProveedoresDataTableRules.GetPAGINA_WEBIsNull: boolean; +begin + result := DataTable.Fields[idx_ProveedoresPAGINA_WEB].IsNull; +end; + +procedure TProveedoresDataTableRules.SetPAGINA_WEBIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_ProveedoresPAGINA_WEB].AsVariant := Null; +end; + function TProveedoresDataTableRules.GetNOTASValue: IROStrings; begin - result := NewROStrings(); + result := f_NOTAS; result.Text := DataTable.Fields[idx_ProveedoresNOTAS].AsString; end; -procedure TProveedoresDataTableRules.SetNOTASValue(const aValue: IROStrings); +function TProveedoresDataTableRules.GetNOTASIsNull: boolean; begin - DataTable.Fields[idx_ProveedoresNOTAS].AsString := aValue.Text; + result := DataTable.Fields[idx_ProveedoresNOTAS].IsNull; +end; + +procedure TProveedoresDataTableRules.SetNOTASIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_ProveedoresNOTAS].AsVariant := Null; +end; + +function TProveedoresDataTableRules.GetFECHA_ALTAValue: DateTime; +begin + result := DataTable.Fields[idx_ProveedoresFECHA_ALTA].AsDateTime; +end; + +procedure TProveedoresDataTableRules.SetFECHA_ALTAValue(const aValue: DateTime); +begin + DataTable.Fields[idx_ProveedoresFECHA_ALTA].AsDateTime := aValue; +end; + +function TProveedoresDataTableRules.GetFECHA_ALTAIsNull: boolean; +begin + result := DataTable.Fields[idx_ProveedoresFECHA_ALTA].IsNull; +end; + +procedure TProveedoresDataTableRules.SetFECHA_ALTAIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_ProveedoresFECHA_ALTA].AsVariant := Null; +end; + +function TProveedoresDataTableRules.GetFECHA_MODIFICACIONValue: DateTime; +begin + result := DataTable.Fields[idx_ProveedoresFECHA_MODIFICACION].AsDateTime; +end; + +procedure TProveedoresDataTableRules.SetFECHA_MODIFICACIONValue(const aValue: DateTime); +begin + DataTable.Fields[idx_ProveedoresFECHA_MODIFICACION].AsDateTime := aValue; +end; + +function TProveedoresDataTableRules.GetFECHA_MODIFICACIONIsNull: boolean; +begin + result := DataTable.Fields[idx_ProveedoresFECHA_MODIFICACION].IsNull; +end; + +procedure TProveedoresDataTableRules.SetFECHA_MODIFICACIONIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_ProveedoresFECHA_MODIFICACION].AsVariant := Null; end; function TProveedoresDataTableRules.GetUSUARIOValue: String; @@ -2356,6 +4654,17 @@ begin DataTable.Fields[idx_ProveedoresUSUARIO].AsString := aValue; end; +function TProveedoresDataTableRules.GetUSUARIOIsNull: boolean; +begin + result := DataTable.Fields[idx_ProveedoresUSUARIO].IsNull; +end; + +procedure TProveedoresDataTableRules.SetUSUARIOIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_ProveedoresUSUARIO].AsVariant := Null; +end; + function TProveedoresDataTableRules.GetID_EMPRESAValue: Integer; begin result := DataTable.Fields[idx_ProveedoresID_EMPRESA].AsInteger; @@ -2366,6 +4675,17 @@ begin DataTable.Fields[idx_ProveedoresID_EMPRESA].AsInteger := aValue; end; +function TProveedoresDataTableRules.GetID_EMPRESAIsNull: boolean; +begin + result := DataTable.Fields[idx_ProveedoresID_EMPRESA].IsNull; +end; + +procedure TProveedoresDataTableRules.SetID_EMPRESAIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_ProveedoresID_EMPRESA].AsVariant := Null; +end; + function TProveedoresDataTableRules.GetREFERENCIAValue: String; begin result := DataTable.Fields[idx_ProveedoresREFERENCIA].AsString; @@ -2376,44 +4696,15 @@ begin DataTable.Fields[idx_ProveedoresREFERENCIA].AsString := aValue; end; -function TProveedoresDataTableRules.GetID_TIPO_IVAValue: Integer; +function TProveedoresDataTableRules.GetREFERENCIAIsNull: boolean; begin - result := DataTable.Fields[idx_ProveedoresID_TIPO_IVA].AsInteger; + result := DataTable.Fields[idx_ProveedoresREFERENCIA].IsNull; end; -procedure TProveedoresDataTableRules.SetID_TIPO_IVAValue(const aValue: Integer); +procedure TProveedoresDataTableRules.SetREFERENCIAIsNull(const aValue: Boolean); begin - DataTable.Fields[idx_ProveedoresID_TIPO_IVA].AsInteger := aValue; -end; - -function TProveedoresDataTableRules.GetREGIMEN_IVAValue: String; -begin - result := DataTable.Fields[idx_ProveedoresREGIMEN_IVA].AsString; -end; - -procedure TProveedoresDataTableRules.SetREGIMEN_IVAValue(const aValue: String); -begin - DataTable.Fields[idx_ProveedoresREGIMEN_IVA].AsString := aValue; -end; - -function TProveedoresDataTableRules.GetID_FORMA_PAGOValue: Integer; -begin - result := DataTable.Fields[idx_ProveedoresID_FORMA_PAGO].AsInteger; -end; - -procedure TProveedoresDataTableRules.SetID_FORMA_PAGOValue(const aValue: Integer); -begin - DataTable.Fields[idx_ProveedoresID_FORMA_PAGO].AsInteger := aValue; -end; - -function TProveedoresDataTableRules.GetTIENDA_WEBValue: Integer; -begin - result := DataTable.Fields[idx_ProveedoresTIENDA_WEB].AsInteger; -end; - -procedure TProveedoresDataTableRules.SetTIENDA_WEBValue(const aValue: Integer); -begin - DataTable.Fields[idx_ProveedoresTIENDA_WEB].AsInteger := aValue; + if aValue then + DataTable.Fields[idx_ProveedoresREFERENCIA].AsVariant := Null; end; function TProveedoresDataTableRules.GetDESCUENTOValue: Float; @@ -2426,6 +4717,17 @@ begin DataTable.Fields[idx_ProveedoresDESCUENTO].AsFloat := aValue; end; +function TProveedoresDataTableRules.GetDESCUENTOIsNull: boolean; +begin + result := DataTable.Fields[idx_ProveedoresDESCUENTO].IsNull; +end; + +procedure TProveedoresDataTableRules.SetDESCUENTOIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_ProveedoresDESCUENTO].AsVariant := Null; +end; + function TProveedoresDataTableRules.GetDESCRIPCION_PROVEEDORValue: String; begin result := DataTable.Fields[idx_ProveedoresDESCRIPCION_PROVEEDOR].AsString; @@ -2436,6 +4738,17 @@ begin DataTable.Fields[idx_ProveedoresDESCRIPCION_PROVEEDOR].AsString := aValue; end; +function TProveedoresDataTableRules.GetDESCRIPCION_PROVEEDORIsNull: boolean; +begin + result := DataTable.Fields[idx_ProveedoresDESCRIPCION_PROVEEDOR].IsNull; +end; + +procedure TProveedoresDataTableRules.SetDESCRIPCION_PROVEEDORIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_ProveedoresDESCRIPCION_PROVEEDOR].AsVariant := Null; +end; + function TProveedoresDataTableRules.GetCODIGO_ASIGNADOValue: String; begin result := DataTable.Fields[idx_ProveedoresCODIGO_ASIGNADO].AsString; @@ -2446,24 +4759,15 @@ begin DataTable.Fields[idx_ProveedoresCODIGO_ASIGNADO].AsString := aValue; end; -function TProveedoresDataTableRules.GetHOMOLOGADOValue: Integer; +function TProveedoresDataTableRules.GetCODIGO_ASIGNADOIsNull: boolean; begin - result := DataTable.Fields[idx_ProveedoresHOMOLOGADO].AsInteger; + result := DataTable.Fields[idx_ProveedoresCODIGO_ASIGNADO].IsNull; end; -procedure TProveedoresDataTableRules.SetHOMOLOGADOValue(const aValue: Integer); +procedure TProveedoresDataTableRules.SetCODIGO_ASIGNADOIsNull(const aValue: Boolean); begin - DataTable.Fields[idx_ProveedoresHOMOLOGADO].AsInteger := aValue; -end; - -function TProveedoresDataTableRules.GetCERTIFICACIONValue: String; -begin - result := DataTable.Fields[idx_ProveedoresCERTIFICACION].AsString; -end; - -procedure TProveedoresDataTableRules.SetCERTIFICACIONValue(const aValue: String); -begin - DataTable.Fields[idx_ProveedoresCERTIFICACION].AsString := aValue; + if aValue then + DataTable.Fields[idx_ProveedoresCODIGO_ASIGNADO].AsVariant := Null; end; function TProveedoresDataTableRules.GetGRUPO_PROVEEDORValue: String; @@ -2476,11 +4780,170 @@ begin DataTable.Fields[idx_ProveedoresGRUPO_PROVEEDOR].AsString := aValue; end; +function TProveedoresDataTableRules.GetGRUPO_PROVEEDORIsNull: boolean; +begin + result := DataTable.Fields[idx_ProveedoresGRUPO_PROVEEDOR].IsNull; +end; + +procedure TProveedoresDataTableRules.SetGRUPO_PROVEEDORIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_ProveedoresGRUPO_PROVEEDOR].AsVariant := Null; +end; + +function TProveedoresDataTableRules.GetREGIMEN_IVAValue: String; +begin + result := DataTable.Fields[idx_ProveedoresREGIMEN_IVA].AsString; +end; + +procedure TProveedoresDataTableRules.SetREGIMEN_IVAValue(const aValue: String); +begin + DataTable.Fields[idx_ProveedoresREGIMEN_IVA].AsString := aValue; +end; + +function TProveedoresDataTableRules.GetREGIMEN_IVAIsNull: boolean; +begin + result := DataTable.Fields[idx_ProveedoresREGIMEN_IVA].IsNull; +end; + +procedure TProveedoresDataTableRules.SetREGIMEN_IVAIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_ProveedoresREGIMEN_IVA].AsVariant := Null; +end; + +function TProveedoresDataTableRules.GetID_TIPO_IVAValue: Integer; +begin + result := DataTable.Fields[idx_ProveedoresID_TIPO_IVA].AsInteger; +end; + +procedure TProveedoresDataTableRules.SetID_TIPO_IVAValue(const aValue: Integer); +begin + DataTable.Fields[idx_ProveedoresID_TIPO_IVA].AsInteger := aValue; +end; + +function TProveedoresDataTableRules.GetID_TIPO_IVAIsNull: boolean; +begin + result := DataTable.Fields[idx_ProveedoresID_TIPO_IVA].IsNull; +end; + +procedure TProveedoresDataTableRules.SetID_TIPO_IVAIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_ProveedoresID_TIPO_IVA].AsVariant := Null; +end; + +function TProveedoresDataTableRules.GetID_FORMA_PAGOValue: Integer; +begin + result := DataTable.Fields[idx_ProveedoresID_FORMA_PAGO].AsInteger; +end; + +procedure TProveedoresDataTableRules.SetID_FORMA_PAGOValue(const aValue: Integer); +begin + DataTable.Fields[idx_ProveedoresID_FORMA_PAGO].AsInteger := aValue; +end; + +function TProveedoresDataTableRules.GetID_FORMA_PAGOIsNull: boolean; +begin + result := DataTable.Fields[idx_ProveedoresID_FORMA_PAGO].IsNull; +end; + +procedure TProveedoresDataTableRules.SetID_FORMA_PAGOIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_ProveedoresID_FORMA_PAGO].AsVariant := Null; +end; + +function TProveedoresDataTableRules.GetTIENDA_WEBValue: SmallInt; +begin + result := DataTable.Fields[idx_ProveedoresTIENDA_WEB].AsSmallInt; +end; + +procedure TProveedoresDataTableRules.SetTIENDA_WEBValue(const aValue: SmallInt); +begin + DataTable.Fields[idx_ProveedoresTIENDA_WEB].AsSmallInt := aValue; +end; + +function TProveedoresDataTableRules.GetTIENDA_WEBIsNull: boolean; +begin + result := DataTable.Fields[idx_ProveedoresTIENDA_WEB].IsNull; +end; + +procedure TProveedoresDataTableRules.SetTIENDA_WEBIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_ProveedoresTIENDA_WEB].AsVariant := Null; +end; + +function TProveedoresDataTableRules.GetHOMOLOGADOValue: SmallInt; +begin + result := DataTable.Fields[idx_ProveedoresHOMOLOGADO].AsSmallInt; +end; + +procedure TProveedoresDataTableRules.SetHOMOLOGADOValue(const aValue: SmallInt); +begin + DataTable.Fields[idx_ProveedoresHOMOLOGADO].AsSmallInt := aValue; +end; + +function TProveedoresDataTableRules.GetHOMOLOGADOIsNull: boolean; +begin + result := DataTable.Fields[idx_ProveedoresHOMOLOGADO].IsNull; +end; + +procedure TProveedoresDataTableRules.SetHOMOLOGADOIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_ProveedoresHOMOLOGADO].AsVariant := Null; +end; + +function TProveedoresDataTableRules.GetCERTIFICACIONValue: String; +begin + result := DataTable.Fields[idx_ProveedoresCERTIFICACION].AsString; +end; + +procedure TProveedoresDataTableRules.SetCERTIFICACIONValue(const aValue: String); +begin + DataTable.Fields[idx_ProveedoresCERTIFICACION].AsString := aValue; +end; + +function TProveedoresDataTableRules.GetCERTIFICACIONIsNull: boolean; +begin + result := DataTable.Fields[idx_ProveedoresCERTIFICACION].IsNull; +end; + +procedure TProveedoresDataTableRules.SetCERTIFICACIONIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_ProveedoresCERTIFICACION].AsVariant := Null; +end; + { TEmpleadosDataTableRules } constructor TEmpleadosDataTableRules.Create(aDataTable: TDADataTable); +var + StrList: TStringList; begin inherited; + + StrList := TStringList.Create; + StrList.OnChange := NOTAS_OnChange; + f_NOTAS := NewROStrings(StrList,True); + + StrList := TStringList.Create; + StrList.OnChange := FORMACION_BASE_OnChange; + f_FORMACION_BASE := NewROStrings(StrList,True); + + StrList := TStringList.Create; + StrList.OnChange := FORMACION_COMPLE_OnChange; + f_FORMACION_COMPLE := NewROStrings(StrList,True); + + StrList := TStringList.Create; + StrList.OnChange := FORMACION_RECIBIDA_OnChange; + f_FORMACION_RECIBIDA := NewROStrings(StrList,True); + + StrList := TStringList.Create; + StrList.OnChange := EXPERIENCIA_OnChange; + f_EXPERIENCIA := NewROStrings(StrList,True); end; destructor TEmpleadosDataTableRules.Destroy; @@ -2488,6 +4951,31 @@ begin inherited; end; +procedure TEmpleadosDataTableRules.NOTAS_OnChange(Sender: TObject); +begin + if DataTable.Editing then DataTable.Fields[idx_EmpleadosNOTAS].AsVariant := TStringList(Sender).Text; +end; + +procedure TEmpleadosDataTableRules.FORMACION_BASE_OnChange(Sender: TObject); +begin + if DataTable.Editing then DataTable.Fields[idx_EmpleadosFORMACION_BASE].AsVariant := TStringList(Sender).Text; +end; + +procedure TEmpleadosDataTableRules.FORMACION_COMPLE_OnChange(Sender: TObject); +begin + if DataTable.Editing then DataTable.Fields[idx_EmpleadosFORMACION_COMPLE].AsVariant := TStringList(Sender).Text; +end; + +procedure TEmpleadosDataTableRules.FORMACION_RECIBIDA_OnChange(Sender: TObject); +begin + if DataTable.Editing then DataTable.Fields[idx_EmpleadosFORMACION_RECIBIDA].AsVariant := TStringList(Sender).Text; +end; + +procedure TEmpleadosDataTableRules.EXPERIENCIA_OnChange(Sender: TObject); +begin + if DataTable.Editing then DataTable.Fields[idx_EmpleadosEXPERIENCIA].AsVariant := TStringList(Sender).Text; +end; + function TEmpleadosDataTableRules.GetIDValue: Integer; begin result := DataTable.Fields[idx_EmpleadosID].AsInteger; @@ -2498,6 +4986,17 @@ begin DataTable.Fields[idx_EmpleadosID].AsInteger := aValue; end; +function TEmpleadosDataTableRules.GetIDIsNull: boolean; +begin + result := DataTable.Fields[idx_EmpleadosID].IsNull; +end; + +procedure TEmpleadosDataTableRules.SetIDIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_EmpleadosID].AsVariant := Null; +end; + function TEmpleadosDataTableRules.GetID_CATEGORIAValue: Integer; begin result := DataTable.Fields[idx_EmpleadosID_CATEGORIA].AsInteger; @@ -2508,6 +5007,17 @@ begin DataTable.Fields[idx_EmpleadosID_CATEGORIA].AsInteger := aValue; end; +function TEmpleadosDataTableRules.GetID_CATEGORIAIsNull: boolean; +begin + result := DataTable.Fields[idx_EmpleadosID_CATEGORIA].IsNull; +end; + +procedure TEmpleadosDataTableRules.SetID_CATEGORIAIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_EmpleadosID_CATEGORIA].AsVariant := Null; +end; + function TEmpleadosDataTableRules.GetNIF_CIFValue: String; begin result := DataTable.Fields[idx_EmpleadosNIF_CIF].AsString; @@ -2518,6 +5028,17 @@ begin DataTable.Fields[idx_EmpleadosNIF_CIF].AsString := aValue; end; +function TEmpleadosDataTableRules.GetNIF_CIFIsNull: boolean; +begin + result := DataTable.Fields[idx_EmpleadosNIF_CIF].IsNull; +end; + +procedure TEmpleadosDataTableRules.SetNIF_CIFIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_EmpleadosNIF_CIF].AsVariant := Null; +end; + function TEmpleadosDataTableRules.GetNOMBREValue: String; begin result := DataTable.Fields[idx_EmpleadosNOMBRE].AsString; @@ -2528,14 +5049,15 @@ begin DataTable.Fields[idx_EmpleadosNOMBRE].AsString := aValue; end; -function TEmpleadosDataTableRules.GetCALLEValue: String; +function TEmpleadosDataTableRules.GetNOMBREIsNull: boolean; begin - result := DataTable.Fields[idx_EmpleadosCALLE].AsString; + result := DataTable.Fields[idx_EmpleadosNOMBRE].IsNull; end; -procedure TEmpleadosDataTableRules.SetCALLEValue(const aValue: String); +procedure TEmpleadosDataTableRules.SetNOMBREIsNull(const aValue: Boolean); begin - DataTable.Fields[idx_EmpleadosCALLE].AsString := aValue; + if aValue then + DataTable.Fields[idx_EmpleadosNOMBRE].AsVariant := Null; end; function TEmpleadosDataTableRules.GetPERSONA_CONTACTOValue: String; @@ -2548,6 +5070,38 @@ begin DataTable.Fields[idx_EmpleadosPERSONA_CONTACTO].AsString := aValue; end; +function TEmpleadosDataTableRules.GetPERSONA_CONTACTOIsNull: boolean; +begin + result := DataTable.Fields[idx_EmpleadosPERSONA_CONTACTO].IsNull; +end; + +procedure TEmpleadosDataTableRules.SetPERSONA_CONTACTOIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_EmpleadosPERSONA_CONTACTO].AsVariant := Null; +end; + +function TEmpleadosDataTableRules.GetCALLEValue: String; +begin + result := DataTable.Fields[idx_EmpleadosCALLE].AsString; +end; + +procedure TEmpleadosDataTableRules.SetCALLEValue(const aValue: String); +begin + DataTable.Fields[idx_EmpleadosCALLE].AsString := aValue; +end; + +function TEmpleadosDataTableRules.GetCALLEIsNull: boolean; +begin + result := DataTable.Fields[idx_EmpleadosCALLE].IsNull; +end; + +procedure TEmpleadosDataTableRules.SetCALLEIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_EmpleadosCALLE].AsVariant := Null; +end; + function TEmpleadosDataTableRules.GetPOBLACIONValue: String; begin result := DataTable.Fields[idx_EmpleadosPOBLACION].AsString; @@ -2558,6 +5112,17 @@ begin DataTable.Fields[idx_EmpleadosPOBLACION].AsString := aValue; end; +function TEmpleadosDataTableRules.GetPOBLACIONIsNull: boolean; +begin + result := DataTable.Fields[idx_EmpleadosPOBLACION].IsNull; +end; + +procedure TEmpleadosDataTableRules.SetPOBLACIONIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_EmpleadosPOBLACION].AsVariant := Null; +end; + function TEmpleadosDataTableRules.GetPROVINCIAValue: String; begin result := DataTable.Fields[idx_EmpleadosPROVINCIA].AsString; @@ -2568,6 +5133,17 @@ begin DataTable.Fields[idx_EmpleadosPROVINCIA].AsString := aValue; end; +function TEmpleadosDataTableRules.GetPROVINCIAIsNull: boolean; +begin + result := DataTable.Fields[idx_EmpleadosPROVINCIA].IsNull; +end; + +procedure TEmpleadosDataTableRules.SetPROVINCIAIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_EmpleadosPROVINCIA].AsVariant := Null; +end; + function TEmpleadosDataTableRules.GetCODIGO_POSTALValue: String; begin result := DataTable.Fields[idx_EmpleadosCODIGO_POSTAL].AsString; @@ -2578,6 +5154,17 @@ begin DataTable.Fields[idx_EmpleadosCODIGO_POSTAL].AsString := aValue; end; +function TEmpleadosDataTableRules.GetCODIGO_POSTALIsNull: boolean; +begin + result := DataTable.Fields[idx_EmpleadosCODIGO_POSTAL].IsNull; +end; + +procedure TEmpleadosDataTableRules.SetCODIGO_POSTALIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_EmpleadosCODIGO_POSTAL].AsVariant := Null; +end; + function TEmpleadosDataTableRules.GetTELEFONO_1Value: String; begin result := DataTable.Fields[idx_EmpleadosTELEFONO_1].AsString; @@ -2588,6 +5175,17 @@ begin DataTable.Fields[idx_EmpleadosTELEFONO_1].AsString := aValue; end; +function TEmpleadosDataTableRules.GetTELEFONO_1IsNull: boolean; +begin + result := DataTable.Fields[idx_EmpleadosTELEFONO_1].IsNull; +end; + +procedure TEmpleadosDataTableRules.SetTELEFONO_1IsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_EmpleadosTELEFONO_1].AsVariant := Null; +end; + function TEmpleadosDataTableRules.GetTELEFONO_2Value: String; begin result := DataTable.Fields[idx_EmpleadosTELEFONO_2].AsString; @@ -2598,6 +5196,17 @@ begin DataTable.Fields[idx_EmpleadosTELEFONO_2].AsString := aValue; end; +function TEmpleadosDataTableRules.GetTELEFONO_2IsNull: boolean; +begin + result := DataTable.Fields[idx_EmpleadosTELEFONO_2].IsNull; +end; + +procedure TEmpleadosDataTableRules.SetTELEFONO_2IsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_EmpleadosTELEFONO_2].AsVariant := Null; +end; + function TEmpleadosDataTableRules.GetMOVIL_1Value: String; begin result := DataTable.Fields[idx_EmpleadosMOVIL_1].AsString; @@ -2608,6 +5217,17 @@ begin DataTable.Fields[idx_EmpleadosMOVIL_1].AsString := aValue; end; +function TEmpleadosDataTableRules.GetMOVIL_1IsNull: boolean; +begin + result := DataTable.Fields[idx_EmpleadosMOVIL_1].IsNull; +end; + +procedure TEmpleadosDataTableRules.SetMOVIL_1IsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_EmpleadosMOVIL_1].AsVariant := Null; +end; + function TEmpleadosDataTableRules.GetMOVIL_2Value: String; begin result := DataTable.Fields[idx_EmpleadosMOVIL_2].AsString; @@ -2618,6 +5238,17 @@ begin DataTable.Fields[idx_EmpleadosMOVIL_2].AsString := aValue; end; +function TEmpleadosDataTableRules.GetMOVIL_2IsNull: boolean; +begin + result := DataTable.Fields[idx_EmpleadosMOVIL_2].IsNull; +end; + +procedure TEmpleadosDataTableRules.SetMOVIL_2IsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_EmpleadosMOVIL_2].AsVariant := Null; +end; + function TEmpleadosDataTableRules.GetFAXValue: String; begin result := DataTable.Fields[idx_EmpleadosFAX].AsString; @@ -2628,6 +5259,17 @@ begin DataTable.Fields[idx_EmpleadosFAX].AsString := aValue; end; +function TEmpleadosDataTableRules.GetFAXIsNull: boolean; +begin + result := DataTable.Fields[idx_EmpleadosFAX].IsNull; +end; + +procedure TEmpleadosDataTableRules.SetFAXIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_EmpleadosFAX].AsVariant := Null; +end; + function TEmpleadosDataTableRules.GetEMAIL_1Value: String; begin result := DataTable.Fields[idx_EmpleadosEMAIL_1].AsString; @@ -2638,6 +5280,17 @@ begin DataTable.Fields[idx_EmpleadosEMAIL_1].AsString := aValue; end; +function TEmpleadosDataTableRules.GetEMAIL_1IsNull: boolean; +begin + result := DataTable.Fields[idx_EmpleadosEMAIL_1].IsNull; +end; + +procedure TEmpleadosDataTableRules.SetEMAIL_1IsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_EmpleadosEMAIL_1].AsVariant := Null; +end; + function TEmpleadosDataTableRules.GetEMAIL_2Value: String; begin result := DataTable.Fields[idx_EmpleadosEMAIL_2].AsString; @@ -2648,6 +5301,17 @@ begin DataTable.Fields[idx_EmpleadosEMAIL_2].AsString := aValue; end; +function TEmpleadosDataTableRules.GetEMAIL_2IsNull: boolean; +begin + result := DataTable.Fields[idx_EmpleadosEMAIL_2].IsNull; +end; + +procedure TEmpleadosDataTableRules.SetEMAIL_2IsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_EmpleadosEMAIL_2].AsVariant := Null; +end; + function TEmpleadosDataTableRules.GetPAGINA_WEBValue: String; begin result := DataTable.Fields[idx_EmpleadosPAGINA_WEB].AsString; @@ -2658,15 +5322,74 @@ begin DataTable.Fields[idx_EmpleadosPAGINA_WEB].AsString := aValue; end; +function TEmpleadosDataTableRules.GetPAGINA_WEBIsNull: boolean; +begin + result := DataTable.Fields[idx_EmpleadosPAGINA_WEB].IsNull; +end; + +procedure TEmpleadosDataTableRules.SetPAGINA_WEBIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_EmpleadosPAGINA_WEB].AsVariant := Null; +end; + function TEmpleadosDataTableRules.GetNOTASValue: IROStrings; begin - result := NewROStrings(); + result := f_NOTAS; result.Text := DataTable.Fields[idx_EmpleadosNOTAS].AsString; end; -procedure TEmpleadosDataTableRules.SetNOTASValue(const aValue: IROStrings); +function TEmpleadosDataTableRules.GetNOTASIsNull: boolean; begin - DataTable.Fields[idx_EmpleadosNOTAS].AsString := aValue.Text; + result := DataTable.Fields[idx_EmpleadosNOTAS].IsNull; +end; + +procedure TEmpleadosDataTableRules.SetNOTASIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_EmpleadosNOTAS].AsVariant := Null; +end; + +function TEmpleadosDataTableRules.GetFECHA_ALTAValue: DateTime; +begin + result := DataTable.Fields[idx_EmpleadosFECHA_ALTA].AsDateTime; +end; + +procedure TEmpleadosDataTableRules.SetFECHA_ALTAValue(const aValue: DateTime); +begin + DataTable.Fields[idx_EmpleadosFECHA_ALTA].AsDateTime := aValue; +end; + +function TEmpleadosDataTableRules.GetFECHA_ALTAIsNull: boolean; +begin + result := DataTable.Fields[idx_EmpleadosFECHA_ALTA].IsNull; +end; + +procedure TEmpleadosDataTableRules.SetFECHA_ALTAIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_EmpleadosFECHA_ALTA].AsVariant := Null; +end; + +function TEmpleadosDataTableRules.GetFECHA_MODIFICACIONValue: DateTime; +begin + result := DataTable.Fields[idx_EmpleadosFECHA_MODIFICACION].AsDateTime; +end; + +procedure TEmpleadosDataTableRules.SetFECHA_MODIFICACIONValue(const aValue: DateTime); +begin + DataTable.Fields[idx_EmpleadosFECHA_MODIFICACION].AsDateTime := aValue; +end; + +function TEmpleadosDataTableRules.GetFECHA_MODIFICACIONIsNull: boolean; +begin + result := DataTable.Fields[idx_EmpleadosFECHA_MODIFICACION].IsNull; +end; + +procedure TEmpleadosDataTableRules.SetFECHA_MODIFICACIONIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_EmpleadosFECHA_MODIFICACION].AsVariant := Null; end; function TEmpleadosDataTableRules.GetUSUARIOValue: String; @@ -2679,6 +5402,17 @@ begin DataTable.Fields[idx_EmpleadosUSUARIO].AsString := aValue; end; +function TEmpleadosDataTableRules.GetUSUARIOIsNull: boolean; +begin + result := DataTable.Fields[idx_EmpleadosUSUARIO].IsNull; +end; + +procedure TEmpleadosDataTableRules.SetUSUARIOIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_EmpleadosUSUARIO].AsVariant := Null; +end; + function TEmpleadosDataTableRules.GetID_EMPRESAValue: Integer; begin result := DataTable.Fields[idx_EmpleadosID_EMPRESA].AsInteger; @@ -2689,6 +5423,17 @@ begin DataTable.Fields[idx_EmpleadosID_EMPRESA].AsInteger := aValue; end; +function TEmpleadosDataTableRules.GetID_EMPRESAIsNull: boolean; +begin + result := DataTable.Fields[idx_EmpleadosID_EMPRESA].IsNull; +end; + +procedure TEmpleadosDataTableRules.SetID_EMPRESAIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_EmpleadosID_EMPRESA].AsVariant := Null; +end; + function TEmpleadosDataTableRules.GetREFERENCIAValue: String; begin result := DataTable.Fields[idx_EmpleadosREFERENCIA].AsString; @@ -2699,14 +5444,15 @@ begin DataTable.Fields[idx_EmpleadosREFERENCIA].AsString := aValue; end; -function TEmpleadosDataTableRules.GetCATEGORIAValue: String; +function TEmpleadosDataTableRules.GetREFERENCIAIsNull: boolean; begin - result := DataTable.Fields[idx_EmpleadosCATEGORIA].AsString; + result := DataTable.Fields[idx_EmpleadosREFERENCIA].IsNull; end; -procedure TEmpleadosDataTableRules.SetCATEGORIAValue(const aValue: String); +procedure TEmpleadosDataTableRules.SetREFERENCIAIsNull(const aValue: Boolean); begin - DataTable.Fields[idx_EmpleadosCATEGORIA].AsString := aValue; + if aValue then + DataTable.Fields[idx_EmpleadosREFERENCIA].AsVariant := Null; end; function TEmpleadosDataTableRules.GetFECHA_NACIMIENTOValue: DateTime; @@ -2719,6 +5465,38 @@ begin DataTable.Fields[idx_EmpleadosFECHA_NACIMIENTO].AsDateTime := aValue; end; +function TEmpleadosDataTableRules.GetFECHA_NACIMIENTOIsNull: boolean; +begin + result := DataTable.Fields[idx_EmpleadosFECHA_NACIMIENTO].IsNull; +end; + +procedure TEmpleadosDataTableRules.SetFECHA_NACIMIENTOIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_EmpleadosFECHA_NACIMIENTO].AsVariant := Null; +end; + +function TEmpleadosDataTableRules.GetCATEGORIAValue: String; +begin + result := DataTable.Fields[idx_EmpleadosCATEGORIA].AsString; +end; + +procedure TEmpleadosDataTableRules.SetCATEGORIAValue(const aValue: String); +begin + DataTable.Fields[idx_EmpleadosCATEGORIA].AsString := aValue; +end; + +function TEmpleadosDataTableRules.GetCATEGORIAIsNull: boolean; +begin + result := DataTable.Fields[idx_EmpleadosCATEGORIA].IsNull; +end; + +procedure TEmpleadosDataTableRules.SetCATEGORIAIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_EmpleadosCATEGORIA].AsVariant := Null; +end; + function TEmpleadosDataTableRules.GetFECHA_ALTA_EMPRESAValue: DateTime; begin result := DataTable.Fields[idx_EmpleadosFECHA_ALTA_EMPRESA].AsDateTime; @@ -2729,55 +5507,96 @@ begin DataTable.Fields[idx_EmpleadosFECHA_ALTA_EMPRESA].AsDateTime := aValue; end; +function TEmpleadosDataTableRules.GetFECHA_ALTA_EMPRESAIsNull: boolean; +begin + result := DataTable.Fields[idx_EmpleadosFECHA_ALTA_EMPRESA].IsNull; +end; + +procedure TEmpleadosDataTableRules.SetFECHA_ALTA_EMPRESAIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_EmpleadosFECHA_ALTA_EMPRESA].AsVariant := Null; +end; + function TEmpleadosDataTableRules.GetFORMACION_BASEValue: IROStrings; begin - result := NewROStrings(); + result := f_FORMACION_BASE; result.Text := DataTable.Fields[idx_EmpleadosFORMACION_BASE].AsString; end; -procedure TEmpleadosDataTableRules.SetFORMACION_BASEValue(const aValue: IROStrings); +function TEmpleadosDataTableRules.GetFORMACION_BASEIsNull: boolean; begin - DataTable.Fields[idx_EmpleadosFORMACION_BASE].AsString := aValue.Text; + result := DataTable.Fields[idx_EmpleadosFORMACION_BASE].IsNull; +end; + +procedure TEmpleadosDataTableRules.SetFORMACION_BASEIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_EmpleadosFORMACION_BASE].AsVariant := Null; end; function TEmpleadosDataTableRules.GetFORMACION_COMPLEValue: IROStrings; begin - result := NewROStrings(); + result := f_FORMACION_COMPLE; result.Text := DataTable.Fields[idx_EmpleadosFORMACION_COMPLE].AsString; end; -procedure TEmpleadosDataTableRules.SetFORMACION_COMPLEValue(const aValue: IROStrings); +function TEmpleadosDataTableRules.GetFORMACION_COMPLEIsNull: boolean; begin - DataTable.Fields[idx_EmpleadosFORMACION_COMPLE].AsString := aValue.Text; + result := DataTable.Fields[idx_EmpleadosFORMACION_COMPLE].IsNull; +end; + +procedure TEmpleadosDataTableRules.SetFORMACION_COMPLEIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_EmpleadosFORMACION_COMPLE].AsVariant := Null; end; function TEmpleadosDataTableRules.GetFORMACION_RECIBIDAValue: IROStrings; begin - result := NewROStrings(); + result := f_FORMACION_RECIBIDA; result.Text := DataTable.Fields[idx_EmpleadosFORMACION_RECIBIDA].AsString; end; -procedure TEmpleadosDataTableRules.SetFORMACION_RECIBIDAValue(const aValue: IROStrings); +function TEmpleadosDataTableRules.GetFORMACION_RECIBIDAIsNull: boolean; begin - DataTable.Fields[idx_EmpleadosFORMACION_RECIBIDA].AsString := aValue.Text; + result := DataTable.Fields[idx_EmpleadosFORMACION_RECIBIDA].IsNull; +end; + +procedure TEmpleadosDataTableRules.SetFORMACION_RECIBIDAIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_EmpleadosFORMACION_RECIBIDA].AsVariant := Null; end; function TEmpleadosDataTableRules.GetEXPERIENCIAValue: IROStrings; begin - result := NewROStrings(); + result := f_EXPERIENCIA; result.Text := DataTable.Fields[idx_EmpleadosEXPERIENCIA].AsString; end; -procedure TEmpleadosDataTableRules.SetEXPERIENCIAValue(const aValue: IROStrings); +function TEmpleadosDataTableRules.GetEXPERIENCIAIsNull: boolean; begin - DataTable.Fields[idx_EmpleadosEXPERIENCIA].AsString := aValue.Text; + result := DataTable.Fields[idx_EmpleadosEXPERIENCIA].IsNull; +end; + +procedure TEmpleadosDataTableRules.SetEXPERIENCIAIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_EmpleadosEXPERIENCIA].AsVariant := Null; end; { TDireccionesContactoDataTableRules } constructor TDireccionesContactoDataTableRules.Create(aDataTable: TDADataTable); +var + StrList: TStringList; begin inherited; + + StrList := TStringList.Create; + StrList.OnChange := NOTAS_OnChange; + f_NOTAS := NewROStrings(StrList,True); end; destructor TDireccionesContactoDataTableRules.Destroy; @@ -2785,6 +5604,11 @@ begin inherited; end; +procedure TDireccionesContactoDataTableRules.NOTAS_OnChange(Sender: TObject); +begin + if DataTable.Editing then DataTable.Fields[idx_DireccionesContactoNOTAS].AsVariant := TStringList(Sender).Text; +end; + function TDireccionesContactoDataTableRules.GetIDValue: Integer; begin result := DataTable.Fields[idx_DireccionesContactoID].AsInteger; @@ -2795,6 +5619,17 @@ begin DataTable.Fields[idx_DireccionesContactoID].AsInteger := aValue; end; +function TDireccionesContactoDataTableRules.GetIDIsNull: boolean; +begin + result := DataTable.Fields[idx_DireccionesContactoID].IsNull; +end; + +procedure TDireccionesContactoDataTableRules.SetIDIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_DireccionesContactoID].AsVariant := Null; +end; + function TDireccionesContactoDataTableRules.GetID_CONTACTOValue: Integer; begin result := DataTable.Fields[idx_DireccionesContactoID_CONTACTO].AsInteger; @@ -2805,14 +5640,15 @@ begin DataTable.Fields[idx_DireccionesContactoID_CONTACTO].AsInteger := aValue; end; -function TDireccionesContactoDataTableRules.GetNOMBREValue: String; +function TDireccionesContactoDataTableRules.GetID_CONTACTOIsNull: boolean; begin - result := DataTable.Fields[idx_DireccionesContactoNOMBRE].AsString; + result := DataTable.Fields[idx_DireccionesContactoID_CONTACTO].IsNull; end; -procedure TDireccionesContactoDataTableRules.SetNOMBREValue(const aValue: String); +procedure TDireccionesContactoDataTableRules.SetID_CONTACTOIsNull(const aValue: Boolean); begin - DataTable.Fields[idx_DireccionesContactoNOMBRE].AsString := aValue; + if aValue then + DataTable.Fields[idx_DireccionesContactoID_CONTACTO].AsVariant := Null; end; function TDireccionesContactoDataTableRules.GetCALLEValue: String; @@ -2825,6 +5661,17 @@ begin DataTable.Fields[idx_DireccionesContactoCALLE].AsString := aValue; end; +function TDireccionesContactoDataTableRules.GetCALLEIsNull: boolean; +begin + result := DataTable.Fields[idx_DireccionesContactoCALLE].IsNull; +end; + +procedure TDireccionesContactoDataTableRules.SetCALLEIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_DireccionesContactoCALLE].AsVariant := Null; +end; + function TDireccionesContactoDataTableRules.GetPOBLACIONValue: String; begin result := DataTable.Fields[idx_DireccionesContactoPOBLACION].AsString; @@ -2835,6 +5682,17 @@ begin DataTable.Fields[idx_DireccionesContactoPOBLACION].AsString := aValue; end; +function TDireccionesContactoDataTableRules.GetPOBLACIONIsNull: boolean; +begin + result := DataTable.Fields[idx_DireccionesContactoPOBLACION].IsNull; +end; + +procedure TDireccionesContactoDataTableRules.SetPOBLACIONIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_DireccionesContactoPOBLACION].AsVariant := Null; +end; + function TDireccionesContactoDataTableRules.GetPROVINCIAValue: String; begin result := DataTable.Fields[idx_DireccionesContactoPROVINCIA].AsString; @@ -2845,6 +5703,17 @@ begin DataTable.Fields[idx_DireccionesContactoPROVINCIA].AsString := aValue; end; +function TDireccionesContactoDataTableRules.GetPROVINCIAIsNull: boolean; +begin + result := DataTable.Fields[idx_DireccionesContactoPROVINCIA].IsNull; +end; + +procedure TDireccionesContactoDataTableRules.SetPROVINCIAIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_DireccionesContactoPROVINCIA].AsVariant := Null; +end; + function TDireccionesContactoDataTableRules.GetCODIGO_POSTALValue: String; begin result := DataTable.Fields[idx_DireccionesContactoCODIGO_POSTAL].AsString; @@ -2855,6 +5724,17 @@ begin DataTable.Fields[idx_DireccionesContactoCODIGO_POSTAL].AsString := aValue; end; +function TDireccionesContactoDataTableRules.GetCODIGO_POSTALIsNull: boolean; +begin + result := DataTable.Fields[idx_DireccionesContactoCODIGO_POSTAL].IsNull; +end; + +procedure TDireccionesContactoDataTableRules.SetCODIGO_POSTALIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_DireccionesContactoCODIGO_POSTAL].AsVariant := Null; +end; + function TDireccionesContactoDataTableRules.GetPERSONA_CONTACTOValue: String; begin result := DataTable.Fields[idx_DireccionesContactoPERSONA_CONTACTO].AsString; @@ -2865,6 +5745,38 @@ begin DataTable.Fields[idx_DireccionesContactoPERSONA_CONTACTO].AsString := aValue; end; +function TDireccionesContactoDataTableRules.GetPERSONA_CONTACTOIsNull: boolean; +begin + result := DataTable.Fields[idx_DireccionesContactoPERSONA_CONTACTO].IsNull; +end; + +procedure TDireccionesContactoDataTableRules.SetPERSONA_CONTACTOIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_DireccionesContactoPERSONA_CONTACTO].AsVariant := Null; +end; + +function TDireccionesContactoDataTableRules.GetNOMBREValue: String; +begin + result := DataTable.Fields[idx_DireccionesContactoNOMBRE].AsString; +end; + +procedure TDireccionesContactoDataTableRules.SetNOMBREValue(const aValue: String); +begin + DataTable.Fields[idx_DireccionesContactoNOMBRE].AsString := aValue; +end; + +function TDireccionesContactoDataTableRules.GetNOMBREIsNull: boolean; +begin + result := DataTable.Fields[idx_DireccionesContactoNOMBRE].IsNull; +end; + +procedure TDireccionesContactoDataTableRules.SetNOMBREIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_DireccionesContactoNOMBRE].AsVariant := Null; +end; + function TDireccionesContactoDataTableRules.GetTELEFONOValue: String; begin result := DataTable.Fields[idx_DireccionesContactoTELEFONO].AsString; @@ -2875,6 +5787,17 @@ begin DataTable.Fields[idx_DireccionesContactoTELEFONO].AsString := aValue; end; +function TDireccionesContactoDataTableRules.GetTELEFONOIsNull: boolean; +begin + result := DataTable.Fields[idx_DireccionesContactoTELEFONO].IsNull; +end; + +procedure TDireccionesContactoDataTableRules.SetTELEFONOIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_DireccionesContactoTELEFONO].AsVariant := Null; +end; + function TDireccionesContactoDataTableRules.GetMOVILValue: String; begin result := DataTable.Fields[idx_DireccionesContactoMOVIL].AsString; @@ -2885,6 +5808,17 @@ begin DataTable.Fields[idx_DireccionesContactoMOVIL].AsString := aValue; end; +function TDireccionesContactoDataTableRules.GetMOVILIsNull: boolean; +begin + result := DataTable.Fields[idx_DireccionesContactoMOVIL].IsNull; +end; + +procedure TDireccionesContactoDataTableRules.SetMOVILIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_DireccionesContactoMOVIL].AsVariant := Null; +end; + function TDireccionesContactoDataTableRules.GetFAXValue: String; begin result := DataTable.Fields[idx_DireccionesContactoFAX].AsString; @@ -2895,6 +5829,17 @@ begin DataTable.Fields[idx_DireccionesContactoFAX].AsString := aValue; end; +function TDireccionesContactoDataTableRules.GetFAXIsNull: boolean; +begin + result := DataTable.Fields[idx_DireccionesContactoFAX].IsNull; +end; + +procedure TDireccionesContactoDataTableRules.SetFAXIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_DireccionesContactoFAX].AsVariant := Null; +end; + function TDireccionesContactoDataTableRules.GetEMAILValue: String; begin result := DataTable.Fields[idx_DireccionesContactoEMAIL].AsString; @@ -2905,15 +5850,32 @@ begin DataTable.Fields[idx_DireccionesContactoEMAIL].AsString := aValue; end; +function TDireccionesContactoDataTableRules.GetEMAILIsNull: boolean; +begin + result := DataTable.Fields[idx_DireccionesContactoEMAIL].IsNull; +end; + +procedure TDireccionesContactoDataTableRules.SetEMAILIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_DireccionesContactoEMAIL].AsVariant := Null; +end; + function TDireccionesContactoDataTableRules.GetNOTASValue: IROStrings; begin - result := NewROStrings(); + result := f_NOTAS; result.Text := DataTable.Fields[idx_DireccionesContactoNOTAS].AsString; end; -procedure TDireccionesContactoDataTableRules.SetNOTASValue(const aValue: IROStrings); +function TDireccionesContactoDataTableRules.GetNOTASIsNull: boolean; begin - DataTable.Fields[idx_DireccionesContactoNOTAS].AsString := aValue.Text; + result := DataTable.Fields[idx_DireccionesContactoNOTAS].IsNull; +end; + +procedure TDireccionesContactoDataTableRules.SetNOTASIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_DireccionesContactoNOTAS].AsVariant := Null; end; function TDireccionesContactoDataTableRules.GetPORTEValue: Float; @@ -2926,6 +5888,59 @@ begin DataTable.Fields[idx_DireccionesContactoPORTE].AsFloat := aValue; end; +function TDireccionesContactoDataTableRules.GetPORTEIsNull: boolean; +begin + result := DataTable.Fields[idx_DireccionesContactoPORTE].IsNull; +end; + +procedure TDireccionesContactoDataTableRules.SetPORTEIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_DireccionesContactoPORTE].AsVariant := Null; +end; + +function TDireccionesContactoDataTableRules.GetFECHA_ALTAValue: DateTime; +begin + result := DataTable.Fields[idx_DireccionesContactoFECHA_ALTA].AsDateTime; +end; + +procedure TDireccionesContactoDataTableRules.SetFECHA_ALTAValue(const aValue: DateTime); +begin + DataTable.Fields[idx_DireccionesContactoFECHA_ALTA].AsDateTime := aValue; +end; + +function TDireccionesContactoDataTableRules.GetFECHA_ALTAIsNull: boolean; +begin + result := DataTable.Fields[idx_DireccionesContactoFECHA_ALTA].IsNull; +end; + +procedure TDireccionesContactoDataTableRules.SetFECHA_ALTAIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_DireccionesContactoFECHA_ALTA].AsVariant := Null; +end; + +function TDireccionesContactoDataTableRules.GetFECHA_MODIFICACIONValue: DateTime; +begin + result := DataTable.Fields[idx_DireccionesContactoFECHA_MODIFICACION].AsDateTime; +end; + +procedure TDireccionesContactoDataTableRules.SetFECHA_MODIFICACIONValue(const aValue: DateTime); +begin + DataTable.Fields[idx_DireccionesContactoFECHA_MODIFICACION].AsDateTime := aValue; +end; + +function TDireccionesContactoDataTableRules.GetFECHA_MODIFICACIONIsNull: boolean; +begin + result := DataTable.Fields[idx_DireccionesContactoFECHA_MODIFICACION].IsNull; +end; + +procedure TDireccionesContactoDataTableRules.SetFECHA_MODIFICACIONIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_DireccionesContactoFECHA_MODIFICACION].AsVariant := Null; +end; + { TClientesDescuentosDataTableRules } constructor TClientesDescuentosDataTableRules.Create(aDataTable: TDADataTable); @@ -2948,6 +5963,17 @@ begin DataTable.Fields[idx_ClientesDescuentosID].AsInteger := aValue; end; +function TClientesDescuentosDataTableRules.GetIDIsNull: boolean; +begin + result := DataTable.Fields[idx_ClientesDescuentosID].IsNull; +end; + +procedure TClientesDescuentosDataTableRules.SetIDIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_ClientesDescuentosID].AsVariant := Null; +end; + function TClientesDescuentosDataTableRules.GetID_CLIENTEValue: Integer; begin result := DataTable.Fields[idx_ClientesDescuentosID_CLIENTE].AsInteger; @@ -2958,6 +5984,17 @@ begin DataTable.Fields[idx_ClientesDescuentosID_CLIENTE].AsInteger := aValue; end; +function TClientesDescuentosDataTableRules.GetID_CLIENTEIsNull: boolean; +begin + result := DataTable.Fields[idx_ClientesDescuentosID_CLIENTE].IsNull; +end; + +procedure TClientesDescuentosDataTableRules.SetID_CLIENTEIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_ClientesDescuentosID_CLIENTE].AsVariant := Null; +end; + function TClientesDescuentosDataTableRules.GetID_PROVEEDORValue: Integer; begin result := DataTable.Fields[idx_ClientesDescuentosID_PROVEEDOR].AsInteger; @@ -2968,6 +6005,17 @@ begin DataTable.Fields[idx_ClientesDescuentosID_PROVEEDOR].AsInteger := aValue; end; +function TClientesDescuentosDataTableRules.GetID_PROVEEDORIsNull: boolean; +begin + result := DataTable.Fields[idx_ClientesDescuentosID_PROVEEDOR].IsNull; +end; + +procedure TClientesDescuentosDataTableRules.SetID_PROVEEDORIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_ClientesDescuentosID_PROVEEDOR].AsVariant := Null; +end; + function TClientesDescuentosDataTableRules.GetNOMBREValue: String; begin result := DataTable.Fields[idx_ClientesDescuentosNOMBRE].AsString; @@ -2978,6 +6026,17 @@ begin DataTable.Fields[idx_ClientesDescuentosNOMBRE].AsString := aValue; end; +function TClientesDescuentosDataTableRules.GetNOMBREIsNull: boolean; +begin + result := DataTable.Fields[idx_ClientesDescuentosNOMBRE].IsNull; +end; + +procedure TClientesDescuentosDataTableRules.SetNOMBREIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_ClientesDescuentosNOMBRE].AsVariant := Null; +end; + function TClientesDescuentosDataTableRules.GetDESCUENTOValue: Float; begin result := DataTable.Fields[idx_ClientesDescuentosDESCUENTO].AsFloat; @@ -2988,6 +6047,17 @@ begin DataTable.Fields[idx_ClientesDescuentosDESCUENTO].AsFloat := aValue; end; +function TClientesDescuentosDataTableRules.GetDESCUENTOIsNull: boolean; +begin + result := DataTable.Fields[idx_ClientesDescuentosDESCUENTO].IsNull; +end; + +procedure TClientesDescuentosDataTableRules.SetDESCUENTOIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_ClientesDescuentosDESCUENTO].AsVariant := Null; +end; + { TGruposProveedorDataTableRules } constructor TGruposProveedorDataTableRules.Create(aDataTable: TDADataTable); @@ -3010,6 +6080,17 @@ begin DataTable.Fields[idx_GruposProveedorDESCRIPCION].AsString := aValue; end; +function TGruposProveedorDataTableRules.GetDESCRIPCIONIsNull: boolean; +begin + result := DataTable.Fields[idx_GruposProveedorDESCRIPCION].IsNull; +end; + +procedure TGruposProveedorDataTableRules.SetDESCRIPCIONIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_GruposProveedorDESCRIPCION].AsVariant := Null; +end; + { TGruposEmpleadoDataTableRules } constructor TGruposEmpleadoDataTableRules.Create(aDataTable: TDADataTable); @@ -3032,12 +6113,482 @@ begin DataTable.Fields[idx_GruposEmpleadoDESCRIPCION].AsString := aValue; end; +function TGruposEmpleadoDataTableRules.GetDESCRIPCIONIsNull: boolean; +begin + result := DataTable.Fields[idx_GruposEmpleadoDESCRIPCION].IsNull; +end; + +procedure TGruposEmpleadoDataTableRules.SetDESCRIPCIONIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_GruposEmpleadoDESCRIPCION].AsVariant := Null; +end; + + +{ TContactos_RefreshDataTableRules } +constructor TContactos_RefreshDataTableRules.Create(aDataTable: TDADataTable); +var + StrList: TStringList; +begin + inherited; + + StrList := TStringList.Create; + StrList.OnChange := NOTAS_OnChange; + f_NOTAS := NewROStrings(StrList,True); +end; + +destructor TContactos_RefreshDataTableRules.Destroy; +begin + inherited; +end; + +procedure TContactos_RefreshDataTableRules.NOTAS_OnChange(Sender: TObject); +begin + if DataTable.Editing then DataTable.Fields[idx_Contactos_RefreshNOTAS].AsVariant := TStringList(Sender).Text; +end; + +function TContactos_RefreshDataTableRules.GetIDValue: Integer; +begin + result := DataTable.Fields[idx_Contactos_RefreshID].AsInteger; +end; + +procedure TContactos_RefreshDataTableRules.SetIDValue(const aValue: Integer); +begin + DataTable.Fields[idx_Contactos_RefreshID].AsInteger := aValue; +end; + +function TContactos_RefreshDataTableRules.GetIDIsNull: boolean; +begin + result := DataTable.Fields[idx_Contactos_RefreshID].IsNull; +end; + +procedure TContactos_RefreshDataTableRules.SetIDIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_Contactos_RefreshID].AsVariant := Null; +end; + +function TContactos_RefreshDataTableRules.GetNIF_CIFValue: String; +begin + result := DataTable.Fields[idx_Contactos_RefreshNIF_CIF].AsString; +end; + +procedure TContactos_RefreshDataTableRules.SetNIF_CIFValue(const aValue: String); +begin + DataTable.Fields[idx_Contactos_RefreshNIF_CIF].AsString := aValue; +end; + +function TContactos_RefreshDataTableRules.GetNIF_CIFIsNull: boolean; +begin + result := DataTable.Fields[idx_Contactos_RefreshNIF_CIF].IsNull; +end; + +procedure TContactos_RefreshDataTableRules.SetNIF_CIFIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_Contactos_RefreshNIF_CIF].AsVariant := Null; +end; + +function TContactos_RefreshDataTableRules.GetNOMBREValue: String; +begin + result := DataTable.Fields[idx_Contactos_RefreshNOMBRE].AsString; +end; + +procedure TContactos_RefreshDataTableRules.SetNOMBREValue(const aValue: String); +begin + DataTable.Fields[idx_Contactos_RefreshNOMBRE].AsString := aValue; +end; + +function TContactos_RefreshDataTableRules.GetNOMBREIsNull: boolean; +begin + result := DataTable.Fields[idx_Contactos_RefreshNOMBRE].IsNull; +end; + +procedure TContactos_RefreshDataTableRules.SetNOMBREIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_Contactos_RefreshNOMBRE].AsVariant := Null; +end; + +function TContactos_RefreshDataTableRules.GetCALLEValue: String; +begin + result := DataTable.Fields[idx_Contactos_RefreshCALLE].AsString; +end; + +procedure TContactos_RefreshDataTableRules.SetCALLEValue(const aValue: String); +begin + DataTable.Fields[idx_Contactos_RefreshCALLE].AsString := aValue; +end; + +function TContactos_RefreshDataTableRules.GetCALLEIsNull: boolean; +begin + result := DataTable.Fields[idx_Contactos_RefreshCALLE].IsNull; +end; + +procedure TContactos_RefreshDataTableRules.SetCALLEIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_Contactos_RefreshCALLE].AsVariant := Null; +end; + +function TContactos_RefreshDataTableRules.GetPOBLACIONValue: String; +begin + result := DataTable.Fields[idx_Contactos_RefreshPOBLACION].AsString; +end; + +procedure TContactos_RefreshDataTableRules.SetPOBLACIONValue(const aValue: String); +begin + DataTable.Fields[idx_Contactos_RefreshPOBLACION].AsString := aValue; +end; + +function TContactos_RefreshDataTableRules.GetPOBLACIONIsNull: boolean; +begin + result := DataTable.Fields[idx_Contactos_RefreshPOBLACION].IsNull; +end; + +procedure TContactos_RefreshDataTableRules.SetPOBLACIONIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_Contactos_RefreshPOBLACION].AsVariant := Null; +end; + +function TContactos_RefreshDataTableRules.GetPROVINCIAValue: String; +begin + result := DataTable.Fields[idx_Contactos_RefreshPROVINCIA].AsString; +end; + +procedure TContactos_RefreshDataTableRules.SetPROVINCIAValue(const aValue: String); +begin + DataTable.Fields[idx_Contactos_RefreshPROVINCIA].AsString := aValue; +end; + +function TContactos_RefreshDataTableRules.GetPROVINCIAIsNull: boolean; +begin + result := DataTable.Fields[idx_Contactos_RefreshPROVINCIA].IsNull; +end; + +procedure TContactos_RefreshDataTableRules.SetPROVINCIAIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_Contactos_RefreshPROVINCIA].AsVariant := Null; +end; + +function TContactos_RefreshDataTableRules.GetCODIGO_POSTALValue: String; +begin + result := DataTable.Fields[idx_Contactos_RefreshCODIGO_POSTAL].AsString; +end; + +procedure TContactos_RefreshDataTableRules.SetCODIGO_POSTALValue(const aValue: String); +begin + DataTable.Fields[idx_Contactos_RefreshCODIGO_POSTAL].AsString := aValue; +end; + +function TContactos_RefreshDataTableRules.GetCODIGO_POSTALIsNull: boolean; +begin + result := DataTable.Fields[idx_Contactos_RefreshCODIGO_POSTAL].IsNull; +end; + +procedure TContactos_RefreshDataTableRules.SetCODIGO_POSTALIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_Contactos_RefreshCODIGO_POSTAL].AsVariant := Null; +end; + +function TContactos_RefreshDataTableRules.GetTELEFONO_1Value: String; +begin + result := DataTable.Fields[idx_Contactos_RefreshTELEFONO_1].AsString; +end; + +procedure TContactos_RefreshDataTableRules.SetTELEFONO_1Value(const aValue: String); +begin + DataTable.Fields[idx_Contactos_RefreshTELEFONO_1].AsString := aValue; +end; + +function TContactos_RefreshDataTableRules.GetTELEFONO_1IsNull: boolean; +begin + result := DataTable.Fields[idx_Contactos_RefreshTELEFONO_1].IsNull; +end; + +procedure TContactos_RefreshDataTableRules.SetTELEFONO_1IsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_Contactos_RefreshTELEFONO_1].AsVariant := Null; +end; + +function TContactos_RefreshDataTableRules.GetTELEFONO_2Value: String; +begin + result := DataTable.Fields[idx_Contactos_RefreshTELEFONO_2].AsString; +end; + +procedure TContactos_RefreshDataTableRules.SetTELEFONO_2Value(const aValue: String); +begin + DataTable.Fields[idx_Contactos_RefreshTELEFONO_2].AsString := aValue; +end; + +function TContactos_RefreshDataTableRules.GetTELEFONO_2IsNull: boolean; +begin + result := DataTable.Fields[idx_Contactos_RefreshTELEFONO_2].IsNull; +end; + +procedure TContactos_RefreshDataTableRules.SetTELEFONO_2IsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_Contactos_RefreshTELEFONO_2].AsVariant := Null; +end; + +function TContactos_RefreshDataTableRules.GetMOVIL_1Value: String; +begin + result := DataTable.Fields[idx_Contactos_RefreshMOVIL_1].AsString; +end; + +procedure TContactos_RefreshDataTableRules.SetMOVIL_1Value(const aValue: String); +begin + DataTable.Fields[idx_Contactos_RefreshMOVIL_1].AsString := aValue; +end; + +function TContactos_RefreshDataTableRules.GetMOVIL_1IsNull: boolean; +begin + result := DataTable.Fields[idx_Contactos_RefreshMOVIL_1].IsNull; +end; + +procedure TContactos_RefreshDataTableRules.SetMOVIL_1IsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_Contactos_RefreshMOVIL_1].AsVariant := Null; +end; + +function TContactos_RefreshDataTableRules.GetMOVIL_2Value: String; +begin + result := DataTable.Fields[idx_Contactos_RefreshMOVIL_2].AsString; +end; + +procedure TContactos_RefreshDataTableRules.SetMOVIL_2Value(const aValue: String); +begin + DataTable.Fields[idx_Contactos_RefreshMOVIL_2].AsString := aValue; +end; + +function TContactos_RefreshDataTableRules.GetMOVIL_2IsNull: boolean; +begin + result := DataTable.Fields[idx_Contactos_RefreshMOVIL_2].IsNull; +end; + +procedure TContactos_RefreshDataTableRules.SetMOVIL_2IsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_Contactos_RefreshMOVIL_2].AsVariant := Null; +end; + +function TContactos_RefreshDataTableRules.GetFAXValue: String; +begin + result := DataTable.Fields[idx_Contactos_RefreshFAX].AsString; +end; + +procedure TContactos_RefreshDataTableRules.SetFAXValue(const aValue: String); +begin + DataTable.Fields[idx_Contactos_RefreshFAX].AsString := aValue; +end; + +function TContactos_RefreshDataTableRules.GetFAXIsNull: boolean; +begin + result := DataTable.Fields[idx_Contactos_RefreshFAX].IsNull; +end; + +procedure TContactos_RefreshDataTableRules.SetFAXIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_Contactos_RefreshFAX].AsVariant := Null; +end; + +function TContactos_RefreshDataTableRules.GetEMAIL_1Value: String; +begin + result := DataTable.Fields[idx_Contactos_RefreshEMAIL_1].AsString; +end; + +procedure TContactos_RefreshDataTableRules.SetEMAIL_1Value(const aValue: String); +begin + DataTable.Fields[idx_Contactos_RefreshEMAIL_1].AsString := aValue; +end; + +function TContactos_RefreshDataTableRules.GetEMAIL_1IsNull: boolean; +begin + result := DataTable.Fields[idx_Contactos_RefreshEMAIL_1].IsNull; +end; + +procedure TContactos_RefreshDataTableRules.SetEMAIL_1IsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_Contactos_RefreshEMAIL_1].AsVariant := Null; +end; + +function TContactos_RefreshDataTableRules.GetEMAIL_2Value: String; +begin + result := DataTable.Fields[idx_Contactos_RefreshEMAIL_2].AsString; +end; + +procedure TContactos_RefreshDataTableRules.SetEMAIL_2Value(const aValue: String); +begin + DataTable.Fields[idx_Contactos_RefreshEMAIL_2].AsString := aValue; +end; + +function TContactos_RefreshDataTableRules.GetEMAIL_2IsNull: boolean; +begin + result := DataTable.Fields[idx_Contactos_RefreshEMAIL_2].IsNull; +end; + +procedure TContactos_RefreshDataTableRules.SetEMAIL_2IsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_Contactos_RefreshEMAIL_2].AsVariant := Null; +end; + +function TContactos_RefreshDataTableRules.GetPAGINA_WEBValue: String; +begin + result := DataTable.Fields[idx_Contactos_RefreshPAGINA_WEB].AsString; +end; + +procedure TContactos_RefreshDataTableRules.SetPAGINA_WEBValue(const aValue: String); +begin + DataTable.Fields[idx_Contactos_RefreshPAGINA_WEB].AsString := aValue; +end; + +function TContactos_RefreshDataTableRules.GetPAGINA_WEBIsNull: boolean; +begin + result := DataTable.Fields[idx_Contactos_RefreshPAGINA_WEB].IsNull; +end; + +procedure TContactos_RefreshDataTableRules.SetPAGINA_WEBIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_Contactos_RefreshPAGINA_WEB].AsVariant := Null; +end; + +function TContactos_RefreshDataTableRules.GetNOTASValue: IROStrings; +begin + result := f_NOTAS; + result.Text := DataTable.Fields[idx_Contactos_RefreshNOTAS].AsString; +end; + +function TContactos_RefreshDataTableRules.GetNOTASIsNull: boolean; +begin + result := DataTable.Fields[idx_Contactos_RefreshNOTAS].IsNull; +end; + +procedure TContactos_RefreshDataTableRules.SetNOTASIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_Contactos_RefreshNOTAS].AsVariant := Null; +end; + +function TContactos_RefreshDataTableRules.GetFECHA_ALTAValue: DateTime; +begin + result := DataTable.Fields[idx_Contactos_RefreshFECHA_ALTA].AsDateTime; +end; + +procedure TContactos_RefreshDataTableRules.SetFECHA_ALTAValue(const aValue: DateTime); +begin + DataTable.Fields[idx_Contactos_RefreshFECHA_ALTA].AsDateTime := aValue; +end; + +function TContactos_RefreshDataTableRules.GetFECHA_ALTAIsNull: boolean; +begin + result := DataTable.Fields[idx_Contactos_RefreshFECHA_ALTA].IsNull; +end; + +procedure TContactos_RefreshDataTableRules.SetFECHA_ALTAIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_Contactos_RefreshFECHA_ALTA].AsVariant := Null; +end; + +function TContactos_RefreshDataTableRules.GetFECHA_MODIFICACIONValue: DateTime; +begin + result := DataTable.Fields[idx_Contactos_RefreshFECHA_MODIFICACION].AsDateTime; +end; + +procedure TContactos_RefreshDataTableRules.SetFECHA_MODIFICACIONValue(const aValue: DateTime); +begin + DataTable.Fields[idx_Contactos_RefreshFECHA_MODIFICACION].AsDateTime := aValue; +end; + +function TContactos_RefreshDataTableRules.GetFECHA_MODIFICACIONIsNull: boolean; +begin + result := DataTable.Fields[idx_Contactos_RefreshFECHA_MODIFICACION].IsNull; +end; + +procedure TContactos_RefreshDataTableRules.SetFECHA_MODIFICACIONIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_Contactos_RefreshFECHA_MODIFICACION].AsVariant := Null; +end; + +function TContactos_RefreshDataTableRules.GetUSUARIOValue: String; +begin + result := DataTable.Fields[idx_Contactos_RefreshUSUARIO].AsString; +end; + +procedure TContactos_RefreshDataTableRules.SetUSUARIOValue(const aValue: String); +begin + DataTable.Fields[idx_Contactos_RefreshUSUARIO].AsString := aValue; +end; + +function TContactos_RefreshDataTableRules.GetUSUARIOIsNull: boolean; +begin + result := DataTable.Fields[idx_Contactos_RefreshUSUARIO].IsNull; +end; + +procedure TContactos_RefreshDataTableRules.SetUSUARIOIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_Contactos_RefreshUSUARIO].AsVariant := Null; +end; + +function TContactos_RefreshDataTableRules.GetREFERENCIAValue: String; +begin + result := DataTable.Fields[idx_Contactos_RefreshREFERENCIA].AsString; +end; + +procedure TContactos_RefreshDataTableRules.SetREFERENCIAValue(const aValue: String); +begin + DataTable.Fields[idx_Contactos_RefreshREFERENCIA].AsString := aValue; +end; + +function TContactos_RefreshDataTableRules.GetREFERENCIAIsNull: boolean; +begin + result := DataTable.Fields[idx_Contactos_RefreshREFERENCIA].IsNull; +end; + +procedure TContactos_RefreshDataTableRules.SetREFERENCIAIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_Contactos_RefreshREFERENCIA].AsVariant := Null; +end; + +function TContactos_RefreshDataTableRules.GetPERSONA_CONTACTOValue: String; +begin + result := DataTable.Fields[idx_Contactos_RefreshPERSONA_CONTACTO].AsString; +end; + +procedure TContactos_RefreshDataTableRules.SetPERSONA_CONTACTOValue(const aValue: String); +begin + DataTable.Fields[idx_Contactos_RefreshPERSONA_CONTACTO].AsString := aValue; +end; + +function TContactos_RefreshDataTableRules.GetPERSONA_CONTACTOIsNull: boolean; +begin + result := DataTable.Fields[idx_Contactos_RefreshPERSONA_CONTACTO].IsNull; +end; + +procedure TContactos_RefreshDataTableRules.SetPERSONA_CONTACTOIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_Contactos_RefreshPERSONA_CONTACTO].AsVariant := Null; +end; + initialization RegisterDataTableRules(RID_Contactos, TContactosDataTableRules); RegisterDataTableRules(RID_GruposCliente, TGruposClienteDataTableRules); RegisterDataTableRules(RID_DatosBancarios, TDatosBancariosDataTableRules); - RegisterDataTableRules(RID_ContactosCategorias, TContactosCategoriasDataTableRules); RegisterDataTableRules(RID_Clientes, TClientesDataTableRules); RegisterDataTableRules(RID_Proveedores, TProveedoresDataTableRules); RegisterDataTableRules(RID_Empleados, TEmpleadosDataTableRules); @@ -3045,5 +6596,6 @@ initialization RegisterDataTableRules(RID_ClientesDescuentos, TClientesDescuentosDataTableRules); RegisterDataTableRules(RID_GruposProveedor, TGruposProveedorDataTableRules); RegisterDataTableRules(RID_GruposEmpleado, TGruposEmpleadoDataTableRules); + RegisterDataTableRules(RID_Contactos_Refresh, TContactos_RefreshDataTableRules); end. diff --git a/Source/Modulos/Contactos/Model/schContactosServer_Intf.pas b/Source/Modulos/Contactos/Model/schContactosServer_Intf.pas index bacbb9a3..485c4f8d 100644 --- a/Source/Modulos/Contactos/Model/schContactosServer_Intf.pas +++ b/Source/Modulos/Contactos/Model/schContactosServer_Intf.pas @@ -3,28 +3,28 @@ unit schContactosServer_Intf; interface uses - Classes, DB, SysUtils, uROClasses, uDADataTable, uDABusinessProcessor, schContactosClient_Intf; + Classes, DB, SysUtils, uROClasses, uDADataTable, uDABusinessProcessor, FmtBCD, uROXMLIntf, schContactosClient_Intf; const { Delta rules ids Feel free to change them to something more human readable but make sure they are unique in the context of your application } - RID_ContactosDelta = '{AA1FED77-C1C8-4EA9-9B07-E74C63CBF307}'; - RID_GruposClienteDelta = '{4D46364E-1E11-4648-A9C7-AE4B81FB675C}'; - RID_DatosBancariosDelta = '{D4227F74-9431-45EA-8F09-20FFE80E34B1}'; - RID_ContactosCategoriasDelta = '{EB18171B-206D-4CFF-97FF-CB91350EAF4C}'; - RID_ClientesDelta = '{6C588001-84B7-4F1C-9C6B-84A254E1EA7D}'; - RID_ProveedoresDelta = '{168C19DE-0AD5-40CB-B737-628846E311FE}'; - RID_EmpleadosDelta = '{6544E069-D22D-49D4-AAFE-47DD92FA7744}'; - RID_DireccionesContactoDelta = '{D6123AD7-AA38-4AEF-9E89-E713C83A3DDC}'; - RID_ClientesDescuentosDelta = '{2E020115-E0E9-464F-B175-1BED0E2BF0B1}'; - RID_GruposProveedorDelta = '{14E46C85-BAAE-4A15-B868-EC579AF38A8A}'; - RID_GruposEmpleadoDelta = '{364591F3-D581-4104-9125-7CE465563DEB}'; + RID_ContactosDelta = '{622299E7-0DE2-41D9-9B00-AD4F0FC58AA8}'; + RID_GruposClienteDelta = '{2132D071-7709-433A-B339-5B9C763D0995}'; + RID_DatosBancariosDelta = '{6BA983CD-C9FA-4933-93CD-FCD1CE045256}'; + RID_ClientesDelta = '{32DF2CC4-F076-4924-B2EF-9218D99294C6}'; + RID_ProveedoresDelta = '{4A9BB1FB-DE7E-43C2-8F1D-4909191DCC53}'; + RID_EmpleadosDelta = '{7CEE2A53-5906-42F1-BFDA-753F7BC3769A}'; + RID_DireccionesContactoDelta = '{10E97AB6-9484-47D3-94FB-EB77DF28A5C8}'; + RID_ClientesDescuentosDelta = '{F9462554-735C-43D6-96C5-D440B8AE77DC}'; + RID_GruposProveedorDelta = '{385AB8C2-D9FD-4BAD-955C-3716AEC71CDB}'; + RID_GruposEmpleadoDelta = '{8EFA344F-C9C4-4113-807A-8876CEE002A2}'; + RID_Contactos_RefreshDelta = '{D04D6755-FB96-4517-91AF-95AB76C731CF}'; type { IContactosDelta } IContactosDelta = interface(IContactos) - ['{AA1FED77-C1C8-4EA9-9B07-E74C63CBF307}'] + ['{622299E7-0DE2-41D9-9B00-AD4F0FC58AA8}'] { Property getters and setters } function GetOldIDValue : Integer; function GetOldID_CATEGORIAValue : Integer; @@ -44,6 +44,8 @@ type function GetOldEMAIL_2Value : String; function GetOldPAGINA_WEBValue : String; function GetOldNOTASValue : IROStrings; + function GetOldFECHA_ALTAValue : DateTime; + function GetOldFECHA_MODIFICACIONValue : DateTime; function GetOldUSUARIOValue : String; function GetOldID_EMPRESAValue : Integer; function GetOldREFERENCIAValue : String; @@ -67,6 +69,8 @@ type property OldEMAIL_2 : String read GetOldEMAIL_2Value; property OldPAGINA_WEB : String read GetOldPAGINA_WEBValue; property OldNOTAS : IROStrings read GetOldNOTASValue; + property OldFECHA_ALTA : DateTime read GetOldFECHA_ALTAValue; + property OldFECHA_MODIFICACION : DateTime read GetOldFECHA_MODIFICACIONValue; property OldUSUARIO : String read GetOldUSUARIOValue; property OldID_EMPRESA : Integer read GetOldID_EMPRESAValue; property OldREFERENCIA : String read GetOldREFERENCIAValue; @@ -75,115 +79,241 @@ type { TContactosBusinessProcessorRules } TContactosBusinessProcessorRules = class(TDABusinessProcessorRules, IContactos, IContactosDelta) private + f_NOTAS: IROStrings; + procedure NOTAS_OnChange(Sender: TObject); protected { Property getters and setters } function GetIDValue: Integer; virtual; + function GetIDIsNull: Boolean; virtual; function GetOldIDValue: Integer; virtual; + function GetOldIDIsNull: Boolean; virtual; procedure SetIDValue(const aValue: Integer); virtual; + procedure SetIDIsNull(const aValue: Boolean); virtual; function GetID_CATEGORIAValue: Integer; virtual; + function GetID_CATEGORIAIsNull: Boolean; virtual; function GetOldID_CATEGORIAValue: Integer; virtual; + function GetOldID_CATEGORIAIsNull: Boolean; virtual; procedure SetID_CATEGORIAValue(const aValue: Integer); virtual; + procedure SetID_CATEGORIAIsNull(const aValue: Boolean); virtual; function GetNIF_CIFValue: String; virtual; + function GetNIF_CIFIsNull: Boolean; virtual; function GetOldNIF_CIFValue: String; virtual; + function GetOldNIF_CIFIsNull: Boolean; virtual; procedure SetNIF_CIFValue(const aValue: String); virtual; + procedure SetNIF_CIFIsNull(const aValue: Boolean); virtual; function GetNOMBREValue: String; virtual; + function GetNOMBREIsNull: Boolean; virtual; function GetOldNOMBREValue: String; virtual; + function GetOldNOMBREIsNull: Boolean; virtual; procedure SetNOMBREValue(const aValue: String); virtual; + procedure SetNOMBREIsNull(const aValue: Boolean); virtual; function GetPERSONA_CONTACTOValue: String; virtual; + function GetPERSONA_CONTACTOIsNull: Boolean; virtual; function GetOldPERSONA_CONTACTOValue: String; virtual; + function GetOldPERSONA_CONTACTOIsNull: Boolean; virtual; procedure SetPERSONA_CONTACTOValue(const aValue: String); virtual; + procedure SetPERSONA_CONTACTOIsNull(const aValue: Boolean); virtual; function GetCALLEValue: String; virtual; + function GetCALLEIsNull: Boolean; virtual; function GetOldCALLEValue: String; virtual; + function GetOldCALLEIsNull: Boolean; virtual; procedure SetCALLEValue(const aValue: String); virtual; + procedure SetCALLEIsNull(const aValue: Boolean); virtual; function GetPOBLACIONValue: String; virtual; + function GetPOBLACIONIsNull: Boolean; virtual; function GetOldPOBLACIONValue: String; virtual; + function GetOldPOBLACIONIsNull: Boolean; virtual; procedure SetPOBLACIONValue(const aValue: String); virtual; + procedure SetPOBLACIONIsNull(const aValue: Boolean); virtual; function GetPROVINCIAValue: String; virtual; + function GetPROVINCIAIsNull: Boolean; virtual; function GetOldPROVINCIAValue: String; virtual; + function GetOldPROVINCIAIsNull: Boolean; virtual; procedure SetPROVINCIAValue(const aValue: String); virtual; + procedure SetPROVINCIAIsNull(const aValue: Boolean); virtual; function GetCODIGO_POSTALValue: String; virtual; + function GetCODIGO_POSTALIsNull: Boolean; virtual; function GetOldCODIGO_POSTALValue: String; virtual; + function GetOldCODIGO_POSTALIsNull: Boolean; virtual; procedure SetCODIGO_POSTALValue(const aValue: String); virtual; + procedure SetCODIGO_POSTALIsNull(const aValue: Boolean); virtual; function GetTELEFONO_1Value: String; virtual; + function GetTELEFONO_1IsNull: Boolean; virtual; function GetOldTELEFONO_1Value: String; virtual; + function GetOldTELEFONO_1IsNull: Boolean; virtual; procedure SetTELEFONO_1Value(const aValue: String); virtual; + procedure SetTELEFONO_1IsNull(const aValue: Boolean); virtual; function GetTELEFONO_2Value: String; virtual; + function GetTELEFONO_2IsNull: Boolean; virtual; function GetOldTELEFONO_2Value: String; virtual; + function GetOldTELEFONO_2IsNull: Boolean; virtual; procedure SetTELEFONO_2Value(const aValue: String); virtual; + procedure SetTELEFONO_2IsNull(const aValue: Boolean); virtual; function GetMOVIL_1Value: String; virtual; + function GetMOVIL_1IsNull: Boolean; virtual; function GetOldMOVIL_1Value: String; virtual; + function GetOldMOVIL_1IsNull: Boolean; virtual; procedure SetMOVIL_1Value(const aValue: String); virtual; + procedure SetMOVIL_1IsNull(const aValue: Boolean); virtual; function GetMOVIL_2Value: String; virtual; + function GetMOVIL_2IsNull: Boolean; virtual; function GetOldMOVIL_2Value: String; virtual; + function GetOldMOVIL_2IsNull: Boolean; virtual; procedure SetMOVIL_2Value(const aValue: String); virtual; + procedure SetMOVIL_2IsNull(const aValue: Boolean); virtual; function GetFAXValue: String; virtual; + function GetFAXIsNull: Boolean; virtual; function GetOldFAXValue: String; virtual; + function GetOldFAXIsNull: Boolean; virtual; procedure SetFAXValue(const aValue: String); virtual; + procedure SetFAXIsNull(const aValue: Boolean); virtual; function GetEMAIL_1Value: String; virtual; + function GetEMAIL_1IsNull: Boolean; virtual; function GetOldEMAIL_1Value: String; virtual; + function GetOldEMAIL_1IsNull: Boolean; virtual; procedure SetEMAIL_1Value(const aValue: String); virtual; + procedure SetEMAIL_1IsNull(const aValue: Boolean); virtual; function GetEMAIL_2Value: String; virtual; + function GetEMAIL_2IsNull: Boolean; virtual; function GetOldEMAIL_2Value: String; virtual; + function GetOldEMAIL_2IsNull: Boolean; virtual; procedure SetEMAIL_2Value(const aValue: String); virtual; + procedure SetEMAIL_2IsNull(const aValue: Boolean); virtual; function GetPAGINA_WEBValue: String; virtual; + function GetPAGINA_WEBIsNull: Boolean; virtual; function GetOldPAGINA_WEBValue: String; virtual; + function GetOldPAGINA_WEBIsNull: Boolean; virtual; procedure SetPAGINA_WEBValue(const aValue: String); virtual; + procedure SetPAGINA_WEBIsNull(const aValue: Boolean); virtual; function GetNOTASValue: IROStrings; virtual; + function GetNOTASIsNull: Boolean; virtual; function GetOldNOTASValue: IROStrings; virtual; - procedure SetNOTASValue(const aValue: IROStrings); virtual; + function GetOldNOTASIsNull: Boolean; virtual; + procedure SetNOTASIsNull(const aValue: Boolean); virtual; + function GetFECHA_ALTAValue: DateTime; virtual; + function GetFECHA_ALTAIsNull: Boolean; virtual; + function GetOldFECHA_ALTAValue: DateTime; virtual; + function GetOldFECHA_ALTAIsNull: Boolean; virtual; + procedure SetFECHA_ALTAValue(const aValue: DateTime); virtual; + procedure SetFECHA_ALTAIsNull(const aValue: Boolean); virtual; + function GetFECHA_MODIFICACIONValue: DateTime; virtual; + function GetFECHA_MODIFICACIONIsNull: Boolean; virtual; + function GetOldFECHA_MODIFICACIONValue: DateTime; virtual; + function GetOldFECHA_MODIFICACIONIsNull: Boolean; virtual; + procedure SetFECHA_MODIFICACIONValue(const aValue: DateTime); virtual; + procedure SetFECHA_MODIFICACIONIsNull(const aValue: Boolean); virtual; function GetUSUARIOValue: String; virtual; + function GetUSUARIOIsNull: Boolean; virtual; function GetOldUSUARIOValue: String; virtual; + function GetOldUSUARIOIsNull: Boolean; virtual; procedure SetUSUARIOValue(const aValue: String); virtual; + procedure SetUSUARIOIsNull(const aValue: Boolean); virtual; function GetID_EMPRESAValue: Integer; virtual; + function GetID_EMPRESAIsNull: Boolean; virtual; function GetOldID_EMPRESAValue: Integer; virtual; + function GetOldID_EMPRESAIsNull: Boolean; virtual; procedure SetID_EMPRESAValue(const aValue: Integer); virtual; + procedure SetID_EMPRESAIsNull(const aValue: Boolean); virtual; function GetREFERENCIAValue: String; virtual; + function GetREFERENCIAIsNull: Boolean; virtual; function GetOldREFERENCIAValue: String; virtual; + function GetOldREFERENCIAIsNull: Boolean; virtual; procedure SetREFERENCIAValue(const aValue: String); virtual; + procedure SetREFERENCIAIsNull(const aValue: Boolean); virtual; { Properties } property ID : Integer read GetIDValue write SetIDValue; + property IDIsNull : Boolean read GetIDIsNull write SetIDIsNull; property OldID : Integer read GetOldIDValue; + property OldIDIsNull : Boolean read GetOldIDIsNull; property ID_CATEGORIA : Integer read GetID_CATEGORIAValue write SetID_CATEGORIAValue; + property ID_CATEGORIAIsNull : Boolean read GetID_CATEGORIAIsNull write SetID_CATEGORIAIsNull; property OldID_CATEGORIA : Integer read GetOldID_CATEGORIAValue; + property OldID_CATEGORIAIsNull : Boolean read GetOldID_CATEGORIAIsNull; property NIF_CIF : String read GetNIF_CIFValue write SetNIF_CIFValue; + property NIF_CIFIsNull : Boolean read GetNIF_CIFIsNull write SetNIF_CIFIsNull; property OldNIF_CIF : String read GetOldNIF_CIFValue; + property OldNIF_CIFIsNull : Boolean read GetOldNIF_CIFIsNull; property NOMBRE : String read GetNOMBREValue write SetNOMBREValue; + property NOMBREIsNull : Boolean read GetNOMBREIsNull write SetNOMBREIsNull; property OldNOMBRE : String read GetOldNOMBREValue; + property OldNOMBREIsNull : Boolean read GetOldNOMBREIsNull; property PERSONA_CONTACTO : String read GetPERSONA_CONTACTOValue write SetPERSONA_CONTACTOValue; + property PERSONA_CONTACTOIsNull : Boolean read GetPERSONA_CONTACTOIsNull write SetPERSONA_CONTACTOIsNull; property OldPERSONA_CONTACTO : String read GetOldPERSONA_CONTACTOValue; + property OldPERSONA_CONTACTOIsNull : Boolean read GetOldPERSONA_CONTACTOIsNull; property CALLE : String read GetCALLEValue write SetCALLEValue; + property CALLEIsNull : Boolean read GetCALLEIsNull write SetCALLEIsNull; property OldCALLE : String read GetOldCALLEValue; + property OldCALLEIsNull : Boolean read GetOldCALLEIsNull; property POBLACION : String read GetPOBLACIONValue write SetPOBLACIONValue; + property POBLACIONIsNull : Boolean read GetPOBLACIONIsNull write SetPOBLACIONIsNull; property OldPOBLACION : String read GetOldPOBLACIONValue; + property OldPOBLACIONIsNull : Boolean read GetOldPOBLACIONIsNull; property PROVINCIA : String read GetPROVINCIAValue write SetPROVINCIAValue; + property PROVINCIAIsNull : Boolean read GetPROVINCIAIsNull write SetPROVINCIAIsNull; property OldPROVINCIA : String read GetOldPROVINCIAValue; + property OldPROVINCIAIsNull : Boolean read GetOldPROVINCIAIsNull; property CODIGO_POSTAL : String read GetCODIGO_POSTALValue write SetCODIGO_POSTALValue; + property CODIGO_POSTALIsNull : Boolean read GetCODIGO_POSTALIsNull write SetCODIGO_POSTALIsNull; property OldCODIGO_POSTAL : String read GetOldCODIGO_POSTALValue; + property OldCODIGO_POSTALIsNull : Boolean read GetOldCODIGO_POSTALIsNull; property TELEFONO_1 : String read GetTELEFONO_1Value write SetTELEFONO_1Value; + property TELEFONO_1IsNull : Boolean read GetTELEFONO_1IsNull write SetTELEFONO_1IsNull; property OldTELEFONO_1 : String read GetOldTELEFONO_1Value; + property OldTELEFONO_1IsNull : Boolean read GetOldTELEFONO_1IsNull; property TELEFONO_2 : String read GetTELEFONO_2Value write SetTELEFONO_2Value; + property TELEFONO_2IsNull : Boolean read GetTELEFONO_2IsNull write SetTELEFONO_2IsNull; property OldTELEFONO_2 : String read GetOldTELEFONO_2Value; + property OldTELEFONO_2IsNull : Boolean read GetOldTELEFONO_2IsNull; property MOVIL_1 : String read GetMOVIL_1Value write SetMOVIL_1Value; + property MOVIL_1IsNull : Boolean read GetMOVIL_1IsNull write SetMOVIL_1IsNull; property OldMOVIL_1 : String read GetOldMOVIL_1Value; + property OldMOVIL_1IsNull : Boolean read GetOldMOVIL_1IsNull; property MOVIL_2 : String read GetMOVIL_2Value write SetMOVIL_2Value; + property MOVIL_2IsNull : Boolean read GetMOVIL_2IsNull write SetMOVIL_2IsNull; property OldMOVIL_2 : String read GetOldMOVIL_2Value; + property OldMOVIL_2IsNull : Boolean read GetOldMOVIL_2IsNull; property FAX : String read GetFAXValue write SetFAXValue; + property FAXIsNull : Boolean read GetFAXIsNull write SetFAXIsNull; property OldFAX : String read GetOldFAXValue; + property OldFAXIsNull : Boolean read GetOldFAXIsNull; property EMAIL_1 : String read GetEMAIL_1Value write SetEMAIL_1Value; + property EMAIL_1IsNull : Boolean read GetEMAIL_1IsNull write SetEMAIL_1IsNull; property OldEMAIL_1 : String read GetOldEMAIL_1Value; + property OldEMAIL_1IsNull : Boolean read GetOldEMAIL_1IsNull; property EMAIL_2 : String read GetEMAIL_2Value write SetEMAIL_2Value; + property EMAIL_2IsNull : Boolean read GetEMAIL_2IsNull write SetEMAIL_2IsNull; property OldEMAIL_2 : String read GetOldEMAIL_2Value; + property OldEMAIL_2IsNull : Boolean read GetOldEMAIL_2IsNull; property PAGINA_WEB : String read GetPAGINA_WEBValue write SetPAGINA_WEBValue; + property PAGINA_WEBIsNull : Boolean read GetPAGINA_WEBIsNull write SetPAGINA_WEBIsNull; property OldPAGINA_WEB : String read GetOldPAGINA_WEBValue; - property NOTAS : IROStrings read GetNOTASValue write SetNOTASValue; + property OldPAGINA_WEBIsNull : Boolean read GetOldPAGINA_WEBIsNull; + property NOTAS : IROStrings read GetNOTASValue; + property NOTASIsNull : Boolean read GetNOTASIsNull write SetNOTASIsNull; property OldNOTAS : IROStrings read GetOldNOTASValue; + property OldNOTASIsNull : Boolean read GetOldNOTASIsNull; + property FECHA_ALTA : DateTime read GetFECHA_ALTAValue write SetFECHA_ALTAValue; + property FECHA_ALTAIsNull : Boolean read GetFECHA_ALTAIsNull write SetFECHA_ALTAIsNull; + property OldFECHA_ALTA : DateTime read GetOldFECHA_ALTAValue; + property OldFECHA_ALTAIsNull : Boolean read GetOldFECHA_ALTAIsNull; + property FECHA_MODIFICACION : DateTime read GetFECHA_MODIFICACIONValue write SetFECHA_MODIFICACIONValue; + property FECHA_MODIFICACIONIsNull : Boolean read GetFECHA_MODIFICACIONIsNull write SetFECHA_MODIFICACIONIsNull; + property OldFECHA_MODIFICACION : DateTime read GetOldFECHA_MODIFICACIONValue; + property OldFECHA_MODIFICACIONIsNull : Boolean read GetOldFECHA_MODIFICACIONIsNull; property USUARIO : String read GetUSUARIOValue write SetUSUARIOValue; + property USUARIOIsNull : Boolean read GetUSUARIOIsNull write SetUSUARIOIsNull; property OldUSUARIO : String read GetOldUSUARIOValue; + property OldUSUARIOIsNull : Boolean read GetOldUSUARIOIsNull; property ID_EMPRESA : Integer read GetID_EMPRESAValue write SetID_EMPRESAValue; + property ID_EMPRESAIsNull : Boolean read GetID_EMPRESAIsNull write SetID_EMPRESAIsNull; property OldID_EMPRESA : Integer read GetOldID_EMPRESAValue; + property OldID_EMPRESAIsNull : Boolean read GetOldID_EMPRESAIsNull; property REFERENCIA : String read GetREFERENCIAValue write SetREFERENCIAValue; + property REFERENCIAIsNull : Boolean read GetREFERENCIAIsNull write SetREFERENCIAIsNull; property OldREFERENCIA : String read GetOldREFERENCIAValue; + property OldREFERENCIAIsNull : Boolean read GetOldREFERENCIAIsNull; public constructor Create(aBusinessProcessor: TDABusinessProcessor); override; @@ -193,7 +323,7 @@ type { IGruposClienteDelta } IGruposClienteDelta = interface(IGruposCliente) - ['{4D46364E-1E11-4648-A9C7-AE4B81FB675C}'] + ['{2132D071-7709-433A-B339-5B9C763D0995}'] { Property getters and setters } function GetOldDESCRIPCIONValue : String; @@ -207,12 +337,17 @@ type protected { Property getters and setters } function GetDESCRIPCIONValue: String; virtual; + function GetDESCRIPCIONIsNull: Boolean; virtual; function GetOldDESCRIPCIONValue: String; virtual; + function GetOldDESCRIPCIONIsNull: Boolean; virtual; procedure SetDESCRIPCIONValue(const aValue: String); virtual; + procedure SetDESCRIPCIONIsNull(const aValue: Boolean); virtual; { Properties } property DESCRIPCION : String read GetDESCRIPCIONValue write SetDESCRIPCIONValue; + property DESCRIPCIONIsNull : Boolean read GetDESCRIPCIONIsNull write SetDESCRIPCIONIsNull; property OldDESCRIPCION : String read GetOldDESCRIPCIONValue; + property OldDESCRIPCIONIsNull : Boolean read GetOldDESCRIPCIONIsNull; public constructor Create(aBusinessProcessor: TDABusinessProcessor); override; @@ -222,7 +357,7 @@ type { IDatosBancariosDelta } IDatosBancariosDelta = interface(IDatosBancarios) - ['{D4227F74-9431-45EA-8F09-20FFE80E34B1}'] + ['{6BA983CD-C9FA-4933-93CD-FCD1CE045256}'] { Property getters and setters } function GetOldIDValue : Integer; function GetOldID_CONTACTOValue : Integer; @@ -231,6 +366,8 @@ type function GetOldSUCURSALValue : String; function GetOldDCValue : String; function GetOldCUENTAValue : String; + function GetOldFECHA_ALTAValue : DateTime; + function GetOldFECHA_MODIFICACIONValue : DateTime; { Properties } property OldID : Integer read GetOldIDValue; @@ -240,6 +377,8 @@ type property OldSUCURSAL : String read GetOldSUCURSALValue; property OldDC : String read GetOldDCValue; property OldCUENTA : String read GetOldCUENTAValue; + property OldFECHA_ALTA : DateTime read GetOldFECHA_ALTAValue; + property OldFECHA_MODIFICACION : DateTime read GetOldFECHA_MODIFICACIONValue; end; { TDatosBancariosBusinessProcessorRules } @@ -248,78 +387,97 @@ type protected { Property getters and setters } function GetIDValue: Integer; virtual; + function GetIDIsNull: Boolean; virtual; function GetOldIDValue: Integer; virtual; + function GetOldIDIsNull: Boolean; virtual; procedure SetIDValue(const aValue: Integer); virtual; + procedure SetIDIsNull(const aValue: Boolean); virtual; function GetID_CONTACTOValue: Integer; virtual; + function GetID_CONTACTOIsNull: Boolean; virtual; function GetOldID_CONTACTOValue: Integer; virtual; + function GetOldID_CONTACTOIsNull: Boolean; virtual; procedure SetID_CONTACTOValue(const aValue: Integer); virtual; + procedure SetID_CONTACTOIsNull(const aValue: Boolean); virtual; function GetTITULARValue: String; virtual; + function GetTITULARIsNull: Boolean; virtual; function GetOldTITULARValue: String; virtual; + function GetOldTITULARIsNull: Boolean; virtual; procedure SetTITULARValue(const aValue: String); virtual; + procedure SetTITULARIsNull(const aValue: Boolean); virtual; function GetENTIDADValue: String; virtual; + function GetENTIDADIsNull: Boolean; virtual; function GetOldENTIDADValue: String; virtual; + function GetOldENTIDADIsNull: Boolean; virtual; procedure SetENTIDADValue(const aValue: String); virtual; + procedure SetENTIDADIsNull(const aValue: Boolean); virtual; function GetSUCURSALValue: String; virtual; + function GetSUCURSALIsNull: Boolean; virtual; function GetOldSUCURSALValue: String; virtual; + function GetOldSUCURSALIsNull: Boolean; virtual; procedure SetSUCURSALValue(const aValue: String); virtual; + procedure SetSUCURSALIsNull(const aValue: Boolean); virtual; function GetDCValue: String; virtual; + function GetDCIsNull: Boolean; virtual; function GetOldDCValue: String; virtual; + function GetOldDCIsNull: Boolean; virtual; procedure SetDCValue(const aValue: String); virtual; + procedure SetDCIsNull(const aValue: Boolean); virtual; function GetCUENTAValue: String; virtual; + function GetCUENTAIsNull: Boolean; virtual; function GetOldCUENTAValue: String; virtual; + function GetOldCUENTAIsNull: Boolean; virtual; procedure SetCUENTAValue(const aValue: String); virtual; + procedure SetCUENTAIsNull(const aValue: Boolean); virtual; + function GetFECHA_ALTAValue: DateTime; virtual; + function GetFECHA_ALTAIsNull: Boolean; virtual; + function GetOldFECHA_ALTAValue: DateTime; virtual; + function GetOldFECHA_ALTAIsNull: Boolean; virtual; + procedure SetFECHA_ALTAValue(const aValue: DateTime); virtual; + procedure SetFECHA_ALTAIsNull(const aValue: Boolean); virtual; + function GetFECHA_MODIFICACIONValue: DateTime; virtual; + function GetFECHA_MODIFICACIONIsNull: Boolean; virtual; + function GetOldFECHA_MODIFICACIONValue: DateTime; virtual; + function GetOldFECHA_MODIFICACIONIsNull: Boolean; virtual; + procedure SetFECHA_MODIFICACIONValue(const aValue: DateTime); virtual; + procedure SetFECHA_MODIFICACIONIsNull(const aValue: Boolean); virtual; { Properties } property ID : Integer read GetIDValue write SetIDValue; + property IDIsNull : Boolean read GetIDIsNull write SetIDIsNull; property OldID : Integer read GetOldIDValue; + property OldIDIsNull : Boolean read GetOldIDIsNull; property ID_CONTACTO : Integer read GetID_CONTACTOValue write SetID_CONTACTOValue; + property ID_CONTACTOIsNull : Boolean read GetID_CONTACTOIsNull write SetID_CONTACTOIsNull; property OldID_CONTACTO : Integer read GetOldID_CONTACTOValue; + property OldID_CONTACTOIsNull : Boolean read GetOldID_CONTACTOIsNull; property TITULAR : String read GetTITULARValue write SetTITULARValue; + property TITULARIsNull : Boolean read GetTITULARIsNull write SetTITULARIsNull; property OldTITULAR : String read GetOldTITULARValue; + property OldTITULARIsNull : Boolean read GetOldTITULARIsNull; property ENTIDAD : String read GetENTIDADValue write SetENTIDADValue; + property ENTIDADIsNull : Boolean read GetENTIDADIsNull write SetENTIDADIsNull; property OldENTIDAD : String read GetOldENTIDADValue; + property OldENTIDADIsNull : Boolean read GetOldENTIDADIsNull; property SUCURSAL : String read GetSUCURSALValue write SetSUCURSALValue; + property SUCURSALIsNull : Boolean read GetSUCURSALIsNull write SetSUCURSALIsNull; property OldSUCURSAL : String read GetOldSUCURSALValue; + property OldSUCURSALIsNull : Boolean read GetOldSUCURSALIsNull; property DC : String read GetDCValue write SetDCValue; + property DCIsNull : Boolean read GetDCIsNull write SetDCIsNull; property OldDC : String read GetOldDCValue; + property OldDCIsNull : Boolean read GetOldDCIsNull; property CUENTA : String read GetCUENTAValue write SetCUENTAValue; + property CUENTAIsNull : Boolean read GetCUENTAIsNull write SetCUENTAIsNull; property OldCUENTA : String read GetOldCUENTAValue; - - public - constructor Create(aBusinessProcessor: TDABusinessProcessor); override; - destructor Destroy; override; - - end; - - { IContactosCategoriasDelta } - IContactosCategoriasDelta = interface(IContactosCategorias) - ['{EB18171B-206D-4CFF-97FF-CB91350EAF4C}'] - { Property getters and setters } - function GetOldID_CONTACTOValue : Integer; - function GetOldID_CATEGORIAValue : Integer; - - { Properties } - property OldID_CONTACTO : Integer read GetOldID_CONTACTOValue; - property OldID_CATEGORIA : Integer read GetOldID_CATEGORIAValue; - end; - - { TContactosCategoriasBusinessProcessorRules } - TContactosCategoriasBusinessProcessorRules = class(TDABusinessProcessorRules, IContactosCategorias, IContactosCategoriasDelta) - private - protected - { Property getters and setters } - function GetID_CONTACTOValue: Integer; virtual; - function GetOldID_CONTACTOValue: Integer; virtual; - procedure SetID_CONTACTOValue(const aValue: Integer); virtual; - function GetID_CATEGORIAValue: Integer; virtual; - function GetOldID_CATEGORIAValue: Integer; virtual; - procedure SetID_CATEGORIAValue(const aValue: Integer); virtual; - - { Properties } - property ID_CONTACTO : Integer read GetID_CONTACTOValue write SetID_CONTACTOValue; - property OldID_CONTACTO : Integer read GetOldID_CONTACTOValue; - property ID_CATEGORIA : Integer read GetID_CATEGORIAValue write SetID_CATEGORIAValue; - property OldID_CATEGORIA : Integer read GetOldID_CATEGORIAValue; + property OldCUENTAIsNull : Boolean read GetOldCUENTAIsNull; + property FECHA_ALTA : DateTime read GetFECHA_ALTAValue write SetFECHA_ALTAValue; + property FECHA_ALTAIsNull : Boolean read GetFECHA_ALTAIsNull write SetFECHA_ALTAIsNull; + property OldFECHA_ALTA : DateTime read GetOldFECHA_ALTAValue; + property OldFECHA_ALTAIsNull : Boolean read GetOldFECHA_ALTAIsNull; + property FECHA_MODIFICACION : DateTime read GetFECHA_MODIFICACIONValue write SetFECHA_MODIFICACIONValue; + property FECHA_MODIFICACIONIsNull : Boolean read GetFECHA_MODIFICACIONIsNull write SetFECHA_MODIFICACIONIsNull; + property OldFECHA_MODIFICACION : DateTime read GetOldFECHA_MODIFICACIONValue; + property OldFECHA_MODIFICACIONIsNull : Boolean read GetOldFECHA_MODIFICACIONIsNull; public constructor Create(aBusinessProcessor: TDABusinessProcessor); override; @@ -329,14 +487,14 @@ type { IClientesDelta } IClientesDelta = interface(IClientes) - ['{6C588001-84B7-4F1C-9C6B-84A254E1EA7D}'] + ['{32DF2CC4-F076-4924-B2EF-9218D99294C6}'] { Property getters and setters } function GetOldIDValue : Integer; function GetOldID_CATEGORIAValue : Integer; function GetOldNIF_CIFValue : String; function GetOldNOMBREValue : String; - function GetOldCALLEValue : String; function GetOldPERSONA_CONTACTOValue : String; + function GetOldCALLEValue : String; function GetOldPOBLACIONValue : String; function GetOldPROVINCIAValue : String; function GetOldCODIGO_POSTALValue : String; @@ -349,27 +507,29 @@ type function GetOldEMAIL_2Value : String; function GetOldPAGINA_WEBValue : String; function GetOldNOTASValue : IROStrings; + function GetOldFECHA_ALTAValue : DateTime; + function GetOldFECHA_MODIFICACIONValue : DateTime; function GetOldUSUARIOValue : String; function GetOldID_EMPRESAValue : Integer; function GetOldREFERENCIAValue : String; - function GetOldID_TIPO_IVAValue : Integer; - function GetOldREGIMEN_IVAValue : String; - function GetOldID_FORMA_PAGOValue : Integer; - function GetOldTIENDA_WEBValue : Integer; - function GetOldRECARGO_EQUIVALENCIAValue : Integer; function GetOldGRUPO_CLIENTEValue : String; function GetOldNOMBRE_COMERCIALValue : String; function GetOldVENCIMIENTO_FACTURASValue : Integer; - function GetOldBLOQUEADOValue : Integer; + function GetOldBLOQUEADOValue : SmallInt; + function GetOldREGIMEN_IVAValue : String; function GetOldMOTIVO_BLOQUEOValue : String; + function GetOldRECARGO_EQUIVALENCIAValue : Integer; + function GetOldID_TIPO_IVAValue : Integer; + function GetOldID_FORMA_PAGOValue : Integer; + function GetOldTIENDA_WEBValue : SmallInt; { Properties } property OldID : Integer read GetOldIDValue; property OldID_CATEGORIA : Integer read GetOldID_CATEGORIAValue; property OldNIF_CIF : String read GetOldNIF_CIFValue; property OldNOMBRE : String read GetOldNOMBREValue; - property OldCALLE : String read GetOldCALLEValue; property OldPERSONA_CONTACTO : String read GetOldPERSONA_CONTACTOValue; + property OldCALLE : String read GetOldCALLEValue; property OldPOBLACION : String read GetOldPOBLACIONValue; property OldPROVINCIA : String read GetOldPROVINCIAValue; property OldCODIGO_POSTAL : String read GetOldCODIGO_POSTALValue; @@ -382,183 +542,361 @@ type property OldEMAIL_2 : String read GetOldEMAIL_2Value; property OldPAGINA_WEB : String read GetOldPAGINA_WEBValue; property OldNOTAS : IROStrings read GetOldNOTASValue; + property OldFECHA_ALTA : DateTime read GetOldFECHA_ALTAValue; + property OldFECHA_MODIFICACION : DateTime read GetOldFECHA_MODIFICACIONValue; property OldUSUARIO : String read GetOldUSUARIOValue; property OldID_EMPRESA : Integer read GetOldID_EMPRESAValue; property OldREFERENCIA : String read GetOldREFERENCIAValue; - property OldID_TIPO_IVA : Integer read GetOldID_TIPO_IVAValue; - property OldREGIMEN_IVA : String read GetOldREGIMEN_IVAValue; - property OldID_FORMA_PAGO : Integer read GetOldID_FORMA_PAGOValue; - property OldTIENDA_WEB : Integer read GetOldTIENDA_WEBValue; - property OldRECARGO_EQUIVALENCIA : Integer read GetOldRECARGO_EQUIVALENCIAValue; property OldGRUPO_CLIENTE : String read GetOldGRUPO_CLIENTEValue; property OldNOMBRE_COMERCIAL : String read GetOldNOMBRE_COMERCIALValue; property OldVENCIMIENTO_FACTURAS : Integer read GetOldVENCIMIENTO_FACTURASValue; - property OldBLOQUEADO : Integer read GetOldBLOQUEADOValue; + property OldBLOQUEADO : SmallInt read GetOldBLOQUEADOValue; + property OldREGIMEN_IVA : String read GetOldREGIMEN_IVAValue; property OldMOTIVO_BLOQUEO : String read GetOldMOTIVO_BLOQUEOValue; + property OldRECARGO_EQUIVALENCIA : Integer read GetOldRECARGO_EQUIVALENCIAValue; + property OldID_TIPO_IVA : Integer read GetOldID_TIPO_IVAValue; + property OldID_FORMA_PAGO : Integer read GetOldID_FORMA_PAGOValue; + property OldTIENDA_WEB : SmallInt read GetOldTIENDA_WEBValue; end; { TClientesBusinessProcessorRules } TClientesBusinessProcessorRules = class(TDABusinessProcessorRules, IClientes, IClientesDelta) private + f_NOTAS: IROStrings; + procedure NOTAS_OnChange(Sender: TObject); protected { Property getters and setters } function GetIDValue: Integer; virtual; + function GetIDIsNull: Boolean; virtual; function GetOldIDValue: Integer; virtual; + function GetOldIDIsNull: Boolean; virtual; procedure SetIDValue(const aValue: Integer); virtual; + procedure SetIDIsNull(const aValue: Boolean); virtual; function GetID_CATEGORIAValue: Integer; virtual; + function GetID_CATEGORIAIsNull: Boolean; virtual; function GetOldID_CATEGORIAValue: Integer; virtual; + function GetOldID_CATEGORIAIsNull: Boolean; virtual; procedure SetID_CATEGORIAValue(const aValue: Integer); virtual; + procedure SetID_CATEGORIAIsNull(const aValue: Boolean); virtual; function GetNIF_CIFValue: String; virtual; + function GetNIF_CIFIsNull: Boolean; virtual; function GetOldNIF_CIFValue: String; virtual; + function GetOldNIF_CIFIsNull: Boolean; virtual; procedure SetNIF_CIFValue(const aValue: String); virtual; + procedure SetNIF_CIFIsNull(const aValue: Boolean); virtual; function GetNOMBREValue: String; virtual; + function GetNOMBREIsNull: Boolean; virtual; function GetOldNOMBREValue: String; virtual; + function GetOldNOMBREIsNull: Boolean; virtual; procedure SetNOMBREValue(const aValue: String); virtual; - function GetCALLEValue: String; virtual; - function GetOldCALLEValue: String; virtual; - procedure SetCALLEValue(const aValue: String); virtual; + procedure SetNOMBREIsNull(const aValue: Boolean); virtual; function GetPERSONA_CONTACTOValue: String; virtual; + function GetPERSONA_CONTACTOIsNull: Boolean; virtual; function GetOldPERSONA_CONTACTOValue: String; virtual; + function GetOldPERSONA_CONTACTOIsNull: Boolean; virtual; procedure SetPERSONA_CONTACTOValue(const aValue: String); virtual; + procedure SetPERSONA_CONTACTOIsNull(const aValue: Boolean); virtual; + function GetCALLEValue: String; virtual; + function GetCALLEIsNull: Boolean; virtual; + function GetOldCALLEValue: String; virtual; + function GetOldCALLEIsNull: Boolean; virtual; + procedure SetCALLEValue(const aValue: String); virtual; + procedure SetCALLEIsNull(const aValue: Boolean); virtual; function GetPOBLACIONValue: String; virtual; + function GetPOBLACIONIsNull: Boolean; virtual; function GetOldPOBLACIONValue: String; virtual; + function GetOldPOBLACIONIsNull: Boolean; virtual; procedure SetPOBLACIONValue(const aValue: String); virtual; + procedure SetPOBLACIONIsNull(const aValue: Boolean); virtual; function GetPROVINCIAValue: String; virtual; + function GetPROVINCIAIsNull: Boolean; virtual; function GetOldPROVINCIAValue: String; virtual; + function GetOldPROVINCIAIsNull: Boolean; virtual; procedure SetPROVINCIAValue(const aValue: String); virtual; + procedure SetPROVINCIAIsNull(const aValue: Boolean); virtual; function GetCODIGO_POSTALValue: String; virtual; + function GetCODIGO_POSTALIsNull: Boolean; virtual; function GetOldCODIGO_POSTALValue: String; virtual; + function GetOldCODIGO_POSTALIsNull: Boolean; virtual; procedure SetCODIGO_POSTALValue(const aValue: String); virtual; + procedure SetCODIGO_POSTALIsNull(const aValue: Boolean); virtual; function GetTELEFONO_1Value: String; virtual; + function GetTELEFONO_1IsNull: Boolean; virtual; function GetOldTELEFONO_1Value: String; virtual; + function GetOldTELEFONO_1IsNull: Boolean; virtual; procedure SetTELEFONO_1Value(const aValue: String); virtual; + procedure SetTELEFONO_1IsNull(const aValue: Boolean); virtual; function GetTELEFONO_2Value: String; virtual; + function GetTELEFONO_2IsNull: Boolean; virtual; function GetOldTELEFONO_2Value: String; virtual; + function GetOldTELEFONO_2IsNull: Boolean; virtual; procedure SetTELEFONO_2Value(const aValue: String); virtual; + procedure SetTELEFONO_2IsNull(const aValue: Boolean); virtual; function GetMOVIL_1Value: String; virtual; + function GetMOVIL_1IsNull: Boolean; virtual; function GetOldMOVIL_1Value: String; virtual; + function GetOldMOVIL_1IsNull: Boolean; virtual; procedure SetMOVIL_1Value(const aValue: String); virtual; + procedure SetMOVIL_1IsNull(const aValue: Boolean); virtual; function GetMOVIL_2Value: String; virtual; + function GetMOVIL_2IsNull: Boolean; virtual; function GetOldMOVIL_2Value: String; virtual; + function GetOldMOVIL_2IsNull: Boolean; virtual; procedure SetMOVIL_2Value(const aValue: String); virtual; + procedure SetMOVIL_2IsNull(const aValue: Boolean); virtual; function GetFAXValue: String; virtual; + function GetFAXIsNull: Boolean; virtual; function GetOldFAXValue: String; virtual; + function GetOldFAXIsNull: Boolean; virtual; procedure SetFAXValue(const aValue: String); virtual; + procedure SetFAXIsNull(const aValue: Boolean); virtual; function GetEMAIL_1Value: String; virtual; + function GetEMAIL_1IsNull: Boolean; virtual; function GetOldEMAIL_1Value: String; virtual; + function GetOldEMAIL_1IsNull: Boolean; virtual; procedure SetEMAIL_1Value(const aValue: String); virtual; + procedure SetEMAIL_1IsNull(const aValue: Boolean); virtual; function GetEMAIL_2Value: String; virtual; + function GetEMAIL_2IsNull: Boolean; virtual; function GetOldEMAIL_2Value: String; virtual; + function GetOldEMAIL_2IsNull: Boolean; virtual; procedure SetEMAIL_2Value(const aValue: String); virtual; + procedure SetEMAIL_2IsNull(const aValue: Boolean); virtual; function GetPAGINA_WEBValue: String; virtual; + function GetPAGINA_WEBIsNull: Boolean; virtual; function GetOldPAGINA_WEBValue: String; virtual; + function GetOldPAGINA_WEBIsNull: Boolean; virtual; procedure SetPAGINA_WEBValue(const aValue: String); virtual; + procedure SetPAGINA_WEBIsNull(const aValue: Boolean); virtual; function GetNOTASValue: IROStrings; virtual; + function GetNOTASIsNull: Boolean; virtual; function GetOldNOTASValue: IROStrings; virtual; - procedure SetNOTASValue(const aValue: IROStrings); virtual; + function GetOldNOTASIsNull: Boolean; virtual; + procedure SetNOTASIsNull(const aValue: Boolean); virtual; + function GetFECHA_ALTAValue: DateTime; virtual; + function GetFECHA_ALTAIsNull: Boolean; virtual; + function GetOldFECHA_ALTAValue: DateTime; virtual; + function GetOldFECHA_ALTAIsNull: Boolean; virtual; + procedure SetFECHA_ALTAValue(const aValue: DateTime); virtual; + procedure SetFECHA_ALTAIsNull(const aValue: Boolean); virtual; + function GetFECHA_MODIFICACIONValue: DateTime; virtual; + function GetFECHA_MODIFICACIONIsNull: Boolean; virtual; + function GetOldFECHA_MODIFICACIONValue: DateTime; virtual; + function GetOldFECHA_MODIFICACIONIsNull: Boolean; virtual; + procedure SetFECHA_MODIFICACIONValue(const aValue: DateTime); virtual; + procedure SetFECHA_MODIFICACIONIsNull(const aValue: Boolean); virtual; function GetUSUARIOValue: String; virtual; + function GetUSUARIOIsNull: Boolean; virtual; function GetOldUSUARIOValue: String; virtual; + function GetOldUSUARIOIsNull: Boolean; virtual; procedure SetUSUARIOValue(const aValue: String); virtual; + procedure SetUSUARIOIsNull(const aValue: Boolean); virtual; function GetID_EMPRESAValue: Integer; virtual; + function GetID_EMPRESAIsNull: Boolean; virtual; function GetOldID_EMPRESAValue: Integer; virtual; + function GetOldID_EMPRESAIsNull: Boolean; virtual; procedure SetID_EMPRESAValue(const aValue: Integer); virtual; + procedure SetID_EMPRESAIsNull(const aValue: Boolean); virtual; function GetREFERENCIAValue: String; virtual; + function GetREFERENCIAIsNull: Boolean; virtual; function GetOldREFERENCIAValue: String; virtual; + function GetOldREFERENCIAIsNull: Boolean; virtual; procedure SetREFERENCIAValue(const aValue: String); virtual; - function GetID_TIPO_IVAValue: Integer; virtual; - function GetOldID_TIPO_IVAValue: Integer; virtual; - procedure SetID_TIPO_IVAValue(const aValue: Integer); virtual; - function GetREGIMEN_IVAValue: String; virtual; - function GetOldREGIMEN_IVAValue: String; virtual; - procedure SetREGIMEN_IVAValue(const aValue: String); virtual; - function GetID_FORMA_PAGOValue: Integer; virtual; - function GetOldID_FORMA_PAGOValue: Integer; virtual; - procedure SetID_FORMA_PAGOValue(const aValue: Integer); virtual; - function GetTIENDA_WEBValue: Integer; virtual; - function GetOldTIENDA_WEBValue: Integer; virtual; - procedure SetTIENDA_WEBValue(const aValue: Integer); virtual; - function GetRECARGO_EQUIVALENCIAValue: Integer; virtual; - function GetOldRECARGO_EQUIVALENCIAValue: Integer; virtual; - procedure SetRECARGO_EQUIVALENCIAValue(const aValue: Integer); virtual; + procedure SetREFERENCIAIsNull(const aValue: Boolean); virtual; function GetGRUPO_CLIENTEValue: String; virtual; + function GetGRUPO_CLIENTEIsNull: Boolean; virtual; function GetOldGRUPO_CLIENTEValue: String; virtual; + function GetOldGRUPO_CLIENTEIsNull: Boolean; virtual; procedure SetGRUPO_CLIENTEValue(const aValue: String); virtual; + procedure SetGRUPO_CLIENTEIsNull(const aValue: Boolean); virtual; function GetNOMBRE_COMERCIALValue: String; virtual; + function GetNOMBRE_COMERCIALIsNull: Boolean; virtual; function GetOldNOMBRE_COMERCIALValue: String; virtual; + function GetOldNOMBRE_COMERCIALIsNull: Boolean; virtual; procedure SetNOMBRE_COMERCIALValue(const aValue: String); virtual; + procedure SetNOMBRE_COMERCIALIsNull(const aValue: Boolean); virtual; function GetVENCIMIENTO_FACTURASValue: Integer; virtual; + function GetVENCIMIENTO_FACTURASIsNull: Boolean; virtual; function GetOldVENCIMIENTO_FACTURASValue: Integer; virtual; + function GetOldVENCIMIENTO_FACTURASIsNull: Boolean; virtual; procedure SetVENCIMIENTO_FACTURASValue(const aValue: Integer); virtual; - function GetBLOQUEADOValue: Integer; virtual; - function GetOldBLOQUEADOValue: Integer; virtual; - procedure SetBLOQUEADOValue(const aValue: Integer); virtual; + procedure SetVENCIMIENTO_FACTURASIsNull(const aValue: Boolean); virtual; + function GetBLOQUEADOValue: SmallInt; virtual; + function GetBLOQUEADOIsNull: Boolean; virtual; + function GetOldBLOQUEADOValue: SmallInt; virtual; + function GetOldBLOQUEADOIsNull: Boolean; virtual; + procedure SetBLOQUEADOValue(const aValue: SmallInt); virtual; + procedure SetBLOQUEADOIsNull(const aValue: Boolean); virtual; + function GetREGIMEN_IVAValue: String; virtual; + function GetREGIMEN_IVAIsNull: Boolean; virtual; + function GetOldREGIMEN_IVAValue: String; virtual; + function GetOldREGIMEN_IVAIsNull: Boolean; virtual; + procedure SetREGIMEN_IVAValue(const aValue: String); virtual; + procedure SetREGIMEN_IVAIsNull(const aValue: Boolean); virtual; function GetMOTIVO_BLOQUEOValue: String; virtual; + function GetMOTIVO_BLOQUEOIsNull: Boolean; virtual; function GetOldMOTIVO_BLOQUEOValue: String; virtual; + function GetOldMOTIVO_BLOQUEOIsNull: Boolean; virtual; procedure SetMOTIVO_BLOQUEOValue(const aValue: String); virtual; + procedure SetMOTIVO_BLOQUEOIsNull(const aValue: Boolean); virtual; + function GetRECARGO_EQUIVALENCIAValue: Integer; virtual; + function GetRECARGO_EQUIVALENCIAIsNull: Boolean; virtual; + function GetOldRECARGO_EQUIVALENCIAValue: Integer; virtual; + function GetOldRECARGO_EQUIVALENCIAIsNull: Boolean; virtual; + procedure SetRECARGO_EQUIVALENCIAValue(const aValue: Integer); virtual; + procedure SetRECARGO_EQUIVALENCIAIsNull(const aValue: Boolean); virtual; + function GetID_TIPO_IVAValue: Integer; virtual; + function GetID_TIPO_IVAIsNull: Boolean; virtual; + function GetOldID_TIPO_IVAValue: Integer; virtual; + function GetOldID_TIPO_IVAIsNull: Boolean; virtual; + procedure SetID_TIPO_IVAValue(const aValue: Integer); virtual; + procedure SetID_TIPO_IVAIsNull(const aValue: Boolean); virtual; + function GetID_FORMA_PAGOValue: Integer; virtual; + function GetID_FORMA_PAGOIsNull: Boolean; virtual; + function GetOldID_FORMA_PAGOValue: Integer; virtual; + function GetOldID_FORMA_PAGOIsNull: Boolean; virtual; + procedure SetID_FORMA_PAGOValue(const aValue: Integer); virtual; + procedure SetID_FORMA_PAGOIsNull(const aValue: Boolean); virtual; + function GetTIENDA_WEBValue: SmallInt; virtual; + function GetTIENDA_WEBIsNull: Boolean; virtual; + function GetOldTIENDA_WEBValue: SmallInt; virtual; + function GetOldTIENDA_WEBIsNull: Boolean; virtual; + procedure SetTIENDA_WEBValue(const aValue: SmallInt); virtual; + procedure SetTIENDA_WEBIsNull(const aValue: Boolean); virtual; { Properties } property ID : Integer read GetIDValue write SetIDValue; + property IDIsNull : Boolean read GetIDIsNull write SetIDIsNull; property OldID : Integer read GetOldIDValue; + property OldIDIsNull : Boolean read GetOldIDIsNull; property ID_CATEGORIA : Integer read GetID_CATEGORIAValue write SetID_CATEGORIAValue; + property ID_CATEGORIAIsNull : Boolean read GetID_CATEGORIAIsNull write SetID_CATEGORIAIsNull; property OldID_CATEGORIA : Integer read GetOldID_CATEGORIAValue; + property OldID_CATEGORIAIsNull : Boolean read GetOldID_CATEGORIAIsNull; property NIF_CIF : String read GetNIF_CIFValue write SetNIF_CIFValue; + property NIF_CIFIsNull : Boolean read GetNIF_CIFIsNull write SetNIF_CIFIsNull; property OldNIF_CIF : String read GetOldNIF_CIFValue; + property OldNIF_CIFIsNull : Boolean read GetOldNIF_CIFIsNull; property NOMBRE : String read GetNOMBREValue write SetNOMBREValue; + property NOMBREIsNull : Boolean read GetNOMBREIsNull write SetNOMBREIsNull; property OldNOMBRE : String read GetOldNOMBREValue; - property CALLE : String read GetCALLEValue write SetCALLEValue; - property OldCALLE : String read GetOldCALLEValue; + property OldNOMBREIsNull : Boolean read GetOldNOMBREIsNull; property PERSONA_CONTACTO : String read GetPERSONA_CONTACTOValue write SetPERSONA_CONTACTOValue; + property PERSONA_CONTACTOIsNull : Boolean read GetPERSONA_CONTACTOIsNull write SetPERSONA_CONTACTOIsNull; property OldPERSONA_CONTACTO : String read GetOldPERSONA_CONTACTOValue; + property OldPERSONA_CONTACTOIsNull : Boolean read GetOldPERSONA_CONTACTOIsNull; + property CALLE : String read GetCALLEValue write SetCALLEValue; + property CALLEIsNull : Boolean read GetCALLEIsNull write SetCALLEIsNull; + property OldCALLE : String read GetOldCALLEValue; + property OldCALLEIsNull : Boolean read GetOldCALLEIsNull; property POBLACION : String read GetPOBLACIONValue write SetPOBLACIONValue; + property POBLACIONIsNull : Boolean read GetPOBLACIONIsNull write SetPOBLACIONIsNull; property OldPOBLACION : String read GetOldPOBLACIONValue; + property OldPOBLACIONIsNull : Boolean read GetOldPOBLACIONIsNull; property PROVINCIA : String read GetPROVINCIAValue write SetPROVINCIAValue; + property PROVINCIAIsNull : Boolean read GetPROVINCIAIsNull write SetPROVINCIAIsNull; property OldPROVINCIA : String read GetOldPROVINCIAValue; + property OldPROVINCIAIsNull : Boolean read GetOldPROVINCIAIsNull; property CODIGO_POSTAL : String read GetCODIGO_POSTALValue write SetCODIGO_POSTALValue; + property CODIGO_POSTALIsNull : Boolean read GetCODIGO_POSTALIsNull write SetCODIGO_POSTALIsNull; property OldCODIGO_POSTAL : String read GetOldCODIGO_POSTALValue; + property OldCODIGO_POSTALIsNull : Boolean read GetOldCODIGO_POSTALIsNull; property TELEFONO_1 : String read GetTELEFONO_1Value write SetTELEFONO_1Value; + property TELEFONO_1IsNull : Boolean read GetTELEFONO_1IsNull write SetTELEFONO_1IsNull; property OldTELEFONO_1 : String read GetOldTELEFONO_1Value; + property OldTELEFONO_1IsNull : Boolean read GetOldTELEFONO_1IsNull; property TELEFONO_2 : String read GetTELEFONO_2Value write SetTELEFONO_2Value; + property TELEFONO_2IsNull : Boolean read GetTELEFONO_2IsNull write SetTELEFONO_2IsNull; property OldTELEFONO_2 : String read GetOldTELEFONO_2Value; + property OldTELEFONO_2IsNull : Boolean read GetOldTELEFONO_2IsNull; property MOVIL_1 : String read GetMOVIL_1Value write SetMOVIL_1Value; + property MOVIL_1IsNull : Boolean read GetMOVIL_1IsNull write SetMOVIL_1IsNull; property OldMOVIL_1 : String read GetOldMOVIL_1Value; + property OldMOVIL_1IsNull : Boolean read GetOldMOVIL_1IsNull; property MOVIL_2 : String read GetMOVIL_2Value write SetMOVIL_2Value; + property MOVIL_2IsNull : Boolean read GetMOVIL_2IsNull write SetMOVIL_2IsNull; property OldMOVIL_2 : String read GetOldMOVIL_2Value; + property OldMOVIL_2IsNull : Boolean read GetOldMOVIL_2IsNull; property FAX : String read GetFAXValue write SetFAXValue; + property FAXIsNull : Boolean read GetFAXIsNull write SetFAXIsNull; property OldFAX : String read GetOldFAXValue; + property OldFAXIsNull : Boolean read GetOldFAXIsNull; property EMAIL_1 : String read GetEMAIL_1Value write SetEMAIL_1Value; + property EMAIL_1IsNull : Boolean read GetEMAIL_1IsNull write SetEMAIL_1IsNull; property OldEMAIL_1 : String read GetOldEMAIL_1Value; + property OldEMAIL_1IsNull : Boolean read GetOldEMAIL_1IsNull; property EMAIL_2 : String read GetEMAIL_2Value write SetEMAIL_2Value; + property EMAIL_2IsNull : Boolean read GetEMAIL_2IsNull write SetEMAIL_2IsNull; property OldEMAIL_2 : String read GetOldEMAIL_2Value; + property OldEMAIL_2IsNull : Boolean read GetOldEMAIL_2IsNull; property PAGINA_WEB : String read GetPAGINA_WEBValue write SetPAGINA_WEBValue; + property PAGINA_WEBIsNull : Boolean read GetPAGINA_WEBIsNull write SetPAGINA_WEBIsNull; property OldPAGINA_WEB : String read GetOldPAGINA_WEBValue; - property NOTAS : IROStrings read GetNOTASValue write SetNOTASValue; + property OldPAGINA_WEBIsNull : Boolean read GetOldPAGINA_WEBIsNull; + property NOTAS : IROStrings read GetNOTASValue; + property NOTASIsNull : Boolean read GetNOTASIsNull write SetNOTASIsNull; property OldNOTAS : IROStrings read GetOldNOTASValue; + property OldNOTASIsNull : Boolean read GetOldNOTASIsNull; + property FECHA_ALTA : DateTime read GetFECHA_ALTAValue write SetFECHA_ALTAValue; + property FECHA_ALTAIsNull : Boolean read GetFECHA_ALTAIsNull write SetFECHA_ALTAIsNull; + property OldFECHA_ALTA : DateTime read GetOldFECHA_ALTAValue; + property OldFECHA_ALTAIsNull : Boolean read GetOldFECHA_ALTAIsNull; + property FECHA_MODIFICACION : DateTime read GetFECHA_MODIFICACIONValue write SetFECHA_MODIFICACIONValue; + property FECHA_MODIFICACIONIsNull : Boolean read GetFECHA_MODIFICACIONIsNull write SetFECHA_MODIFICACIONIsNull; + property OldFECHA_MODIFICACION : DateTime read GetOldFECHA_MODIFICACIONValue; + property OldFECHA_MODIFICACIONIsNull : Boolean read GetOldFECHA_MODIFICACIONIsNull; property USUARIO : String read GetUSUARIOValue write SetUSUARIOValue; + property USUARIOIsNull : Boolean read GetUSUARIOIsNull write SetUSUARIOIsNull; property OldUSUARIO : String read GetOldUSUARIOValue; + property OldUSUARIOIsNull : Boolean read GetOldUSUARIOIsNull; property ID_EMPRESA : Integer read GetID_EMPRESAValue write SetID_EMPRESAValue; + property ID_EMPRESAIsNull : Boolean read GetID_EMPRESAIsNull write SetID_EMPRESAIsNull; property OldID_EMPRESA : Integer read GetOldID_EMPRESAValue; + property OldID_EMPRESAIsNull : Boolean read GetOldID_EMPRESAIsNull; property REFERENCIA : String read GetREFERENCIAValue write SetREFERENCIAValue; + property REFERENCIAIsNull : Boolean read GetREFERENCIAIsNull write SetREFERENCIAIsNull; property OldREFERENCIA : String read GetOldREFERENCIAValue; - property ID_TIPO_IVA : Integer read GetID_TIPO_IVAValue write SetID_TIPO_IVAValue; - property OldID_TIPO_IVA : Integer read GetOldID_TIPO_IVAValue; - property REGIMEN_IVA : String read GetREGIMEN_IVAValue write SetREGIMEN_IVAValue; - property OldREGIMEN_IVA : String read GetOldREGIMEN_IVAValue; - property ID_FORMA_PAGO : Integer read GetID_FORMA_PAGOValue write SetID_FORMA_PAGOValue; - property OldID_FORMA_PAGO : Integer read GetOldID_FORMA_PAGOValue; - property TIENDA_WEB : Integer read GetTIENDA_WEBValue write SetTIENDA_WEBValue; - property OldTIENDA_WEB : Integer read GetOldTIENDA_WEBValue; - property RECARGO_EQUIVALENCIA : Integer read GetRECARGO_EQUIVALENCIAValue write SetRECARGO_EQUIVALENCIAValue; - property OldRECARGO_EQUIVALENCIA : Integer read GetOldRECARGO_EQUIVALENCIAValue; + property OldREFERENCIAIsNull : Boolean read GetOldREFERENCIAIsNull; property GRUPO_CLIENTE : String read GetGRUPO_CLIENTEValue write SetGRUPO_CLIENTEValue; + property GRUPO_CLIENTEIsNull : Boolean read GetGRUPO_CLIENTEIsNull write SetGRUPO_CLIENTEIsNull; property OldGRUPO_CLIENTE : String read GetOldGRUPO_CLIENTEValue; + property OldGRUPO_CLIENTEIsNull : Boolean read GetOldGRUPO_CLIENTEIsNull; property NOMBRE_COMERCIAL : String read GetNOMBRE_COMERCIALValue write SetNOMBRE_COMERCIALValue; + property NOMBRE_COMERCIALIsNull : Boolean read GetNOMBRE_COMERCIALIsNull write SetNOMBRE_COMERCIALIsNull; property OldNOMBRE_COMERCIAL : String read GetOldNOMBRE_COMERCIALValue; + property OldNOMBRE_COMERCIALIsNull : Boolean read GetOldNOMBRE_COMERCIALIsNull; property VENCIMIENTO_FACTURAS : Integer read GetVENCIMIENTO_FACTURASValue write SetVENCIMIENTO_FACTURASValue; + property VENCIMIENTO_FACTURASIsNull : Boolean read GetVENCIMIENTO_FACTURASIsNull write SetVENCIMIENTO_FACTURASIsNull; property OldVENCIMIENTO_FACTURAS : Integer read GetOldVENCIMIENTO_FACTURASValue; - property BLOQUEADO : Integer read GetBLOQUEADOValue write SetBLOQUEADOValue; - property OldBLOQUEADO : Integer read GetOldBLOQUEADOValue; + property OldVENCIMIENTO_FACTURASIsNull : Boolean read GetOldVENCIMIENTO_FACTURASIsNull; + property BLOQUEADO : SmallInt read GetBLOQUEADOValue write SetBLOQUEADOValue; + property BLOQUEADOIsNull : Boolean read GetBLOQUEADOIsNull write SetBLOQUEADOIsNull; + property OldBLOQUEADO : SmallInt read GetOldBLOQUEADOValue; + property OldBLOQUEADOIsNull : Boolean read GetOldBLOQUEADOIsNull; + property REGIMEN_IVA : String read GetREGIMEN_IVAValue write SetREGIMEN_IVAValue; + property REGIMEN_IVAIsNull : Boolean read GetREGIMEN_IVAIsNull write SetREGIMEN_IVAIsNull; + property OldREGIMEN_IVA : String read GetOldREGIMEN_IVAValue; + property OldREGIMEN_IVAIsNull : Boolean read GetOldREGIMEN_IVAIsNull; property MOTIVO_BLOQUEO : String read GetMOTIVO_BLOQUEOValue write SetMOTIVO_BLOQUEOValue; + property MOTIVO_BLOQUEOIsNull : Boolean read GetMOTIVO_BLOQUEOIsNull write SetMOTIVO_BLOQUEOIsNull; property OldMOTIVO_BLOQUEO : String read GetOldMOTIVO_BLOQUEOValue; + property OldMOTIVO_BLOQUEOIsNull : Boolean read GetOldMOTIVO_BLOQUEOIsNull; + property RECARGO_EQUIVALENCIA : Integer read GetRECARGO_EQUIVALENCIAValue write SetRECARGO_EQUIVALENCIAValue; + property RECARGO_EQUIVALENCIAIsNull : Boolean read GetRECARGO_EQUIVALENCIAIsNull write SetRECARGO_EQUIVALENCIAIsNull; + property OldRECARGO_EQUIVALENCIA : Integer read GetOldRECARGO_EQUIVALENCIAValue; + property OldRECARGO_EQUIVALENCIAIsNull : Boolean read GetOldRECARGO_EQUIVALENCIAIsNull; + property ID_TIPO_IVA : Integer read GetID_TIPO_IVAValue write SetID_TIPO_IVAValue; + property ID_TIPO_IVAIsNull : Boolean read GetID_TIPO_IVAIsNull write SetID_TIPO_IVAIsNull; + property OldID_TIPO_IVA : Integer read GetOldID_TIPO_IVAValue; + property OldID_TIPO_IVAIsNull : Boolean read GetOldID_TIPO_IVAIsNull; + property ID_FORMA_PAGO : Integer read GetID_FORMA_PAGOValue write SetID_FORMA_PAGOValue; + property ID_FORMA_PAGOIsNull : Boolean read GetID_FORMA_PAGOIsNull write SetID_FORMA_PAGOIsNull; + property OldID_FORMA_PAGO : Integer read GetOldID_FORMA_PAGOValue; + property OldID_FORMA_PAGOIsNull : Boolean read GetOldID_FORMA_PAGOIsNull; + property TIENDA_WEB : SmallInt read GetTIENDA_WEBValue write SetTIENDA_WEBValue; + property TIENDA_WEBIsNull : Boolean read GetTIENDA_WEBIsNull write SetTIENDA_WEBIsNull; + property OldTIENDA_WEB : SmallInt read GetOldTIENDA_WEBValue; + property OldTIENDA_WEBIsNull : Boolean read GetOldTIENDA_WEBIsNull; public constructor Create(aBusinessProcessor: TDABusinessProcessor); override; @@ -568,14 +906,14 @@ type { IProveedoresDelta } IProveedoresDelta = interface(IProveedores) - ['{168C19DE-0AD5-40CB-B737-628846E311FE}'] + ['{4A9BB1FB-DE7E-43C2-8F1D-4909191DCC53}'] { Property getters and setters } function GetOldIDValue : Integer; function GetOldID_CATEGORIAValue : Integer; function GetOldNIF_CIFValue : String; function GetOldNOMBREValue : String; - function GetOldCALLEValue : String; function GetOldPERSONA_CONTACTOValue : String; + function GetOldCALLEValue : String; function GetOldPOBLACIONValue : String; function GetOldPROVINCIAValue : String; function GetOldCODIGO_POSTALValue : String; @@ -588,27 +926,29 @@ type function GetOldEMAIL_2Value : String; function GetOldPAGINA_WEBValue : String; function GetOldNOTASValue : IROStrings; + function GetOldFECHA_ALTAValue : DateTime; + function GetOldFECHA_MODIFICACIONValue : DateTime; function GetOldUSUARIOValue : String; function GetOldID_EMPRESAValue : Integer; function GetOldREFERENCIAValue : String; - function GetOldID_TIPO_IVAValue : Integer; - function GetOldREGIMEN_IVAValue : String; - function GetOldID_FORMA_PAGOValue : Integer; - function GetOldTIENDA_WEBValue : Integer; function GetOldDESCUENTOValue : Float; function GetOldDESCRIPCION_PROVEEDORValue : String; function GetOldCODIGO_ASIGNADOValue : String; - function GetOldHOMOLOGADOValue : Integer; - function GetOldCERTIFICACIONValue : String; function GetOldGRUPO_PROVEEDORValue : String; + function GetOldREGIMEN_IVAValue : String; + function GetOldID_TIPO_IVAValue : Integer; + function GetOldID_FORMA_PAGOValue : Integer; + function GetOldTIENDA_WEBValue : SmallInt; + function GetOldHOMOLOGADOValue : SmallInt; + function GetOldCERTIFICACIONValue : String; { Properties } property OldID : Integer read GetOldIDValue; property OldID_CATEGORIA : Integer read GetOldID_CATEGORIAValue; property OldNIF_CIF : String read GetOldNIF_CIFValue; property OldNOMBRE : String read GetOldNOMBREValue; - property OldCALLE : String read GetOldCALLEValue; property OldPERSONA_CONTACTO : String read GetOldPERSONA_CONTACTOValue; + property OldCALLE : String read GetOldCALLEValue; property OldPOBLACION : String read GetOldPOBLACIONValue; property OldPROVINCIA : String read GetOldPROVINCIAValue; property OldCODIGO_POSTAL : String read GetOldCODIGO_POSTALValue; @@ -621,183 +961,361 @@ type property OldEMAIL_2 : String read GetOldEMAIL_2Value; property OldPAGINA_WEB : String read GetOldPAGINA_WEBValue; property OldNOTAS : IROStrings read GetOldNOTASValue; + property OldFECHA_ALTA : DateTime read GetOldFECHA_ALTAValue; + property OldFECHA_MODIFICACION : DateTime read GetOldFECHA_MODIFICACIONValue; property OldUSUARIO : String read GetOldUSUARIOValue; property OldID_EMPRESA : Integer read GetOldID_EMPRESAValue; property OldREFERENCIA : String read GetOldREFERENCIAValue; - property OldID_TIPO_IVA : Integer read GetOldID_TIPO_IVAValue; - property OldREGIMEN_IVA : String read GetOldREGIMEN_IVAValue; - property OldID_FORMA_PAGO : Integer read GetOldID_FORMA_PAGOValue; - property OldTIENDA_WEB : Integer read GetOldTIENDA_WEBValue; property OldDESCUENTO : Float read GetOldDESCUENTOValue; property OldDESCRIPCION_PROVEEDOR : String read GetOldDESCRIPCION_PROVEEDORValue; property OldCODIGO_ASIGNADO : String read GetOldCODIGO_ASIGNADOValue; - property OldHOMOLOGADO : Integer read GetOldHOMOLOGADOValue; - property OldCERTIFICACION : String read GetOldCERTIFICACIONValue; property OldGRUPO_PROVEEDOR : String read GetOldGRUPO_PROVEEDORValue; + property OldREGIMEN_IVA : String read GetOldREGIMEN_IVAValue; + property OldID_TIPO_IVA : Integer read GetOldID_TIPO_IVAValue; + property OldID_FORMA_PAGO : Integer read GetOldID_FORMA_PAGOValue; + property OldTIENDA_WEB : SmallInt read GetOldTIENDA_WEBValue; + property OldHOMOLOGADO : SmallInt read GetOldHOMOLOGADOValue; + property OldCERTIFICACION : String read GetOldCERTIFICACIONValue; end; { TProveedoresBusinessProcessorRules } TProveedoresBusinessProcessorRules = class(TDABusinessProcessorRules, IProveedores, IProveedoresDelta) private + f_NOTAS: IROStrings; + procedure NOTAS_OnChange(Sender: TObject); protected { Property getters and setters } function GetIDValue: Integer; virtual; + function GetIDIsNull: Boolean; virtual; function GetOldIDValue: Integer; virtual; + function GetOldIDIsNull: Boolean; virtual; procedure SetIDValue(const aValue: Integer); virtual; + procedure SetIDIsNull(const aValue: Boolean); virtual; function GetID_CATEGORIAValue: Integer; virtual; + function GetID_CATEGORIAIsNull: Boolean; virtual; function GetOldID_CATEGORIAValue: Integer; virtual; + function GetOldID_CATEGORIAIsNull: Boolean; virtual; procedure SetID_CATEGORIAValue(const aValue: Integer); virtual; + procedure SetID_CATEGORIAIsNull(const aValue: Boolean); virtual; function GetNIF_CIFValue: String; virtual; + function GetNIF_CIFIsNull: Boolean; virtual; function GetOldNIF_CIFValue: String; virtual; + function GetOldNIF_CIFIsNull: Boolean; virtual; procedure SetNIF_CIFValue(const aValue: String); virtual; + procedure SetNIF_CIFIsNull(const aValue: Boolean); virtual; function GetNOMBREValue: String; virtual; + function GetNOMBREIsNull: Boolean; virtual; function GetOldNOMBREValue: String; virtual; + function GetOldNOMBREIsNull: Boolean; virtual; procedure SetNOMBREValue(const aValue: String); virtual; - function GetCALLEValue: String; virtual; - function GetOldCALLEValue: String; virtual; - procedure SetCALLEValue(const aValue: String); virtual; + procedure SetNOMBREIsNull(const aValue: Boolean); virtual; function GetPERSONA_CONTACTOValue: String; virtual; + function GetPERSONA_CONTACTOIsNull: Boolean; virtual; function GetOldPERSONA_CONTACTOValue: String; virtual; + function GetOldPERSONA_CONTACTOIsNull: Boolean; virtual; procedure SetPERSONA_CONTACTOValue(const aValue: String); virtual; + procedure SetPERSONA_CONTACTOIsNull(const aValue: Boolean); virtual; + function GetCALLEValue: String; virtual; + function GetCALLEIsNull: Boolean; virtual; + function GetOldCALLEValue: String; virtual; + function GetOldCALLEIsNull: Boolean; virtual; + procedure SetCALLEValue(const aValue: String); virtual; + procedure SetCALLEIsNull(const aValue: Boolean); virtual; function GetPOBLACIONValue: String; virtual; + function GetPOBLACIONIsNull: Boolean; virtual; function GetOldPOBLACIONValue: String; virtual; + function GetOldPOBLACIONIsNull: Boolean; virtual; procedure SetPOBLACIONValue(const aValue: String); virtual; + procedure SetPOBLACIONIsNull(const aValue: Boolean); virtual; function GetPROVINCIAValue: String; virtual; + function GetPROVINCIAIsNull: Boolean; virtual; function GetOldPROVINCIAValue: String; virtual; + function GetOldPROVINCIAIsNull: Boolean; virtual; procedure SetPROVINCIAValue(const aValue: String); virtual; + procedure SetPROVINCIAIsNull(const aValue: Boolean); virtual; function GetCODIGO_POSTALValue: String; virtual; + function GetCODIGO_POSTALIsNull: Boolean; virtual; function GetOldCODIGO_POSTALValue: String; virtual; + function GetOldCODIGO_POSTALIsNull: Boolean; virtual; procedure SetCODIGO_POSTALValue(const aValue: String); virtual; + procedure SetCODIGO_POSTALIsNull(const aValue: Boolean); virtual; function GetTELEFONO_1Value: String; virtual; + function GetTELEFONO_1IsNull: Boolean; virtual; function GetOldTELEFONO_1Value: String; virtual; + function GetOldTELEFONO_1IsNull: Boolean; virtual; procedure SetTELEFONO_1Value(const aValue: String); virtual; + procedure SetTELEFONO_1IsNull(const aValue: Boolean); virtual; function GetTELEFONO_2Value: String; virtual; + function GetTELEFONO_2IsNull: Boolean; virtual; function GetOldTELEFONO_2Value: String; virtual; + function GetOldTELEFONO_2IsNull: Boolean; virtual; procedure SetTELEFONO_2Value(const aValue: String); virtual; + procedure SetTELEFONO_2IsNull(const aValue: Boolean); virtual; function GetMOVIL_1Value: String; virtual; + function GetMOVIL_1IsNull: Boolean; virtual; function GetOldMOVIL_1Value: String; virtual; + function GetOldMOVIL_1IsNull: Boolean; virtual; procedure SetMOVIL_1Value(const aValue: String); virtual; + procedure SetMOVIL_1IsNull(const aValue: Boolean); virtual; function GetMOVIL_2Value: String; virtual; + function GetMOVIL_2IsNull: Boolean; virtual; function GetOldMOVIL_2Value: String; virtual; + function GetOldMOVIL_2IsNull: Boolean; virtual; procedure SetMOVIL_2Value(const aValue: String); virtual; + procedure SetMOVIL_2IsNull(const aValue: Boolean); virtual; function GetFAXValue: String; virtual; + function GetFAXIsNull: Boolean; virtual; function GetOldFAXValue: String; virtual; + function GetOldFAXIsNull: Boolean; virtual; procedure SetFAXValue(const aValue: String); virtual; + procedure SetFAXIsNull(const aValue: Boolean); virtual; function GetEMAIL_1Value: String; virtual; + function GetEMAIL_1IsNull: Boolean; virtual; function GetOldEMAIL_1Value: String; virtual; + function GetOldEMAIL_1IsNull: Boolean; virtual; procedure SetEMAIL_1Value(const aValue: String); virtual; + procedure SetEMAIL_1IsNull(const aValue: Boolean); virtual; function GetEMAIL_2Value: String; virtual; + function GetEMAIL_2IsNull: Boolean; virtual; function GetOldEMAIL_2Value: String; virtual; + function GetOldEMAIL_2IsNull: Boolean; virtual; procedure SetEMAIL_2Value(const aValue: String); virtual; + procedure SetEMAIL_2IsNull(const aValue: Boolean); virtual; function GetPAGINA_WEBValue: String; virtual; + function GetPAGINA_WEBIsNull: Boolean; virtual; function GetOldPAGINA_WEBValue: String; virtual; + function GetOldPAGINA_WEBIsNull: Boolean; virtual; procedure SetPAGINA_WEBValue(const aValue: String); virtual; + procedure SetPAGINA_WEBIsNull(const aValue: Boolean); virtual; function GetNOTASValue: IROStrings; virtual; + function GetNOTASIsNull: Boolean; virtual; function GetOldNOTASValue: IROStrings; virtual; - procedure SetNOTASValue(const aValue: IROStrings); virtual; + function GetOldNOTASIsNull: Boolean; virtual; + procedure SetNOTASIsNull(const aValue: Boolean); virtual; + function GetFECHA_ALTAValue: DateTime; virtual; + function GetFECHA_ALTAIsNull: Boolean; virtual; + function GetOldFECHA_ALTAValue: DateTime; virtual; + function GetOldFECHA_ALTAIsNull: Boolean; virtual; + procedure SetFECHA_ALTAValue(const aValue: DateTime); virtual; + procedure SetFECHA_ALTAIsNull(const aValue: Boolean); virtual; + function GetFECHA_MODIFICACIONValue: DateTime; virtual; + function GetFECHA_MODIFICACIONIsNull: Boolean; virtual; + function GetOldFECHA_MODIFICACIONValue: DateTime; virtual; + function GetOldFECHA_MODIFICACIONIsNull: Boolean; virtual; + procedure SetFECHA_MODIFICACIONValue(const aValue: DateTime); virtual; + procedure SetFECHA_MODIFICACIONIsNull(const aValue: Boolean); virtual; function GetUSUARIOValue: String; virtual; + function GetUSUARIOIsNull: Boolean; virtual; function GetOldUSUARIOValue: String; virtual; + function GetOldUSUARIOIsNull: Boolean; virtual; procedure SetUSUARIOValue(const aValue: String); virtual; + procedure SetUSUARIOIsNull(const aValue: Boolean); virtual; function GetID_EMPRESAValue: Integer; virtual; + function GetID_EMPRESAIsNull: Boolean; virtual; function GetOldID_EMPRESAValue: Integer; virtual; + function GetOldID_EMPRESAIsNull: Boolean; virtual; procedure SetID_EMPRESAValue(const aValue: Integer); virtual; + procedure SetID_EMPRESAIsNull(const aValue: Boolean); virtual; function GetREFERENCIAValue: String; virtual; + function GetREFERENCIAIsNull: Boolean; virtual; function GetOldREFERENCIAValue: String; virtual; + function GetOldREFERENCIAIsNull: Boolean; virtual; procedure SetREFERENCIAValue(const aValue: String); virtual; - function GetID_TIPO_IVAValue: Integer; virtual; - function GetOldID_TIPO_IVAValue: Integer; virtual; - procedure SetID_TIPO_IVAValue(const aValue: Integer); virtual; - function GetREGIMEN_IVAValue: String; virtual; - function GetOldREGIMEN_IVAValue: String; virtual; - procedure SetREGIMEN_IVAValue(const aValue: String); virtual; - function GetID_FORMA_PAGOValue: Integer; virtual; - function GetOldID_FORMA_PAGOValue: Integer; virtual; - procedure SetID_FORMA_PAGOValue(const aValue: Integer); virtual; - function GetTIENDA_WEBValue: Integer; virtual; - function GetOldTIENDA_WEBValue: Integer; virtual; - procedure SetTIENDA_WEBValue(const aValue: Integer); virtual; + procedure SetREFERENCIAIsNull(const aValue: Boolean); virtual; function GetDESCUENTOValue: Float; virtual; + function GetDESCUENTOIsNull: Boolean; virtual; function GetOldDESCUENTOValue: Float; virtual; + function GetOldDESCUENTOIsNull: Boolean; virtual; procedure SetDESCUENTOValue(const aValue: Float); virtual; + procedure SetDESCUENTOIsNull(const aValue: Boolean); virtual; function GetDESCRIPCION_PROVEEDORValue: String; virtual; + function GetDESCRIPCION_PROVEEDORIsNull: Boolean; virtual; function GetOldDESCRIPCION_PROVEEDORValue: String; virtual; + function GetOldDESCRIPCION_PROVEEDORIsNull: Boolean; virtual; procedure SetDESCRIPCION_PROVEEDORValue(const aValue: String); virtual; + procedure SetDESCRIPCION_PROVEEDORIsNull(const aValue: Boolean); virtual; function GetCODIGO_ASIGNADOValue: String; virtual; + function GetCODIGO_ASIGNADOIsNull: Boolean; virtual; function GetOldCODIGO_ASIGNADOValue: String; virtual; + function GetOldCODIGO_ASIGNADOIsNull: Boolean; virtual; procedure SetCODIGO_ASIGNADOValue(const aValue: String); virtual; - function GetHOMOLOGADOValue: Integer; virtual; - function GetOldHOMOLOGADOValue: Integer; virtual; - procedure SetHOMOLOGADOValue(const aValue: Integer); virtual; - function GetCERTIFICACIONValue: String; virtual; - function GetOldCERTIFICACIONValue: String; virtual; - procedure SetCERTIFICACIONValue(const aValue: String); virtual; + procedure SetCODIGO_ASIGNADOIsNull(const aValue: Boolean); virtual; function GetGRUPO_PROVEEDORValue: String; virtual; + function GetGRUPO_PROVEEDORIsNull: Boolean; virtual; function GetOldGRUPO_PROVEEDORValue: String; virtual; + function GetOldGRUPO_PROVEEDORIsNull: Boolean; virtual; procedure SetGRUPO_PROVEEDORValue(const aValue: String); virtual; + procedure SetGRUPO_PROVEEDORIsNull(const aValue: Boolean); virtual; + function GetREGIMEN_IVAValue: String; virtual; + function GetREGIMEN_IVAIsNull: Boolean; virtual; + function GetOldREGIMEN_IVAValue: String; virtual; + function GetOldREGIMEN_IVAIsNull: Boolean; virtual; + procedure SetREGIMEN_IVAValue(const aValue: String); virtual; + procedure SetREGIMEN_IVAIsNull(const aValue: Boolean); virtual; + function GetID_TIPO_IVAValue: Integer; virtual; + function GetID_TIPO_IVAIsNull: Boolean; virtual; + function GetOldID_TIPO_IVAValue: Integer; virtual; + function GetOldID_TIPO_IVAIsNull: Boolean; virtual; + procedure SetID_TIPO_IVAValue(const aValue: Integer); virtual; + procedure SetID_TIPO_IVAIsNull(const aValue: Boolean); virtual; + function GetID_FORMA_PAGOValue: Integer; virtual; + function GetID_FORMA_PAGOIsNull: Boolean; virtual; + function GetOldID_FORMA_PAGOValue: Integer; virtual; + function GetOldID_FORMA_PAGOIsNull: Boolean; virtual; + procedure SetID_FORMA_PAGOValue(const aValue: Integer); virtual; + procedure SetID_FORMA_PAGOIsNull(const aValue: Boolean); virtual; + function GetTIENDA_WEBValue: SmallInt; virtual; + function GetTIENDA_WEBIsNull: Boolean; virtual; + function GetOldTIENDA_WEBValue: SmallInt; virtual; + function GetOldTIENDA_WEBIsNull: Boolean; virtual; + procedure SetTIENDA_WEBValue(const aValue: SmallInt); virtual; + procedure SetTIENDA_WEBIsNull(const aValue: Boolean); virtual; + function GetHOMOLOGADOValue: SmallInt; virtual; + function GetHOMOLOGADOIsNull: Boolean; virtual; + function GetOldHOMOLOGADOValue: SmallInt; virtual; + function GetOldHOMOLOGADOIsNull: Boolean; virtual; + procedure SetHOMOLOGADOValue(const aValue: SmallInt); virtual; + procedure SetHOMOLOGADOIsNull(const aValue: Boolean); virtual; + function GetCERTIFICACIONValue: String; virtual; + function GetCERTIFICACIONIsNull: Boolean; virtual; + function GetOldCERTIFICACIONValue: String; virtual; + function GetOldCERTIFICACIONIsNull: Boolean; virtual; + procedure SetCERTIFICACIONValue(const aValue: String); virtual; + procedure SetCERTIFICACIONIsNull(const aValue: Boolean); virtual; { Properties } property ID : Integer read GetIDValue write SetIDValue; + property IDIsNull : Boolean read GetIDIsNull write SetIDIsNull; property OldID : Integer read GetOldIDValue; + property OldIDIsNull : Boolean read GetOldIDIsNull; property ID_CATEGORIA : Integer read GetID_CATEGORIAValue write SetID_CATEGORIAValue; + property ID_CATEGORIAIsNull : Boolean read GetID_CATEGORIAIsNull write SetID_CATEGORIAIsNull; property OldID_CATEGORIA : Integer read GetOldID_CATEGORIAValue; + property OldID_CATEGORIAIsNull : Boolean read GetOldID_CATEGORIAIsNull; property NIF_CIF : String read GetNIF_CIFValue write SetNIF_CIFValue; + property NIF_CIFIsNull : Boolean read GetNIF_CIFIsNull write SetNIF_CIFIsNull; property OldNIF_CIF : String read GetOldNIF_CIFValue; + property OldNIF_CIFIsNull : Boolean read GetOldNIF_CIFIsNull; property NOMBRE : String read GetNOMBREValue write SetNOMBREValue; + property NOMBREIsNull : Boolean read GetNOMBREIsNull write SetNOMBREIsNull; property OldNOMBRE : String read GetOldNOMBREValue; - property CALLE : String read GetCALLEValue write SetCALLEValue; - property OldCALLE : String read GetOldCALLEValue; + property OldNOMBREIsNull : Boolean read GetOldNOMBREIsNull; property PERSONA_CONTACTO : String read GetPERSONA_CONTACTOValue write SetPERSONA_CONTACTOValue; + property PERSONA_CONTACTOIsNull : Boolean read GetPERSONA_CONTACTOIsNull write SetPERSONA_CONTACTOIsNull; property OldPERSONA_CONTACTO : String read GetOldPERSONA_CONTACTOValue; + property OldPERSONA_CONTACTOIsNull : Boolean read GetOldPERSONA_CONTACTOIsNull; + property CALLE : String read GetCALLEValue write SetCALLEValue; + property CALLEIsNull : Boolean read GetCALLEIsNull write SetCALLEIsNull; + property OldCALLE : String read GetOldCALLEValue; + property OldCALLEIsNull : Boolean read GetOldCALLEIsNull; property POBLACION : String read GetPOBLACIONValue write SetPOBLACIONValue; + property POBLACIONIsNull : Boolean read GetPOBLACIONIsNull write SetPOBLACIONIsNull; property OldPOBLACION : String read GetOldPOBLACIONValue; + property OldPOBLACIONIsNull : Boolean read GetOldPOBLACIONIsNull; property PROVINCIA : String read GetPROVINCIAValue write SetPROVINCIAValue; + property PROVINCIAIsNull : Boolean read GetPROVINCIAIsNull write SetPROVINCIAIsNull; property OldPROVINCIA : String read GetOldPROVINCIAValue; + property OldPROVINCIAIsNull : Boolean read GetOldPROVINCIAIsNull; property CODIGO_POSTAL : String read GetCODIGO_POSTALValue write SetCODIGO_POSTALValue; + property CODIGO_POSTALIsNull : Boolean read GetCODIGO_POSTALIsNull write SetCODIGO_POSTALIsNull; property OldCODIGO_POSTAL : String read GetOldCODIGO_POSTALValue; + property OldCODIGO_POSTALIsNull : Boolean read GetOldCODIGO_POSTALIsNull; property TELEFONO_1 : String read GetTELEFONO_1Value write SetTELEFONO_1Value; + property TELEFONO_1IsNull : Boolean read GetTELEFONO_1IsNull write SetTELEFONO_1IsNull; property OldTELEFONO_1 : String read GetOldTELEFONO_1Value; + property OldTELEFONO_1IsNull : Boolean read GetOldTELEFONO_1IsNull; property TELEFONO_2 : String read GetTELEFONO_2Value write SetTELEFONO_2Value; + property TELEFONO_2IsNull : Boolean read GetTELEFONO_2IsNull write SetTELEFONO_2IsNull; property OldTELEFONO_2 : String read GetOldTELEFONO_2Value; + property OldTELEFONO_2IsNull : Boolean read GetOldTELEFONO_2IsNull; property MOVIL_1 : String read GetMOVIL_1Value write SetMOVIL_1Value; + property MOVIL_1IsNull : Boolean read GetMOVIL_1IsNull write SetMOVIL_1IsNull; property OldMOVIL_1 : String read GetOldMOVIL_1Value; + property OldMOVIL_1IsNull : Boolean read GetOldMOVIL_1IsNull; property MOVIL_2 : String read GetMOVIL_2Value write SetMOVIL_2Value; + property MOVIL_2IsNull : Boolean read GetMOVIL_2IsNull write SetMOVIL_2IsNull; property OldMOVIL_2 : String read GetOldMOVIL_2Value; + property OldMOVIL_2IsNull : Boolean read GetOldMOVIL_2IsNull; property FAX : String read GetFAXValue write SetFAXValue; + property FAXIsNull : Boolean read GetFAXIsNull write SetFAXIsNull; property OldFAX : String read GetOldFAXValue; + property OldFAXIsNull : Boolean read GetOldFAXIsNull; property EMAIL_1 : String read GetEMAIL_1Value write SetEMAIL_1Value; + property EMAIL_1IsNull : Boolean read GetEMAIL_1IsNull write SetEMAIL_1IsNull; property OldEMAIL_1 : String read GetOldEMAIL_1Value; + property OldEMAIL_1IsNull : Boolean read GetOldEMAIL_1IsNull; property EMAIL_2 : String read GetEMAIL_2Value write SetEMAIL_2Value; + property EMAIL_2IsNull : Boolean read GetEMAIL_2IsNull write SetEMAIL_2IsNull; property OldEMAIL_2 : String read GetOldEMAIL_2Value; + property OldEMAIL_2IsNull : Boolean read GetOldEMAIL_2IsNull; property PAGINA_WEB : String read GetPAGINA_WEBValue write SetPAGINA_WEBValue; + property PAGINA_WEBIsNull : Boolean read GetPAGINA_WEBIsNull write SetPAGINA_WEBIsNull; property OldPAGINA_WEB : String read GetOldPAGINA_WEBValue; - property NOTAS : IROStrings read GetNOTASValue write SetNOTASValue; + property OldPAGINA_WEBIsNull : Boolean read GetOldPAGINA_WEBIsNull; + property NOTAS : IROStrings read GetNOTASValue; + property NOTASIsNull : Boolean read GetNOTASIsNull write SetNOTASIsNull; property OldNOTAS : IROStrings read GetOldNOTASValue; + property OldNOTASIsNull : Boolean read GetOldNOTASIsNull; + property FECHA_ALTA : DateTime read GetFECHA_ALTAValue write SetFECHA_ALTAValue; + property FECHA_ALTAIsNull : Boolean read GetFECHA_ALTAIsNull write SetFECHA_ALTAIsNull; + property OldFECHA_ALTA : DateTime read GetOldFECHA_ALTAValue; + property OldFECHA_ALTAIsNull : Boolean read GetOldFECHA_ALTAIsNull; + property FECHA_MODIFICACION : DateTime read GetFECHA_MODIFICACIONValue write SetFECHA_MODIFICACIONValue; + property FECHA_MODIFICACIONIsNull : Boolean read GetFECHA_MODIFICACIONIsNull write SetFECHA_MODIFICACIONIsNull; + property OldFECHA_MODIFICACION : DateTime read GetOldFECHA_MODIFICACIONValue; + property OldFECHA_MODIFICACIONIsNull : Boolean read GetOldFECHA_MODIFICACIONIsNull; property USUARIO : String read GetUSUARIOValue write SetUSUARIOValue; + property USUARIOIsNull : Boolean read GetUSUARIOIsNull write SetUSUARIOIsNull; property OldUSUARIO : String read GetOldUSUARIOValue; + property OldUSUARIOIsNull : Boolean read GetOldUSUARIOIsNull; property ID_EMPRESA : Integer read GetID_EMPRESAValue write SetID_EMPRESAValue; + property ID_EMPRESAIsNull : Boolean read GetID_EMPRESAIsNull write SetID_EMPRESAIsNull; property OldID_EMPRESA : Integer read GetOldID_EMPRESAValue; + property OldID_EMPRESAIsNull : Boolean read GetOldID_EMPRESAIsNull; property REFERENCIA : String read GetREFERENCIAValue write SetREFERENCIAValue; + property REFERENCIAIsNull : Boolean read GetREFERENCIAIsNull write SetREFERENCIAIsNull; property OldREFERENCIA : String read GetOldREFERENCIAValue; - property ID_TIPO_IVA : Integer read GetID_TIPO_IVAValue write SetID_TIPO_IVAValue; - property OldID_TIPO_IVA : Integer read GetOldID_TIPO_IVAValue; - property REGIMEN_IVA : String read GetREGIMEN_IVAValue write SetREGIMEN_IVAValue; - property OldREGIMEN_IVA : String read GetOldREGIMEN_IVAValue; - property ID_FORMA_PAGO : Integer read GetID_FORMA_PAGOValue write SetID_FORMA_PAGOValue; - property OldID_FORMA_PAGO : Integer read GetOldID_FORMA_PAGOValue; - property TIENDA_WEB : Integer read GetTIENDA_WEBValue write SetTIENDA_WEBValue; - property OldTIENDA_WEB : Integer read GetOldTIENDA_WEBValue; + property OldREFERENCIAIsNull : Boolean read GetOldREFERENCIAIsNull; property DESCUENTO : Float read GetDESCUENTOValue write SetDESCUENTOValue; + property DESCUENTOIsNull : Boolean read GetDESCUENTOIsNull write SetDESCUENTOIsNull; property OldDESCUENTO : Float read GetOldDESCUENTOValue; + property OldDESCUENTOIsNull : Boolean read GetOldDESCUENTOIsNull; property DESCRIPCION_PROVEEDOR : String read GetDESCRIPCION_PROVEEDORValue write SetDESCRIPCION_PROVEEDORValue; + property DESCRIPCION_PROVEEDORIsNull : Boolean read GetDESCRIPCION_PROVEEDORIsNull write SetDESCRIPCION_PROVEEDORIsNull; property OldDESCRIPCION_PROVEEDOR : String read GetOldDESCRIPCION_PROVEEDORValue; + property OldDESCRIPCION_PROVEEDORIsNull : Boolean read GetOldDESCRIPCION_PROVEEDORIsNull; property CODIGO_ASIGNADO : String read GetCODIGO_ASIGNADOValue write SetCODIGO_ASIGNADOValue; + property CODIGO_ASIGNADOIsNull : Boolean read GetCODIGO_ASIGNADOIsNull write SetCODIGO_ASIGNADOIsNull; property OldCODIGO_ASIGNADO : String read GetOldCODIGO_ASIGNADOValue; - property HOMOLOGADO : Integer read GetHOMOLOGADOValue write SetHOMOLOGADOValue; - property OldHOMOLOGADO : Integer read GetOldHOMOLOGADOValue; - property CERTIFICACION : String read GetCERTIFICACIONValue write SetCERTIFICACIONValue; - property OldCERTIFICACION : String read GetOldCERTIFICACIONValue; + property OldCODIGO_ASIGNADOIsNull : Boolean read GetOldCODIGO_ASIGNADOIsNull; property GRUPO_PROVEEDOR : String read GetGRUPO_PROVEEDORValue write SetGRUPO_PROVEEDORValue; + property GRUPO_PROVEEDORIsNull : Boolean read GetGRUPO_PROVEEDORIsNull write SetGRUPO_PROVEEDORIsNull; property OldGRUPO_PROVEEDOR : String read GetOldGRUPO_PROVEEDORValue; + property OldGRUPO_PROVEEDORIsNull : Boolean read GetOldGRUPO_PROVEEDORIsNull; + property REGIMEN_IVA : String read GetREGIMEN_IVAValue write SetREGIMEN_IVAValue; + property REGIMEN_IVAIsNull : Boolean read GetREGIMEN_IVAIsNull write SetREGIMEN_IVAIsNull; + property OldREGIMEN_IVA : String read GetOldREGIMEN_IVAValue; + property OldREGIMEN_IVAIsNull : Boolean read GetOldREGIMEN_IVAIsNull; + property ID_TIPO_IVA : Integer read GetID_TIPO_IVAValue write SetID_TIPO_IVAValue; + property ID_TIPO_IVAIsNull : Boolean read GetID_TIPO_IVAIsNull write SetID_TIPO_IVAIsNull; + property OldID_TIPO_IVA : Integer read GetOldID_TIPO_IVAValue; + property OldID_TIPO_IVAIsNull : Boolean read GetOldID_TIPO_IVAIsNull; + property ID_FORMA_PAGO : Integer read GetID_FORMA_PAGOValue write SetID_FORMA_PAGOValue; + property ID_FORMA_PAGOIsNull : Boolean read GetID_FORMA_PAGOIsNull write SetID_FORMA_PAGOIsNull; + property OldID_FORMA_PAGO : Integer read GetOldID_FORMA_PAGOValue; + property OldID_FORMA_PAGOIsNull : Boolean read GetOldID_FORMA_PAGOIsNull; + property TIENDA_WEB : SmallInt read GetTIENDA_WEBValue write SetTIENDA_WEBValue; + property TIENDA_WEBIsNull : Boolean read GetTIENDA_WEBIsNull write SetTIENDA_WEBIsNull; + property OldTIENDA_WEB : SmallInt read GetOldTIENDA_WEBValue; + property OldTIENDA_WEBIsNull : Boolean read GetOldTIENDA_WEBIsNull; + property HOMOLOGADO : SmallInt read GetHOMOLOGADOValue write SetHOMOLOGADOValue; + property HOMOLOGADOIsNull : Boolean read GetHOMOLOGADOIsNull write SetHOMOLOGADOIsNull; + property OldHOMOLOGADO : SmallInt read GetOldHOMOLOGADOValue; + property OldHOMOLOGADOIsNull : Boolean read GetOldHOMOLOGADOIsNull; + property CERTIFICACION : String read GetCERTIFICACIONValue write SetCERTIFICACIONValue; + property CERTIFICACIONIsNull : Boolean read GetCERTIFICACIONIsNull write SetCERTIFICACIONIsNull; + property OldCERTIFICACION : String read GetOldCERTIFICACIONValue; + property OldCERTIFICACIONIsNull : Boolean read GetOldCERTIFICACIONIsNull; public constructor Create(aBusinessProcessor: TDABusinessProcessor); override; @@ -807,14 +1325,14 @@ type { IEmpleadosDelta } IEmpleadosDelta = interface(IEmpleados) - ['{6544E069-D22D-49D4-AAFE-47DD92FA7744}'] + ['{7CEE2A53-5906-42F1-BFDA-753F7BC3769A}'] { Property getters and setters } function GetOldIDValue : Integer; function GetOldID_CATEGORIAValue : Integer; function GetOldNIF_CIFValue : String; function GetOldNOMBREValue : String; - function GetOldCALLEValue : String; function GetOldPERSONA_CONTACTOValue : String; + function GetOldCALLEValue : String; function GetOldPOBLACIONValue : String; function GetOldPROVINCIAValue : String; function GetOldCODIGO_POSTALValue : String; @@ -827,11 +1345,13 @@ type function GetOldEMAIL_2Value : String; function GetOldPAGINA_WEBValue : String; function GetOldNOTASValue : IROStrings; + function GetOldFECHA_ALTAValue : DateTime; + function GetOldFECHA_MODIFICACIONValue : DateTime; function GetOldUSUARIOValue : String; function GetOldID_EMPRESAValue : Integer; function GetOldREFERENCIAValue : String; - function GetOldCATEGORIAValue : String; function GetOldFECHA_NACIMIENTOValue : DateTime; + function GetOldCATEGORIAValue : String; function GetOldFECHA_ALTA_EMPRESAValue : DateTime; function GetOldFORMACION_BASEValue : IROStrings; function GetOldFORMACION_COMPLEValue : IROStrings; @@ -843,8 +1363,8 @@ type property OldID_CATEGORIA : Integer read GetOldID_CATEGORIAValue; property OldNIF_CIF : String read GetOldNIF_CIFValue; property OldNOMBRE : String read GetOldNOMBREValue; - property OldCALLE : String read GetOldCALLEValue; property OldPERSONA_CONTACTO : String read GetOldPERSONA_CONTACTOValue; + property OldCALLE : String read GetOldCALLEValue; property OldPOBLACION : String read GetOldPOBLACIONValue; property OldPROVINCIA : String read GetOldPROVINCIAValue; property OldCODIGO_POSTAL : String read GetOldCODIGO_POSTALValue; @@ -857,11 +1377,13 @@ type property OldEMAIL_2 : String read GetOldEMAIL_2Value; property OldPAGINA_WEB : String read GetOldPAGINA_WEBValue; property OldNOTAS : IROStrings read GetOldNOTASValue; + property OldFECHA_ALTA : DateTime read GetOldFECHA_ALTAValue; + property OldFECHA_MODIFICACION : DateTime read GetOldFECHA_MODIFICACIONValue; property OldUSUARIO : String read GetOldUSUARIOValue; property OldID_EMPRESA : Integer read GetOldID_EMPRESAValue; property OldREFERENCIA : String read GetOldREFERENCIAValue; - property OldCATEGORIA : String read GetOldCATEGORIAValue; property OldFECHA_NACIMIENTO : DateTime read GetOldFECHA_NACIMIENTOValue; + property OldCATEGORIA : String read GetOldCATEGORIAValue; property OldFECHA_ALTA_EMPRESA : DateTime read GetOldFECHA_ALTA_EMPRESAValue; property OldFORMACION_BASE : IROStrings read GetOldFORMACION_BASEValue; property OldFORMACION_COMPLE : IROStrings read GetOldFORMACION_COMPLEValue; @@ -872,150 +1394,315 @@ type { TEmpleadosBusinessProcessorRules } TEmpleadosBusinessProcessorRules = class(TDABusinessProcessorRules, IEmpleados, IEmpleadosDelta) private + f_NOTAS: IROStrings; + f_FORMACION_BASE: IROStrings; + f_FORMACION_COMPLE: IROStrings; + f_FORMACION_RECIBIDA: IROStrings; + f_EXPERIENCIA: IROStrings; + procedure NOTAS_OnChange(Sender: TObject); + procedure FORMACION_BASE_OnChange(Sender: TObject); + procedure FORMACION_COMPLE_OnChange(Sender: TObject); + procedure FORMACION_RECIBIDA_OnChange(Sender: TObject); + procedure EXPERIENCIA_OnChange(Sender: TObject); protected { Property getters and setters } function GetIDValue: Integer; virtual; + function GetIDIsNull: Boolean; virtual; function GetOldIDValue: Integer; virtual; + function GetOldIDIsNull: Boolean; virtual; procedure SetIDValue(const aValue: Integer); virtual; + procedure SetIDIsNull(const aValue: Boolean); virtual; function GetID_CATEGORIAValue: Integer; virtual; + function GetID_CATEGORIAIsNull: Boolean; virtual; function GetOldID_CATEGORIAValue: Integer; virtual; + function GetOldID_CATEGORIAIsNull: Boolean; virtual; procedure SetID_CATEGORIAValue(const aValue: Integer); virtual; + procedure SetID_CATEGORIAIsNull(const aValue: Boolean); virtual; function GetNIF_CIFValue: String; virtual; + function GetNIF_CIFIsNull: Boolean; virtual; function GetOldNIF_CIFValue: String; virtual; + function GetOldNIF_CIFIsNull: Boolean; virtual; procedure SetNIF_CIFValue(const aValue: String); virtual; + procedure SetNIF_CIFIsNull(const aValue: Boolean); virtual; function GetNOMBREValue: String; virtual; + function GetNOMBREIsNull: Boolean; virtual; function GetOldNOMBREValue: String; virtual; + function GetOldNOMBREIsNull: Boolean; virtual; procedure SetNOMBREValue(const aValue: String); virtual; - function GetCALLEValue: String; virtual; - function GetOldCALLEValue: String; virtual; - procedure SetCALLEValue(const aValue: String); virtual; + procedure SetNOMBREIsNull(const aValue: Boolean); virtual; function GetPERSONA_CONTACTOValue: String; virtual; + function GetPERSONA_CONTACTOIsNull: Boolean; virtual; function GetOldPERSONA_CONTACTOValue: String; virtual; + function GetOldPERSONA_CONTACTOIsNull: Boolean; virtual; procedure SetPERSONA_CONTACTOValue(const aValue: String); virtual; + procedure SetPERSONA_CONTACTOIsNull(const aValue: Boolean); virtual; + function GetCALLEValue: String; virtual; + function GetCALLEIsNull: Boolean; virtual; + function GetOldCALLEValue: String; virtual; + function GetOldCALLEIsNull: Boolean; virtual; + procedure SetCALLEValue(const aValue: String); virtual; + procedure SetCALLEIsNull(const aValue: Boolean); virtual; function GetPOBLACIONValue: String; virtual; + function GetPOBLACIONIsNull: Boolean; virtual; function GetOldPOBLACIONValue: String; virtual; + function GetOldPOBLACIONIsNull: Boolean; virtual; procedure SetPOBLACIONValue(const aValue: String); virtual; + procedure SetPOBLACIONIsNull(const aValue: Boolean); virtual; function GetPROVINCIAValue: String; virtual; + function GetPROVINCIAIsNull: Boolean; virtual; function GetOldPROVINCIAValue: String; virtual; + function GetOldPROVINCIAIsNull: Boolean; virtual; procedure SetPROVINCIAValue(const aValue: String); virtual; + procedure SetPROVINCIAIsNull(const aValue: Boolean); virtual; function GetCODIGO_POSTALValue: String; virtual; + function GetCODIGO_POSTALIsNull: Boolean; virtual; function GetOldCODIGO_POSTALValue: String; virtual; + function GetOldCODIGO_POSTALIsNull: Boolean; virtual; procedure SetCODIGO_POSTALValue(const aValue: String); virtual; + procedure SetCODIGO_POSTALIsNull(const aValue: Boolean); virtual; function GetTELEFONO_1Value: String; virtual; + function GetTELEFONO_1IsNull: Boolean; virtual; function GetOldTELEFONO_1Value: String; virtual; + function GetOldTELEFONO_1IsNull: Boolean; virtual; procedure SetTELEFONO_1Value(const aValue: String); virtual; + procedure SetTELEFONO_1IsNull(const aValue: Boolean); virtual; function GetTELEFONO_2Value: String; virtual; + function GetTELEFONO_2IsNull: Boolean; virtual; function GetOldTELEFONO_2Value: String; virtual; + function GetOldTELEFONO_2IsNull: Boolean; virtual; procedure SetTELEFONO_2Value(const aValue: String); virtual; + procedure SetTELEFONO_2IsNull(const aValue: Boolean); virtual; function GetMOVIL_1Value: String; virtual; + function GetMOVIL_1IsNull: Boolean; virtual; function GetOldMOVIL_1Value: String; virtual; + function GetOldMOVIL_1IsNull: Boolean; virtual; procedure SetMOVIL_1Value(const aValue: String); virtual; + procedure SetMOVIL_1IsNull(const aValue: Boolean); virtual; function GetMOVIL_2Value: String; virtual; + function GetMOVIL_2IsNull: Boolean; virtual; function GetOldMOVIL_2Value: String; virtual; + function GetOldMOVIL_2IsNull: Boolean; virtual; procedure SetMOVIL_2Value(const aValue: String); virtual; + procedure SetMOVIL_2IsNull(const aValue: Boolean); virtual; function GetFAXValue: String; virtual; + function GetFAXIsNull: Boolean; virtual; function GetOldFAXValue: String; virtual; + function GetOldFAXIsNull: Boolean; virtual; procedure SetFAXValue(const aValue: String); virtual; + procedure SetFAXIsNull(const aValue: Boolean); virtual; function GetEMAIL_1Value: String; virtual; + function GetEMAIL_1IsNull: Boolean; virtual; function GetOldEMAIL_1Value: String; virtual; + function GetOldEMAIL_1IsNull: Boolean; virtual; procedure SetEMAIL_1Value(const aValue: String); virtual; + procedure SetEMAIL_1IsNull(const aValue: Boolean); virtual; function GetEMAIL_2Value: String; virtual; + function GetEMAIL_2IsNull: Boolean; virtual; function GetOldEMAIL_2Value: String; virtual; + function GetOldEMAIL_2IsNull: Boolean; virtual; procedure SetEMAIL_2Value(const aValue: String); virtual; + procedure SetEMAIL_2IsNull(const aValue: Boolean); virtual; function GetPAGINA_WEBValue: String; virtual; + function GetPAGINA_WEBIsNull: Boolean; virtual; function GetOldPAGINA_WEBValue: String; virtual; + function GetOldPAGINA_WEBIsNull: Boolean; virtual; procedure SetPAGINA_WEBValue(const aValue: String); virtual; + procedure SetPAGINA_WEBIsNull(const aValue: Boolean); virtual; function GetNOTASValue: IROStrings; virtual; + function GetNOTASIsNull: Boolean; virtual; function GetOldNOTASValue: IROStrings; virtual; - procedure SetNOTASValue(const aValue: IROStrings); virtual; + function GetOldNOTASIsNull: Boolean; virtual; + procedure SetNOTASIsNull(const aValue: Boolean); virtual; + function GetFECHA_ALTAValue: DateTime; virtual; + function GetFECHA_ALTAIsNull: Boolean; virtual; + function GetOldFECHA_ALTAValue: DateTime; virtual; + function GetOldFECHA_ALTAIsNull: Boolean; virtual; + procedure SetFECHA_ALTAValue(const aValue: DateTime); virtual; + procedure SetFECHA_ALTAIsNull(const aValue: Boolean); virtual; + function GetFECHA_MODIFICACIONValue: DateTime; virtual; + function GetFECHA_MODIFICACIONIsNull: Boolean; virtual; + function GetOldFECHA_MODIFICACIONValue: DateTime; virtual; + function GetOldFECHA_MODIFICACIONIsNull: Boolean; virtual; + procedure SetFECHA_MODIFICACIONValue(const aValue: DateTime); virtual; + procedure SetFECHA_MODIFICACIONIsNull(const aValue: Boolean); virtual; function GetUSUARIOValue: String; virtual; + function GetUSUARIOIsNull: Boolean; virtual; function GetOldUSUARIOValue: String; virtual; + function GetOldUSUARIOIsNull: Boolean; virtual; procedure SetUSUARIOValue(const aValue: String); virtual; + procedure SetUSUARIOIsNull(const aValue: Boolean); virtual; function GetID_EMPRESAValue: Integer; virtual; + function GetID_EMPRESAIsNull: Boolean; virtual; function GetOldID_EMPRESAValue: Integer; virtual; + function GetOldID_EMPRESAIsNull: Boolean; virtual; procedure SetID_EMPRESAValue(const aValue: Integer); virtual; + procedure SetID_EMPRESAIsNull(const aValue: Boolean); virtual; function GetREFERENCIAValue: String; virtual; + function GetREFERENCIAIsNull: Boolean; virtual; function GetOldREFERENCIAValue: String; virtual; + function GetOldREFERENCIAIsNull: Boolean; virtual; procedure SetREFERENCIAValue(const aValue: String); virtual; - function GetCATEGORIAValue: String; virtual; - function GetOldCATEGORIAValue: String; virtual; - procedure SetCATEGORIAValue(const aValue: String); virtual; + procedure SetREFERENCIAIsNull(const aValue: Boolean); virtual; function GetFECHA_NACIMIENTOValue: DateTime; virtual; + function GetFECHA_NACIMIENTOIsNull: Boolean; virtual; function GetOldFECHA_NACIMIENTOValue: DateTime; virtual; + function GetOldFECHA_NACIMIENTOIsNull: Boolean; virtual; procedure SetFECHA_NACIMIENTOValue(const aValue: DateTime); virtual; + procedure SetFECHA_NACIMIENTOIsNull(const aValue: Boolean); virtual; + function GetCATEGORIAValue: String; virtual; + function GetCATEGORIAIsNull: Boolean; virtual; + function GetOldCATEGORIAValue: String; virtual; + function GetOldCATEGORIAIsNull: Boolean; virtual; + procedure SetCATEGORIAValue(const aValue: String); virtual; + procedure SetCATEGORIAIsNull(const aValue: Boolean); virtual; function GetFECHA_ALTA_EMPRESAValue: DateTime; virtual; + function GetFECHA_ALTA_EMPRESAIsNull: Boolean; virtual; function GetOldFECHA_ALTA_EMPRESAValue: DateTime; virtual; + function GetOldFECHA_ALTA_EMPRESAIsNull: Boolean; virtual; procedure SetFECHA_ALTA_EMPRESAValue(const aValue: DateTime); virtual; + procedure SetFECHA_ALTA_EMPRESAIsNull(const aValue: Boolean); virtual; function GetFORMACION_BASEValue: IROStrings; virtual; + function GetFORMACION_BASEIsNull: Boolean; virtual; function GetOldFORMACION_BASEValue: IROStrings; virtual; - procedure SetFORMACION_BASEValue(const aValue: IROStrings); virtual; + function GetOldFORMACION_BASEIsNull: Boolean; virtual; + procedure SetFORMACION_BASEIsNull(const aValue: Boolean); virtual; function GetFORMACION_COMPLEValue: IROStrings; virtual; + function GetFORMACION_COMPLEIsNull: Boolean; virtual; function GetOldFORMACION_COMPLEValue: IROStrings; virtual; - procedure SetFORMACION_COMPLEValue(const aValue: IROStrings); virtual; + function GetOldFORMACION_COMPLEIsNull: Boolean; virtual; + procedure SetFORMACION_COMPLEIsNull(const aValue: Boolean); virtual; function GetFORMACION_RECIBIDAValue: IROStrings; virtual; + function GetFORMACION_RECIBIDAIsNull: Boolean; virtual; function GetOldFORMACION_RECIBIDAValue: IROStrings; virtual; - procedure SetFORMACION_RECIBIDAValue(const aValue: IROStrings); virtual; + function GetOldFORMACION_RECIBIDAIsNull: Boolean; virtual; + procedure SetFORMACION_RECIBIDAIsNull(const aValue: Boolean); virtual; function GetEXPERIENCIAValue: IROStrings; virtual; + function GetEXPERIENCIAIsNull: Boolean; virtual; function GetOldEXPERIENCIAValue: IROStrings; virtual; - procedure SetEXPERIENCIAValue(const aValue: IROStrings); virtual; + function GetOldEXPERIENCIAIsNull: Boolean; virtual; + procedure SetEXPERIENCIAIsNull(const aValue: Boolean); virtual; { Properties } property ID : Integer read GetIDValue write SetIDValue; + property IDIsNull : Boolean read GetIDIsNull write SetIDIsNull; property OldID : Integer read GetOldIDValue; + property OldIDIsNull : Boolean read GetOldIDIsNull; property ID_CATEGORIA : Integer read GetID_CATEGORIAValue write SetID_CATEGORIAValue; + property ID_CATEGORIAIsNull : Boolean read GetID_CATEGORIAIsNull write SetID_CATEGORIAIsNull; property OldID_CATEGORIA : Integer read GetOldID_CATEGORIAValue; + property OldID_CATEGORIAIsNull : Boolean read GetOldID_CATEGORIAIsNull; property NIF_CIF : String read GetNIF_CIFValue write SetNIF_CIFValue; + property NIF_CIFIsNull : Boolean read GetNIF_CIFIsNull write SetNIF_CIFIsNull; property OldNIF_CIF : String read GetOldNIF_CIFValue; + property OldNIF_CIFIsNull : Boolean read GetOldNIF_CIFIsNull; property NOMBRE : String read GetNOMBREValue write SetNOMBREValue; + property NOMBREIsNull : Boolean read GetNOMBREIsNull write SetNOMBREIsNull; property OldNOMBRE : String read GetOldNOMBREValue; - property CALLE : String read GetCALLEValue write SetCALLEValue; - property OldCALLE : String read GetOldCALLEValue; + property OldNOMBREIsNull : Boolean read GetOldNOMBREIsNull; property PERSONA_CONTACTO : String read GetPERSONA_CONTACTOValue write SetPERSONA_CONTACTOValue; + property PERSONA_CONTACTOIsNull : Boolean read GetPERSONA_CONTACTOIsNull write SetPERSONA_CONTACTOIsNull; property OldPERSONA_CONTACTO : String read GetOldPERSONA_CONTACTOValue; + property OldPERSONA_CONTACTOIsNull : Boolean read GetOldPERSONA_CONTACTOIsNull; + property CALLE : String read GetCALLEValue write SetCALLEValue; + property CALLEIsNull : Boolean read GetCALLEIsNull write SetCALLEIsNull; + property OldCALLE : String read GetOldCALLEValue; + property OldCALLEIsNull : Boolean read GetOldCALLEIsNull; property POBLACION : String read GetPOBLACIONValue write SetPOBLACIONValue; + property POBLACIONIsNull : Boolean read GetPOBLACIONIsNull write SetPOBLACIONIsNull; property OldPOBLACION : String read GetOldPOBLACIONValue; + property OldPOBLACIONIsNull : Boolean read GetOldPOBLACIONIsNull; property PROVINCIA : String read GetPROVINCIAValue write SetPROVINCIAValue; + property PROVINCIAIsNull : Boolean read GetPROVINCIAIsNull write SetPROVINCIAIsNull; property OldPROVINCIA : String read GetOldPROVINCIAValue; + property OldPROVINCIAIsNull : Boolean read GetOldPROVINCIAIsNull; property CODIGO_POSTAL : String read GetCODIGO_POSTALValue write SetCODIGO_POSTALValue; + property CODIGO_POSTALIsNull : Boolean read GetCODIGO_POSTALIsNull write SetCODIGO_POSTALIsNull; property OldCODIGO_POSTAL : String read GetOldCODIGO_POSTALValue; + property OldCODIGO_POSTALIsNull : Boolean read GetOldCODIGO_POSTALIsNull; property TELEFONO_1 : String read GetTELEFONO_1Value write SetTELEFONO_1Value; + property TELEFONO_1IsNull : Boolean read GetTELEFONO_1IsNull write SetTELEFONO_1IsNull; property OldTELEFONO_1 : String read GetOldTELEFONO_1Value; + property OldTELEFONO_1IsNull : Boolean read GetOldTELEFONO_1IsNull; property TELEFONO_2 : String read GetTELEFONO_2Value write SetTELEFONO_2Value; + property TELEFONO_2IsNull : Boolean read GetTELEFONO_2IsNull write SetTELEFONO_2IsNull; property OldTELEFONO_2 : String read GetOldTELEFONO_2Value; + property OldTELEFONO_2IsNull : Boolean read GetOldTELEFONO_2IsNull; property MOVIL_1 : String read GetMOVIL_1Value write SetMOVIL_1Value; + property MOVIL_1IsNull : Boolean read GetMOVIL_1IsNull write SetMOVIL_1IsNull; property OldMOVIL_1 : String read GetOldMOVIL_1Value; + property OldMOVIL_1IsNull : Boolean read GetOldMOVIL_1IsNull; property MOVIL_2 : String read GetMOVIL_2Value write SetMOVIL_2Value; + property MOVIL_2IsNull : Boolean read GetMOVIL_2IsNull write SetMOVIL_2IsNull; property OldMOVIL_2 : String read GetOldMOVIL_2Value; + property OldMOVIL_2IsNull : Boolean read GetOldMOVIL_2IsNull; property FAX : String read GetFAXValue write SetFAXValue; + property FAXIsNull : Boolean read GetFAXIsNull write SetFAXIsNull; property OldFAX : String read GetOldFAXValue; + property OldFAXIsNull : Boolean read GetOldFAXIsNull; property EMAIL_1 : String read GetEMAIL_1Value write SetEMAIL_1Value; + property EMAIL_1IsNull : Boolean read GetEMAIL_1IsNull write SetEMAIL_1IsNull; property OldEMAIL_1 : String read GetOldEMAIL_1Value; + property OldEMAIL_1IsNull : Boolean read GetOldEMAIL_1IsNull; property EMAIL_2 : String read GetEMAIL_2Value write SetEMAIL_2Value; + property EMAIL_2IsNull : Boolean read GetEMAIL_2IsNull write SetEMAIL_2IsNull; property OldEMAIL_2 : String read GetOldEMAIL_2Value; + property OldEMAIL_2IsNull : Boolean read GetOldEMAIL_2IsNull; property PAGINA_WEB : String read GetPAGINA_WEBValue write SetPAGINA_WEBValue; + property PAGINA_WEBIsNull : Boolean read GetPAGINA_WEBIsNull write SetPAGINA_WEBIsNull; property OldPAGINA_WEB : String read GetOldPAGINA_WEBValue; - property NOTAS : IROStrings read GetNOTASValue write SetNOTASValue; + property OldPAGINA_WEBIsNull : Boolean read GetOldPAGINA_WEBIsNull; + property NOTAS : IROStrings read GetNOTASValue; + property NOTASIsNull : Boolean read GetNOTASIsNull write SetNOTASIsNull; property OldNOTAS : IROStrings read GetOldNOTASValue; + property OldNOTASIsNull : Boolean read GetOldNOTASIsNull; + property FECHA_ALTA : DateTime read GetFECHA_ALTAValue write SetFECHA_ALTAValue; + property FECHA_ALTAIsNull : Boolean read GetFECHA_ALTAIsNull write SetFECHA_ALTAIsNull; + property OldFECHA_ALTA : DateTime read GetOldFECHA_ALTAValue; + property OldFECHA_ALTAIsNull : Boolean read GetOldFECHA_ALTAIsNull; + property FECHA_MODIFICACION : DateTime read GetFECHA_MODIFICACIONValue write SetFECHA_MODIFICACIONValue; + property FECHA_MODIFICACIONIsNull : Boolean read GetFECHA_MODIFICACIONIsNull write SetFECHA_MODIFICACIONIsNull; + property OldFECHA_MODIFICACION : DateTime read GetOldFECHA_MODIFICACIONValue; + property OldFECHA_MODIFICACIONIsNull : Boolean read GetOldFECHA_MODIFICACIONIsNull; property USUARIO : String read GetUSUARIOValue write SetUSUARIOValue; + property USUARIOIsNull : Boolean read GetUSUARIOIsNull write SetUSUARIOIsNull; property OldUSUARIO : String read GetOldUSUARIOValue; + property OldUSUARIOIsNull : Boolean read GetOldUSUARIOIsNull; property ID_EMPRESA : Integer read GetID_EMPRESAValue write SetID_EMPRESAValue; + property ID_EMPRESAIsNull : Boolean read GetID_EMPRESAIsNull write SetID_EMPRESAIsNull; property OldID_EMPRESA : Integer read GetOldID_EMPRESAValue; + property OldID_EMPRESAIsNull : Boolean read GetOldID_EMPRESAIsNull; property REFERENCIA : String read GetREFERENCIAValue write SetREFERENCIAValue; + property REFERENCIAIsNull : Boolean read GetREFERENCIAIsNull write SetREFERENCIAIsNull; property OldREFERENCIA : String read GetOldREFERENCIAValue; - property CATEGORIA : String read GetCATEGORIAValue write SetCATEGORIAValue; - property OldCATEGORIA : String read GetOldCATEGORIAValue; + property OldREFERENCIAIsNull : Boolean read GetOldREFERENCIAIsNull; property FECHA_NACIMIENTO : DateTime read GetFECHA_NACIMIENTOValue write SetFECHA_NACIMIENTOValue; + property FECHA_NACIMIENTOIsNull : Boolean read GetFECHA_NACIMIENTOIsNull write SetFECHA_NACIMIENTOIsNull; property OldFECHA_NACIMIENTO : DateTime read GetOldFECHA_NACIMIENTOValue; + property OldFECHA_NACIMIENTOIsNull : Boolean read GetOldFECHA_NACIMIENTOIsNull; + property CATEGORIA : String read GetCATEGORIAValue write SetCATEGORIAValue; + property CATEGORIAIsNull : Boolean read GetCATEGORIAIsNull write SetCATEGORIAIsNull; + property OldCATEGORIA : String read GetOldCATEGORIAValue; + property OldCATEGORIAIsNull : Boolean read GetOldCATEGORIAIsNull; property FECHA_ALTA_EMPRESA : DateTime read GetFECHA_ALTA_EMPRESAValue write SetFECHA_ALTA_EMPRESAValue; + property FECHA_ALTA_EMPRESAIsNull : Boolean read GetFECHA_ALTA_EMPRESAIsNull write SetFECHA_ALTA_EMPRESAIsNull; property OldFECHA_ALTA_EMPRESA : DateTime read GetOldFECHA_ALTA_EMPRESAValue; - property FORMACION_BASE : IROStrings read GetFORMACION_BASEValue write SetFORMACION_BASEValue; + property OldFECHA_ALTA_EMPRESAIsNull : Boolean read GetOldFECHA_ALTA_EMPRESAIsNull; + property FORMACION_BASE : IROStrings read GetFORMACION_BASEValue; + property FORMACION_BASEIsNull : Boolean read GetFORMACION_BASEIsNull write SetFORMACION_BASEIsNull; property OldFORMACION_BASE : IROStrings read GetOldFORMACION_BASEValue; - property FORMACION_COMPLE : IROStrings read GetFORMACION_COMPLEValue write SetFORMACION_COMPLEValue; + property OldFORMACION_BASEIsNull : Boolean read GetOldFORMACION_BASEIsNull; + property FORMACION_COMPLE : IROStrings read GetFORMACION_COMPLEValue; + property FORMACION_COMPLEIsNull : Boolean read GetFORMACION_COMPLEIsNull write SetFORMACION_COMPLEIsNull; property OldFORMACION_COMPLE : IROStrings read GetOldFORMACION_COMPLEValue; - property FORMACION_RECIBIDA : IROStrings read GetFORMACION_RECIBIDAValue write SetFORMACION_RECIBIDAValue; + property OldFORMACION_COMPLEIsNull : Boolean read GetOldFORMACION_COMPLEIsNull; + property FORMACION_RECIBIDA : IROStrings read GetFORMACION_RECIBIDAValue; + property FORMACION_RECIBIDAIsNull : Boolean read GetFORMACION_RECIBIDAIsNull write SetFORMACION_RECIBIDAIsNull; property OldFORMACION_RECIBIDA : IROStrings read GetOldFORMACION_RECIBIDAValue; - property EXPERIENCIA : IROStrings read GetEXPERIENCIAValue write SetEXPERIENCIAValue; + property OldFORMACION_RECIBIDAIsNull : Boolean read GetOldFORMACION_RECIBIDAIsNull; + property EXPERIENCIA : IROStrings read GetEXPERIENCIAValue; + property EXPERIENCIAIsNull : Boolean read GetEXPERIENCIAIsNull write SetEXPERIENCIAIsNull; property OldEXPERIENCIA : IROStrings read GetOldEXPERIENCIAValue; + property OldEXPERIENCIAIsNull : Boolean read GetOldEXPERIENCIAIsNull; public constructor Create(aBusinessProcessor: TDABusinessProcessor); override; @@ -1025,117 +1712,212 @@ type { IDireccionesContactoDelta } IDireccionesContactoDelta = interface(IDireccionesContacto) - ['{D6123AD7-AA38-4AEF-9E89-E713C83A3DDC}'] + ['{10E97AB6-9484-47D3-94FB-EB77DF28A5C8}'] { Property getters and setters } function GetOldIDValue : Integer; function GetOldID_CONTACTOValue : Integer; - function GetOldNOMBREValue : String; function GetOldCALLEValue : String; function GetOldPOBLACIONValue : String; function GetOldPROVINCIAValue : String; function GetOldCODIGO_POSTALValue : String; function GetOldPERSONA_CONTACTOValue : String; + function GetOldNOMBREValue : String; function GetOldTELEFONOValue : String; function GetOldMOVILValue : String; function GetOldFAXValue : String; function GetOldEMAILValue : String; function GetOldNOTASValue : IROStrings; function GetOldPORTEValue : Float; + function GetOldFECHA_ALTAValue : DateTime; + function GetOldFECHA_MODIFICACIONValue : DateTime; { Properties } property OldID : Integer read GetOldIDValue; property OldID_CONTACTO : Integer read GetOldID_CONTACTOValue; - property OldNOMBRE : String read GetOldNOMBREValue; property OldCALLE : String read GetOldCALLEValue; property OldPOBLACION : String read GetOldPOBLACIONValue; property OldPROVINCIA : String read GetOldPROVINCIAValue; property OldCODIGO_POSTAL : String read GetOldCODIGO_POSTALValue; property OldPERSONA_CONTACTO : String read GetOldPERSONA_CONTACTOValue; + property OldNOMBRE : String read GetOldNOMBREValue; property OldTELEFONO : String read GetOldTELEFONOValue; property OldMOVIL : String read GetOldMOVILValue; property OldFAX : String read GetOldFAXValue; property OldEMAIL : String read GetOldEMAILValue; property OldNOTAS : IROStrings read GetOldNOTASValue; property OldPORTE : Float read GetOldPORTEValue; + property OldFECHA_ALTA : DateTime read GetOldFECHA_ALTAValue; + property OldFECHA_MODIFICACION : DateTime read GetOldFECHA_MODIFICACIONValue; end; { TDireccionesContactoBusinessProcessorRules } TDireccionesContactoBusinessProcessorRules = class(TDABusinessProcessorRules, IDireccionesContacto, IDireccionesContactoDelta) private + f_NOTAS: IROStrings; + procedure NOTAS_OnChange(Sender: TObject); protected { Property getters and setters } function GetIDValue: Integer; virtual; + function GetIDIsNull: Boolean; virtual; function GetOldIDValue: Integer; virtual; + function GetOldIDIsNull: Boolean; virtual; procedure SetIDValue(const aValue: Integer); virtual; + procedure SetIDIsNull(const aValue: Boolean); virtual; function GetID_CONTACTOValue: Integer; virtual; + function GetID_CONTACTOIsNull: Boolean; virtual; function GetOldID_CONTACTOValue: Integer; virtual; + function GetOldID_CONTACTOIsNull: Boolean; virtual; procedure SetID_CONTACTOValue(const aValue: Integer); virtual; - function GetNOMBREValue: String; virtual; - function GetOldNOMBREValue: String; virtual; - procedure SetNOMBREValue(const aValue: String); virtual; + procedure SetID_CONTACTOIsNull(const aValue: Boolean); virtual; function GetCALLEValue: String; virtual; + function GetCALLEIsNull: Boolean; virtual; function GetOldCALLEValue: String; virtual; + function GetOldCALLEIsNull: Boolean; virtual; procedure SetCALLEValue(const aValue: String); virtual; + procedure SetCALLEIsNull(const aValue: Boolean); virtual; function GetPOBLACIONValue: String; virtual; + function GetPOBLACIONIsNull: Boolean; virtual; function GetOldPOBLACIONValue: String; virtual; + function GetOldPOBLACIONIsNull: Boolean; virtual; procedure SetPOBLACIONValue(const aValue: String); virtual; + procedure SetPOBLACIONIsNull(const aValue: Boolean); virtual; function GetPROVINCIAValue: String; virtual; + function GetPROVINCIAIsNull: Boolean; virtual; function GetOldPROVINCIAValue: String; virtual; + function GetOldPROVINCIAIsNull: Boolean; virtual; procedure SetPROVINCIAValue(const aValue: String); virtual; + procedure SetPROVINCIAIsNull(const aValue: Boolean); virtual; function GetCODIGO_POSTALValue: String; virtual; + function GetCODIGO_POSTALIsNull: Boolean; virtual; function GetOldCODIGO_POSTALValue: String; virtual; + function GetOldCODIGO_POSTALIsNull: Boolean; virtual; procedure SetCODIGO_POSTALValue(const aValue: String); virtual; + procedure SetCODIGO_POSTALIsNull(const aValue: Boolean); virtual; function GetPERSONA_CONTACTOValue: String; virtual; + function GetPERSONA_CONTACTOIsNull: Boolean; virtual; function GetOldPERSONA_CONTACTOValue: String; virtual; + function GetOldPERSONA_CONTACTOIsNull: Boolean; virtual; procedure SetPERSONA_CONTACTOValue(const aValue: String); virtual; + procedure SetPERSONA_CONTACTOIsNull(const aValue: Boolean); virtual; + function GetNOMBREValue: String; virtual; + function GetNOMBREIsNull: Boolean; virtual; + function GetOldNOMBREValue: String; virtual; + function GetOldNOMBREIsNull: Boolean; virtual; + procedure SetNOMBREValue(const aValue: String); virtual; + procedure SetNOMBREIsNull(const aValue: Boolean); virtual; function GetTELEFONOValue: String; virtual; + function GetTELEFONOIsNull: Boolean; virtual; function GetOldTELEFONOValue: String; virtual; + function GetOldTELEFONOIsNull: Boolean; virtual; procedure SetTELEFONOValue(const aValue: String); virtual; + procedure SetTELEFONOIsNull(const aValue: Boolean); virtual; function GetMOVILValue: String; virtual; + function GetMOVILIsNull: Boolean; virtual; function GetOldMOVILValue: String; virtual; + function GetOldMOVILIsNull: Boolean; virtual; procedure SetMOVILValue(const aValue: String); virtual; + procedure SetMOVILIsNull(const aValue: Boolean); virtual; function GetFAXValue: String; virtual; + function GetFAXIsNull: Boolean; virtual; function GetOldFAXValue: String; virtual; + function GetOldFAXIsNull: Boolean; virtual; procedure SetFAXValue(const aValue: String); virtual; + procedure SetFAXIsNull(const aValue: Boolean); virtual; function GetEMAILValue: String; virtual; + function GetEMAILIsNull: Boolean; virtual; function GetOldEMAILValue: String; virtual; + function GetOldEMAILIsNull: Boolean; virtual; procedure SetEMAILValue(const aValue: String); virtual; + procedure SetEMAILIsNull(const aValue: Boolean); virtual; function GetNOTASValue: IROStrings; virtual; + function GetNOTASIsNull: Boolean; virtual; function GetOldNOTASValue: IROStrings; virtual; - procedure SetNOTASValue(const aValue: IROStrings); virtual; + function GetOldNOTASIsNull: Boolean; virtual; + procedure SetNOTASIsNull(const aValue: Boolean); virtual; function GetPORTEValue: Float; virtual; + function GetPORTEIsNull: Boolean; virtual; function GetOldPORTEValue: Float; virtual; + function GetOldPORTEIsNull: Boolean; virtual; procedure SetPORTEValue(const aValue: Float); virtual; + procedure SetPORTEIsNull(const aValue: Boolean); virtual; + function GetFECHA_ALTAValue: DateTime; virtual; + function GetFECHA_ALTAIsNull: Boolean; virtual; + function GetOldFECHA_ALTAValue: DateTime; virtual; + function GetOldFECHA_ALTAIsNull: Boolean; virtual; + procedure SetFECHA_ALTAValue(const aValue: DateTime); virtual; + procedure SetFECHA_ALTAIsNull(const aValue: Boolean); virtual; + function GetFECHA_MODIFICACIONValue: DateTime; virtual; + function GetFECHA_MODIFICACIONIsNull: Boolean; virtual; + function GetOldFECHA_MODIFICACIONValue: DateTime; virtual; + function GetOldFECHA_MODIFICACIONIsNull: Boolean; virtual; + procedure SetFECHA_MODIFICACIONValue(const aValue: DateTime); virtual; + procedure SetFECHA_MODIFICACIONIsNull(const aValue: Boolean); virtual; { Properties } property ID : Integer read GetIDValue write SetIDValue; + property IDIsNull : Boolean read GetIDIsNull write SetIDIsNull; property OldID : Integer read GetOldIDValue; + property OldIDIsNull : Boolean read GetOldIDIsNull; property ID_CONTACTO : Integer read GetID_CONTACTOValue write SetID_CONTACTOValue; + property ID_CONTACTOIsNull : Boolean read GetID_CONTACTOIsNull write SetID_CONTACTOIsNull; property OldID_CONTACTO : Integer read GetOldID_CONTACTOValue; - property NOMBRE : String read GetNOMBREValue write SetNOMBREValue; - property OldNOMBRE : String read GetOldNOMBREValue; + property OldID_CONTACTOIsNull : Boolean read GetOldID_CONTACTOIsNull; property CALLE : String read GetCALLEValue write SetCALLEValue; + property CALLEIsNull : Boolean read GetCALLEIsNull write SetCALLEIsNull; property OldCALLE : String read GetOldCALLEValue; + property OldCALLEIsNull : Boolean read GetOldCALLEIsNull; property POBLACION : String read GetPOBLACIONValue write SetPOBLACIONValue; + property POBLACIONIsNull : Boolean read GetPOBLACIONIsNull write SetPOBLACIONIsNull; property OldPOBLACION : String read GetOldPOBLACIONValue; + property OldPOBLACIONIsNull : Boolean read GetOldPOBLACIONIsNull; property PROVINCIA : String read GetPROVINCIAValue write SetPROVINCIAValue; + property PROVINCIAIsNull : Boolean read GetPROVINCIAIsNull write SetPROVINCIAIsNull; property OldPROVINCIA : String read GetOldPROVINCIAValue; + property OldPROVINCIAIsNull : Boolean read GetOldPROVINCIAIsNull; property CODIGO_POSTAL : String read GetCODIGO_POSTALValue write SetCODIGO_POSTALValue; + property CODIGO_POSTALIsNull : Boolean read GetCODIGO_POSTALIsNull write SetCODIGO_POSTALIsNull; property OldCODIGO_POSTAL : String read GetOldCODIGO_POSTALValue; + property OldCODIGO_POSTALIsNull : Boolean read GetOldCODIGO_POSTALIsNull; property PERSONA_CONTACTO : String read GetPERSONA_CONTACTOValue write SetPERSONA_CONTACTOValue; + property PERSONA_CONTACTOIsNull : Boolean read GetPERSONA_CONTACTOIsNull write SetPERSONA_CONTACTOIsNull; property OldPERSONA_CONTACTO : String read GetOldPERSONA_CONTACTOValue; + property OldPERSONA_CONTACTOIsNull : Boolean read GetOldPERSONA_CONTACTOIsNull; + property NOMBRE : String read GetNOMBREValue write SetNOMBREValue; + property NOMBREIsNull : Boolean read GetNOMBREIsNull write SetNOMBREIsNull; + property OldNOMBRE : String read GetOldNOMBREValue; + property OldNOMBREIsNull : Boolean read GetOldNOMBREIsNull; property TELEFONO : String read GetTELEFONOValue write SetTELEFONOValue; + property TELEFONOIsNull : Boolean read GetTELEFONOIsNull write SetTELEFONOIsNull; property OldTELEFONO : String read GetOldTELEFONOValue; + property OldTELEFONOIsNull : Boolean read GetOldTELEFONOIsNull; property MOVIL : String read GetMOVILValue write SetMOVILValue; + property MOVILIsNull : Boolean read GetMOVILIsNull write SetMOVILIsNull; property OldMOVIL : String read GetOldMOVILValue; + property OldMOVILIsNull : Boolean read GetOldMOVILIsNull; property FAX : String read GetFAXValue write SetFAXValue; + property FAXIsNull : Boolean read GetFAXIsNull write SetFAXIsNull; property OldFAX : String read GetOldFAXValue; + property OldFAXIsNull : Boolean read GetOldFAXIsNull; property EMAIL : String read GetEMAILValue write SetEMAILValue; + property EMAILIsNull : Boolean read GetEMAILIsNull write SetEMAILIsNull; property OldEMAIL : String read GetOldEMAILValue; - property NOTAS : IROStrings read GetNOTASValue write SetNOTASValue; + property OldEMAILIsNull : Boolean read GetOldEMAILIsNull; + property NOTAS : IROStrings read GetNOTASValue; + property NOTASIsNull : Boolean read GetNOTASIsNull write SetNOTASIsNull; property OldNOTAS : IROStrings read GetOldNOTASValue; + property OldNOTASIsNull : Boolean read GetOldNOTASIsNull; property PORTE : Float read GetPORTEValue write SetPORTEValue; + property PORTEIsNull : Boolean read GetPORTEIsNull write SetPORTEIsNull; property OldPORTE : Float read GetOldPORTEValue; + property OldPORTEIsNull : Boolean read GetOldPORTEIsNull; + property FECHA_ALTA : DateTime read GetFECHA_ALTAValue write SetFECHA_ALTAValue; + property FECHA_ALTAIsNull : Boolean read GetFECHA_ALTAIsNull write SetFECHA_ALTAIsNull; + property OldFECHA_ALTA : DateTime read GetOldFECHA_ALTAValue; + property OldFECHA_ALTAIsNull : Boolean read GetOldFECHA_ALTAIsNull; + property FECHA_MODIFICACION : DateTime read GetFECHA_MODIFICACIONValue write SetFECHA_MODIFICACIONValue; + property FECHA_MODIFICACIONIsNull : Boolean read GetFECHA_MODIFICACIONIsNull write SetFECHA_MODIFICACIONIsNull; + property OldFECHA_MODIFICACION : DateTime read GetOldFECHA_MODIFICACIONValue; + property OldFECHA_MODIFICACIONIsNull : Boolean read GetOldFECHA_MODIFICACIONIsNull; public constructor Create(aBusinessProcessor: TDABusinessProcessor); override; @@ -1145,7 +1927,7 @@ type { IClientesDescuentosDelta } IClientesDescuentosDelta = interface(IClientesDescuentos) - ['{2E020115-E0E9-464F-B175-1BED0E2BF0B1}'] + ['{F9462554-735C-43D6-96C5-D440B8AE77DC}'] { Property getters and setters } function GetOldIDValue : Integer; function GetOldID_CLIENTEValue : Integer; @@ -1167,32 +1949,57 @@ type protected { Property getters and setters } function GetIDValue: Integer; virtual; + function GetIDIsNull: Boolean; virtual; function GetOldIDValue: Integer; virtual; + function GetOldIDIsNull: Boolean; virtual; procedure SetIDValue(const aValue: Integer); virtual; + procedure SetIDIsNull(const aValue: Boolean); virtual; function GetID_CLIENTEValue: Integer; virtual; + function GetID_CLIENTEIsNull: Boolean; virtual; function GetOldID_CLIENTEValue: Integer; virtual; + function GetOldID_CLIENTEIsNull: Boolean; virtual; procedure SetID_CLIENTEValue(const aValue: Integer); virtual; + procedure SetID_CLIENTEIsNull(const aValue: Boolean); virtual; function GetID_PROVEEDORValue: Integer; virtual; + function GetID_PROVEEDORIsNull: Boolean; virtual; function GetOldID_PROVEEDORValue: Integer; virtual; + function GetOldID_PROVEEDORIsNull: Boolean; virtual; procedure SetID_PROVEEDORValue(const aValue: Integer); virtual; + procedure SetID_PROVEEDORIsNull(const aValue: Boolean); virtual; function GetNOMBREValue: String; virtual; + function GetNOMBREIsNull: Boolean; virtual; function GetOldNOMBREValue: String; virtual; + function GetOldNOMBREIsNull: Boolean; virtual; procedure SetNOMBREValue(const aValue: String); virtual; + procedure SetNOMBREIsNull(const aValue: Boolean); virtual; function GetDESCUENTOValue: Float; virtual; + function GetDESCUENTOIsNull: Boolean; virtual; function GetOldDESCUENTOValue: Float; virtual; + function GetOldDESCUENTOIsNull: Boolean; virtual; procedure SetDESCUENTOValue(const aValue: Float); virtual; + procedure SetDESCUENTOIsNull(const aValue: Boolean); virtual; { Properties } property ID : Integer read GetIDValue write SetIDValue; + property IDIsNull : Boolean read GetIDIsNull write SetIDIsNull; property OldID : Integer read GetOldIDValue; + property OldIDIsNull : Boolean read GetOldIDIsNull; property ID_CLIENTE : Integer read GetID_CLIENTEValue write SetID_CLIENTEValue; + property ID_CLIENTEIsNull : Boolean read GetID_CLIENTEIsNull write SetID_CLIENTEIsNull; property OldID_CLIENTE : Integer read GetOldID_CLIENTEValue; + property OldID_CLIENTEIsNull : Boolean read GetOldID_CLIENTEIsNull; property ID_PROVEEDOR : Integer read GetID_PROVEEDORValue write SetID_PROVEEDORValue; + property ID_PROVEEDORIsNull : Boolean read GetID_PROVEEDORIsNull write SetID_PROVEEDORIsNull; property OldID_PROVEEDOR : Integer read GetOldID_PROVEEDORValue; + property OldID_PROVEEDORIsNull : Boolean read GetOldID_PROVEEDORIsNull; property NOMBRE : String read GetNOMBREValue write SetNOMBREValue; + property NOMBREIsNull : Boolean read GetNOMBREIsNull write SetNOMBREIsNull; property OldNOMBRE : String read GetOldNOMBREValue; + property OldNOMBREIsNull : Boolean read GetOldNOMBREIsNull; property DESCUENTO : Float read GetDESCUENTOValue write SetDESCUENTOValue; + property DESCUENTOIsNull : Boolean read GetDESCUENTOIsNull write SetDESCUENTOIsNull; property OldDESCUENTO : Float read GetOldDESCUENTOValue; + property OldDESCUENTOIsNull : Boolean read GetOldDESCUENTOIsNull; public constructor Create(aBusinessProcessor: TDABusinessProcessor); override; @@ -1202,7 +2009,7 @@ type { IGruposProveedorDelta } IGruposProveedorDelta = interface(IGruposProveedor) - ['{14E46C85-BAAE-4A15-B868-EC579AF38A8A}'] + ['{385AB8C2-D9FD-4BAD-955C-3716AEC71CDB}'] { Property getters and setters } function GetOldDESCRIPCIONValue : String; @@ -1216,12 +2023,17 @@ type protected { Property getters and setters } function GetDESCRIPCIONValue: String; virtual; + function GetDESCRIPCIONIsNull: Boolean; virtual; function GetOldDESCRIPCIONValue: String; virtual; + function GetOldDESCRIPCIONIsNull: Boolean; virtual; procedure SetDESCRIPCIONValue(const aValue: String); virtual; + procedure SetDESCRIPCIONIsNull(const aValue: Boolean); virtual; { Properties } property DESCRIPCION : String read GetDESCRIPCIONValue write SetDESCRIPCIONValue; + property DESCRIPCIONIsNull : Boolean read GetDESCRIPCIONIsNull write SetDESCRIPCIONIsNull; property OldDESCRIPCION : String read GetOldDESCRIPCIONValue; + property OldDESCRIPCIONIsNull : Boolean read GetOldDESCRIPCIONIsNull; public constructor Create(aBusinessProcessor: TDABusinessProcessor); override; @@ -1231,7 +2043,7 @@ type { IGruposEmpleadoDelta } IGruposEmpleadoDelta = interface(IGruposEmpleado) - ['{364591F3-D581-4104-9125-7CE465563DEB}'] + ['{8EFA344F-C9C4-4113-807A-8876CEE002A2}'] { Property getters and setters } function GetOldDESCRIPCIONValue : String; @@ -1245,12 +2057,292 @@ type protected { Property getters and setters } function GetDESCRIPCIONValue: String; virtual; + function GetDESCRIPCIONIsNull: Boolean; virtual; function GetOldDESCRIPCIONValue: String; virtual; + function GetOldDESCRIPCIONIsNull: Boolean; virtual; procedure SetDESCRIPCIONValue(const aValue: String); virtual; + procedure SetDESCRIPCIONIsNull(const aValue: Boolean); virtual; { Properties } property DESCRIPCION : String read GetDESCRIPCIONValue write SetDESCRIPCIONValue; + property DESCRIPCIONIsNull : Boolean read GetDESCRIPCIONIsNull write SetDESCRIPCIONIsNull; property OldDESCRIPCION : String read GetOldDESCRIPCIONValue; + property OldDESCRIPCIONIsNull : Boolean read GetOldDESCRIPCIONIsNull; + + public + constructor Create(aBusinessProcessor: TDABusinessProcessor); override; + destructor Destroy; override; + + end; + + { IContactos_RefreshDelta } + IContactos_RefreshDelta = interface(IContactos_Refresh) + ['{D04D6755-FB96-4517-91AF-95AB76C731CF}'] + { Property getters and setters } + function GetOldIDValue : Integer; + function GetOldNIF_CIFValue : String; + function GetOldNOMBREValue : String; + function GetOldCALLEValue : String; + function GetOldPOBLACIONValue : String; + function GetOldPROVINCIAValue : String; + function GetOldCODIGO_POSTALValue : String; + function GetOldTELEFONO_1Value : String; + function GetOldTELEFONO_2Value : String; + function GetOldMOVIL_1Value : String; + function GetOldMOVIL_2Value : String; + function GetOldFAXValue : String; + function GetOldEMAIL_1Value : String; + function GetOldEMAIL_2Value : String; + function GetOldPAGINA_WEBValue : String; + function GetOldNOTASValue : IROStrings; + function GetOldFECHA_ALTAValue : DateTime; + function GetOldFECHA_MODIFICACIONValue : DateTime; + function GetOldUSUARIOValue : String; + function GetOldREFERENCIAValue : String; + function GetOldPERSONA_CONTACTOValue : String; + + { Properties } + property OldID : Integer read GetOldIDValue; + property OldNIF_CIF : String read GetOldNIF_CIFValue; + property OldNOMBRE : String read GetOldNOMBREValue; + property OldCALLE : String read GetOldCALLEValue; + property OldPOBLACION : String read GetOldPOBLACIONValue; + property OldPROVINCIA : String read GetOldPROVINCIAValue; + property OldCODIGO_POSTAL : String read GetOldCODIGO_POSTALValue; + property OldTELEFONO_1 : String read GetOldTELEFONO_1Value; + property OldTELEFONO_2 : String read GetOldTELEFONO_2Value; + property OldMOVIL_1 : String read GetOldMOVIL_1Value; + property OldMOVIL_2 : String read GetOldMOVIL_2Value; + property OldFAX : String read GetOldFAXValue; + property OldEMAIL_1 : String read GetOldEMAIL_1Value; + property OldEMAIL_2 : String read GetOldEMAIL_2Value; + property OldPAGINA_WEB : String read GetOldPAGINA_WEBValue; + property OldNOTAS : IROStrings read GetOldNOTASValue; + property OldFECHA_ALTA : DateTime read GetOldFECHA_ALTAValue; + property OldFECHA_MODIFICACION : DateTime read GetOldFECHA_MODIFICACIONValue; + property OldUSUARIO : String read GetOldUSUARIOValue; + property OldREFERENCIA : String read GetOldREFERENCIAValue; + property OldPERSONA_CONTACTO : String read GetOldPERSONA_CONTACTOValue; + end; + + { TContactos_RefreshBusinessProcessorRules } + TContactos_RefreshBusinessProcessorRules = class(TDABusinessProcessorRules, IContactos_Refresh, IContactos_RefreshDelta) + private + f_NOTAS: IROStrings; + procedure NOTAS_OnChange(Sender: TObject); + protected + { Property getters and setters } + function GetIDValue: Integer; virtual; + function GetIDIsNull: Boolean; virtual; + function GetOldIDValue: Integer; virtual; + function GetOldIDIsNull: Boolean; virtual; + procedure SetIDValue(const aValue: Integer); virtual; + procedure SetIDIsNull(const aValue: Boolean); virtual; + function GetNIF_CIFValue: String; virtual; + function GetNIF_CIFIsNull: Boolean; virtual; + function GetOldNIF_CIFValue: String; virtual; + function GetOldNIF_CIFIsNull: Boolean; virtual; + procedure SetNIF_CIFValue(const aValue: String); virtual; + procedure SetNIF_CIFIsNull(const aValue: Boolean); virtual; + function GetNOMBREValue: String; virtual; + function GetNOMBREIsNull: Boolean; virtual; + function GetOldNOMBREValue: String; virtual; + function GetOldNOMBREIsNull: Boolean; virtual; + procedure SetNOMBREValue(const aValue: String); virtual; + procedure SetNOMBREIsNull(const aValue: Boolean); virtual; + function GetCALLEValue: String; virtual; + function GetCALLEIsNull: Boolean; virtual; + function GetOldCALLEValue: String; virtual; + function GetOldCALLEIsNull: Boolean; virtual; + procedure SetCALLEValue(const aValue: String); virtual; + procedure SetCALLEIsNull(const aValue: Boolean); virtual; + function GetPOBLACIONValue: String; virtual; + function GetPOBLACIONIsNull: Boolean; virtual; + function GetOldPOBLACIONValue: String; virtual; + function GetOldPOBLACIONIsNull: Boolean; virtual; + procedure SetPOBLACIONValue(const aValue: String); virtual; + procedure SetPOBLACIONIsNull(const aValue: Boolean); virtual; + function GetPROVINCIAValue: String; virtual; + function GetPROVINCIAIsNull: Boolean; virtual; + function GetOldPROVINCIAValue: String; virtual; + function GetOldPROVINCIAIsNull: Boolean; virtual; + procedure SetPROVINCIAValue(const aValue: String); virtual; + procedure SetPROVINCIAIsNull(const aValue: Boolean); virtual; + function GetCODIGO_POSTALValue: String; virtual; + function GetCODIGO_POSTALIsNull: Boolean; virtual; + function GetOldCODIGO_POSTALValue: String; virtual; + function GetOldCODIGO_POSTALIsNull: Boolean; virtual; + procedure SetCODIGO_POSTALValue(const aValue: String); virtual; + procedure SetCODIGO_POSTALIsNull(const aValue: Boolean); virtual; + function GetTELEFONO_1Value: String; virtual; + function GetTELEFONO_1IsNull: Boolean; virtual; + function GetOldTELEFONO_1Value: String; virtual; + function GetOldTELEFONO_1IsNull: Boolean; virtual; + procedure SetTELEFONO_1Value(const aValue: String); virtual; + procedure SetTELEFONO_1IsNull(const aValue: Boolean); virtual; + function GetTELEFONO_2Value: String; virtual; + function GetTELEFONO_2IsNull: Boolean; virtual; + function GetOldTELEFONO_2Value: String; virtual; + function GetOldTELEFONO_2IsNull: Boolean; virtual; + procedure SetTELEFONO_2Value(const aValue: String); virtual; + procedure SetTELEFONO_2IsNull(const aValue: Boolean); virtual; + function GetMOVIL_1Value: String; virtual; + function GetMOVIL_1IsNull: Boolean; virtual; + function GetOldMOVIL_1Value: String; virtual; + function GetOldMOVIL_1IsNull: Boolean; virtual; + procedure SetMOVIL_1Value(const aValue: String); virtual; + procedure SetMOVIL_1IsNull(const aValue: Boolean); virtual; + function GetMOVIL_2Value: String; virtual; + function GetMOVIL_2IsNull: Boolean; virtual; + function GetOldMOVIL_2Value: String; virtual; + function GetOldMOVIL_2IsNull: Boolean; virtual; + procedure SetMOVIL_2Value(const aValue: String); virtual; + procedure SetMOVIL_2IsNull(const aValue: Boolean); virtual; + function GetFAXValue: String; virtual; + function GetFAXIsNull: Boolean; virtual; + function GetOldFAXValue: String; virtual; + function GetOldFAXIsNull: Boolean; virtual; + procedure SetFAXValue(const aValue: String); virtual; + procedure SetFAXIsNull(const aValue: Boolean); virtual; + function GetEMAIL_1Value: String; virtual; + function GetEMAIL_1IsNull: Boolean; virtual; + function GetOldEMAIL_1Value: String; virtual; + function GetOldEMAIL_1IsNull: Boolean; virtual; + procedure SetEMAIL_1Value(const aValue: String); virtual; + procedure SetEMAIL_1IsNull(const aValue: Boolean); virtual; + function GetEMAIL_2Value: String; virtual; + function GetEMAIL_2IsNull: Boolean; virtual; + function GetOldEMAIL_2Value: String; virtual; + function GetOldEMAIL_2IsNull: Boolean; virtual; + procedure SetEMAIL_2Value(const aValue: String); virtual; + procedure SetEMAIL_2IsNull(const aValue: Boolean); virtual; + function GetPAGINA_WEBValue: String; virtual; + function GetPAGINA_WEBIsNull: Boolean; virtual; + function GetOldPAGINA_WEBValue: String; virtual; + function GetOldPAGINA_WEBIsNull: Boolean; virtual; + procedure SetPAGINA_WEBValue(const aValue: String); virtual; + procedure SetPAGINA_WEBIsNull(const aValue: Boolean); virtual; + function GetNOTASValue: IROStrings; virtual; + function GetNOTASIsNull: Boolean; virtual; + function GetOldNOTASValue: IROStrings; virtual; + function GetOldNOTASIsNull: Boolean; virtual; + procedure SetNOTASIsNull(const aValue: Boolean); virtual; + function GetFECHA_ALTAValue: DateTime; virtual; + function GetFECHA_ALTAIsNull: Boolean; virtual; + function GetOldFECHA_ALTAValue: DateTime; virtual; + function GetOldFECHA_ALTAIsNull: Boolean; virtual; + procedure SetFECHA_ALTAValue(const aValue: DateTime); virtual; + procedure SetFECHA_ALTAIsNull(const aValue: Boolean); virtual; + function GetFECHA_MODIFICACIONValue: DateTime; virtual; + function GetFECHA_MODIFICACIONIsNull: Boolean; virtual; + function GetOldFECHA_MODIFICACIONValue: DateTime; virtual; + function GetOldFECHA_MODIFICACIONIsNull: Boolean; virtual; + procedure SetFECHA_MODIFICACIONValue(const aValue: DateTime); virtual; + procedure SetFECHA_MODIFICACIONIsNull(const aValue: Boolean); virtual; + function GetUSUARIOValue: String; virtual; + function GetUSUARIOIsNull: Boolean; virtual; + function GetOldUSUARIOValue: String; virtual; + function GetOldUSUARIOIsNull: Boolean; virtual; + procedure SetUSUARIOValue(const aValue: String); virtual; + procedure SetUSUARIOIsNull(const aValue: Boolean); virtual; + function GetREFERENCIAValue: String; virtual; + function GetREFERENCIAIsNull: Boolean; virtual; + function GetOldREFERENCIAValue: String; virtual; + function GetOldREFERENCIAIsNull: Boolean; virtual; + procedure SetREFERENCIAValue(const aValue: String); virtual; + procedure SetREFERENCIAIsNull(const aValue: Boolean); virtual; + function GetPERSONA_CONTACTOValue: String; virtual; + function GetPERSONA_CONTACTOIsNull: Boolean; virtual; + function GetOldPERSONA_CONTACTOValue: String; virtual; + function GetOldPERSONA_CONTACTOIsNull: Boolean; virtual; + procedure SetPERSONA_CONTACTOValue(const aValue: String); virtual; + procedure SetPERSONA_CONTACTOIsNull(const aValue: Boolean); virtual; + + { Properties } + property ID : Integer read GetIDValue write SetIDValue; + property IDIsNull : Boolean read GetIDIsNull write SetIDIsNull; + property OldID : Integer read GetOldIDValue; + property OldIDIsNull : Boolean read GetOldIDIsNull; + property NIF_CIF : String read GetNIF_CIFValue write SetNIF_CIFValue; + property NIF_CIFIsNull : Boolean read GetNIF_CIFIsNull write SetNIF_CIFIsNull; + property OldNIF_CIF : String read GetOldNIF_CIFValue; + property OldNIF_CIFIsNull : Boolean read GetOldNIF_CIFIsNull; + property NOMBRE : String read GetNOMBREValue write SetNOMBREValue; + property NOMBREIsNull : Boolean read GetNOMBREIsNull write SetNOMBREIsNull; + property OldNOMBRE : String read GetOldNOMBREValue; + property OldNOMBREIsNull : Boolean read GetOldNOMBREIsNull; + property CALLE : String read GetCALLEValue write SetCALLEValue; + property CALLEIsNull : Boolean read GetCALLEIsNull write SetCALLEIsNull; + property OldCALLE : String read GetOldCALLEValue; + property OldCALLEIsNull : Boolean read GetOldCALLEIsNull; + property POBLACION : String read GetPOBLACIONValue write SetPOBLACIONValue; + property POBLACIONIsNull : Boolean read GetPOBLACIONIsNull write SetPOBLACIONIsNull; + property OldPOBLACION : String read GetOldPOBLACIONValue; + property OldPOBLACIONIsNull : Boolean read GetOldPOBLACIONIsNull; + property PROVINCIA : String read GetPROVINCIAValue write SetPROVINCIAValue; + property PROVINCIAIsNull : Boolean read GetPROVINCIAIsNull write SetPROVINCIAIsNull; + property OldPROVINCIA : String read GetOldPROVINCIAValue; + property OldPROVINCIAIsNull : Boolean read GetOldPROVINCIAIsNull; + property CODIGO_POSTAL : String read GetCODIGO_POSTALValue write SetCODIGO_POSTALValue; + property CODIGO_POSTALIsNull : Boolean read GetCODIGO_POSTALIsNull write SetCODIGO_POSTALIsNull; + property OldCODIGO_POSTAL : String read GetOldCODIGO_POSTALValue; + property OldCODIGO_POSTALIsNull : Boolean read GetOldCODIGO_POSTALIsNull; + property TELEFONO_1 : String read GetTELEFONO_1Value write SetTELEFONO_1Value; + property TELEFONO_1IsNull : Boolean read GetTELEFONO_1IsNull write SetTELEFONO_1IsNull; + property OldTELEFONO_1 : String read GetOldTELEFONO_1Value; + property OldTELEFONO_1IsNull : Boolean read GetOldTELEFONO_1IsNull; + property TELEFONO_2 : String read GetTELEFONO_2Value write SetTELEFONO_2Value; + property TELEFONO_2IsNull : Boolean read GetTELEFONO_2IsNull write SetTELEFONO_2IsNull; + property OldTELEFONO_2 : String read GetOldTELEFONO_2Value; + property OldTELEFONO_2IsNull : Boolean read GetOldTELEFONO_2IsNull; + property MOVIL_1 : String read GetMOVIL_1Value write SetMOVIL_1Value; + property MOVIL_1IsNull : Boolean read GetMOVIL_1IsNull write SetMOVIL_1IsNull; + property OldMOVIL_1 : String read GetOldMOVIL_1Value; + property OldMOVIL_1IsNull : Boolean read GetOldMOVIL_1IsNull; + property MOVIL_2 : String read GetMOVIL_2Value write SetMOVIL_2Value; + property MOVIL_2IsNull : Boolean read GetMOVIL_2IsNull write SetMOVIL_2IsNull; + property OldMOVIL_2 : String read GetOldMOVIL_2Value; + property OldMOVIL_2IsNull : Boolean read GetOldMOVIL_2IsNull; + property FAX : String read GetFAXValue write SetFAXValue; + property FAXIsNull : Boolean read GetFAXIsNull write SetFAXIsNull; + property OldFAX : String read GetOldFAXValue; + property OldFAXIsNull : Boolean read GetOldFAXIsNull; + property EMAIL_1 : String read GetEMAIL_1Value write SetEMAIL_1Value; + property EMAIL_1IsNull : Boolean read GetEMAIL_1IsNull write SetEMAIL_1IsNull; + property OldEMAIL_1 : String read GetOldEMAIL_1Value; + property OldEMAIL_1IsNull : Boolean read GetOldEMAIL_1IsNull; + property EMAIL_2 : String read GetEMAIL_2Value write SetEMAIL_2Value; + property EMAIL_2IsNull : Boolean read GetEMAIL_2IsNull write SetEMAIL_2IsNull; + property OldEMAIL_2 : String read GetOldEMAIL_2Value; + property OldEMAIL_2IsNull : Boolean read GetOldEMAIL_2IsNull; + property PAGINA_WEB : String read GetPAGINA_WEBValue write SetPAGINA_WEBValue; + property PAGINA_WEBIsNull : Boolean read GetPAGINA_WEBIsNull write SetPAGINA_WEBIsNull; + property OldPAGINA_WEB : String read GetOldPAGINA_WEBValue; + property OldPAGINA_WEBIsNull : Boolean read GetOldPAGINA_WEBIsNull; + property NOTAS : IROStrings read GetNOTASValue; + property NOTASIsNull : Boolean read GetNOTASIsNull write SetNOTASIsNull; + property OldNOTAS : IROStrings read GetOldNOTASValue; + property OldNOTASIsNull : Boolean read GetOldNOTASIsNull; + property FECHA_ALTA : DateTime read GetFECHA_ALTAValue write SetFECHA_ALTAValue; + property FECHA_ALTAIsNull : Boolean read GetFECHA_ALTAIsNull write SetFECHA_ALTAIsNull; + property OldFECHA_ALTA : DateTime read GetOldFECHA_ALTAValue; + property OldFECHA_ALTAIsNull : Boolean read GetOldFECHA_ALTAIsNull; + property FECHA_MODIFICACION : DateTime read GetFECHA_MODIFICACIONValue write SetFECHA_MODIFICACIONValue; + property FECHA_MODIFICACIONIsNull : Boolean read GetFECHA_MODIFICACIONIsNull write SetFECHA_MODIFICACIONIsNull; + property OldFECHA_MODIFICACION : DateTime read GetOldFECHA_MODIFICACIONValue; + property OldFECHA_MODIFICACIONIsNull : Boolean read GetOldFECHA_MODIFICACIONIsNull; + property USUARIO : String read GetUSUARIOValue write SetUSUARIOValue; + property USUARIOIsNull : Boolean read GetUSUARIOIsNull write SetUSUARIOIsNull; + property OldUSUARIO : String read GetOldUSUARIOValue; + property OldUSUARIOIsNull : Boolean read GetOldUSUARIOIsNull; + property REFERENCIA : String read GetREFERENCIAValue write SetREFERENCIAValue; + property REFERENCIAIsNull : Boolean read GetREFERENCIAIsNull write SetREFERENCIAIsNull; + property OldREFERENCIA : String read GetOldREFERENCIAValue; + property OldREFERENCIAIsNull : Boolean read GetOldREFERENCIAIsNull; + property PERSONA_CONTACTO : String read GetPERSONA_CONTACTOValue write SetPERSONA_CONTACTOValue; + property PERSONA_CONTACTOIsNull : Boolean read GetPERSONA_CONTACTOIsNull write SetPERSONA_CONTACTOIsNull; + property OldPERSONA_CONTACTO : String read GetOldPERSONA_CONTACTOValue; + property OldPERSONA_CONTACTOIsNull : Boolean read GetOldPERSONA_CONTACTOIsNull; public constructor Create(aBusinessProcessor: TDABusinessProcessor); override; @@ -1261,12 +2353,18 @@ type implementation uses - Variants, uROBinaryHelpers; + Variants, uROBinaryHelpers, uDAInterfaces; { TContactosBusinessProcessorRules } constructor TContactosBusinessProcessorRules.Create(aBusinessProcessor: TDABusinessProcessor); +var + StrList: TStringList; begin inherited; + + StrList := TStringList.Create; + StrList.OnChange := NOTAS_OnChange; + f_NOTAS := NewROStrings(StrList,True); end; destructor TContactosBusinessProcessorRules.Destroy; @@ -1274,276 +2372,626 @@ begin inherited; end; +procedure TContactosBusinessProcessorRules.NOTAS_OnChange(Sender: TObject); +begin + BusinessProcessor.CurrentChange.NewValueByName[fld_ContactosNOTAS] := TStringList(Sender).Text; +end; + function TContactosBusinessProcessorRules.GetIDValue: Integer; begin result := BusinessProcessor.CurrentChange.NewValueByName[fld_ContactosID]; end; +function TContactosBusinessProcessorRules.GetIDIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_ContactosID]); +end; + function TContactosBusinessProcessorRules.GetOldIDValue: Integer; begin result := BusinessProcessor.CurrentChange.OldValueByName[fld_ContactosID]; end; +function TContactosBusinessProcessorRules.GetOldIDIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_ContactosID]); +end; + procedure TContactosBusinessProcessorRules.SetIDValue(const aValue: Integer); begin BusinessProcessor.CurrentChange.NewValueByName[fld_ContactosID] := aValue; end; +procedure TContactosBusinessProcessorRules.SetIDIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_ContactosID] := Null; +end; + function TContactosBusinessProcessorRules.GetID_CATEGORIAValue: Integer; begin result := BusinessProcessor.CurrentChange.NewValueByName[fld_ContactosID_CATEGORIA]; end; +function TContactosBusinessProcessorRules.GetID_CATEGORIAIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_ContactosID_CATEGORIA]); +end; + function TContactosBusinessProcessorRules.GetOldID_CATEGORIAValue: Integer; begin result := BusinessProcessor.CurrentChange.OldValueByName[fld_ContactosID_CATEGORIA]; end; +function TContactosBusinessProcessorRules.GetOldID_CATEGORIAIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_ContactosID_CATEGORIA]); +end; + procedure TContactosBusinessProcessorRules.SetID_CATEGORIAValue(const aValue: Integer); begin BusinessProcessor.CurrentChange.NewValueByName[fld_ContactosID_CATEGORIA] := aValue; end; +procedure TContactosBusinessProcessorRules.SetID_CATEGORIAIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_ContactosID_CATEGORIA] := Null; +end; + function TContactosBusinessProcessorRules.GetNIF_CIFValue: String; begin result := BusinessProcessor.CurrentChange.NewValueByName[fld_ContactosNIF_CIF]; end; +function TContactosBusinessProcessorRules.GetNIF_CIFIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_ContactosNIF_CIF]); +end; + function TContactosBusinessProcessorRules.GetOldNIF_CIFValue: String; begin result := BusinessProcessor.CurrentChange.OldValueByName[fld_ContactosNIF_CIF]; end; +function TContactosBusinessProcessorRules.GetOldNIF_CIFIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_ContactosNIF_CIF]); +end; + procedure TContactosBusinessProcessorRules.SetNIF_CIFValue(const aValue: String); begin BusinessProcessor.CurrentChange.NewValueByName[fld_ContactosNIF_CIF] := aValue; end; +procedure TContactosBusinessProcessorRules.SetNIF_CIFIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_ContactosNIF_CIF] := Null; +end; + function TContactosBusinessProcessorRules.GetNOMBREValue: String; begin result := BusinessProcessor.CurrentChange.NewValueByName[fld_ContactosNOMBRE]; end; +function TContactosBusinessProcessorRules.GetNOMBREIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_ContactosNOMBRE]); +end; + function TContactosBusinessProcessorRules.GetOldNOMBREValue: String; begin result := BusinessProcessor.CurrentChange.OldValueByName[fld_ContactosNOMBRE]; end; +function TContactosBusinessProcessorRules.GetOldNOMBREIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_ContactosNOMBRE]); +end; + procedure TContactosBusinessProcessorRules.SetNOMBREValue(const aValue: String); begin BusinessProcessor.CurrentChange.NewValueByName[fld_ContactosNOMBRE] := aValue; end; +procedure TContactosBusinessProcessorRules.SetNOMBREIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_ContactosNOMBRE] := Null; +end; + function TContactosBusinessProcessorRules.GetPERSONA_CONTACTOValue: String; begin result := BusinessProcessor.CurrentChange.NewValueByName[fld_ContactosPERSONA_CONTACTO]; end; +function TContactosBusinessProcessorRules.GetPERSONA_CONTACTOIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_ContactosPERSONA_CONTACTO]); +end; + function TContactosBusinessProcessorRules.GetOldPERSONA_CONTACTOValue: String; begin result := BusinessProcessor.CurrentChange.OldValueByName[fld_ContactosPERSONA_CONTACTO]; end; +function TContactosBusinessProcessorRules.GetOldPERSONA_CONTACTOIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_ContactosPERSONA_CONTACTO]); +end; + procedure TContactosBusinessProcessorRules.SetPERSONA_CONTACTOValue(const aValue: String); begin BusinessProcessor.CurrentChange.NewValueByName[fld_ContactosPERSONA_CONTACTO] := aValue; end; +procedure TContactosBusinessProcessorRules.SetPERSONA_CONTACTOIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_ContactosPERSONA_CONTACTO] := Null; +end; + function TContactosBusinessProcessorRules.GetCALLEValue: String; begin result := BusinessProcessor.CurrentChange.NewValueByName[fld_ContactosCALLE]; end; +function TContactosBusinessProcessorRules.GetCALLEIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_ContactosCALLE]); +end; + function TContactosBusinessProcessorRules.GetOldCALLEValue: String; begin result := BusinessProcessor.CurrentChange.OldValueByName[fld_ContactosCALLE]; end; +function TContactosBusinessProcessorRules.GetOldCALLEIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_ContactosCALLE]); +end; + procedure TContactosBusinessProcessorRules.SetCALLEValue(const aValue: String); begin BusinessProcessor.CurrentChange.NewValueByName[fld_ContactosCALLE] := aValue; end; +procedure TContactosBusinessProcessorRules.SetCALLEIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_ContactosCALLE] := Null; +end; + function TContactosBusinessProcessorRules.GetPOBLACIONValue: String; begin result := BusinessProcessor.CurrentChange.NewValueByName[fld_ContactosPOBLACION]; end; +function TContactosBusinessProcessorRules.GetPOBLACIONIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_ContactosPOBLACION]); +end; + function TContactosBusinessProcessorRules.GetOldPOBLACIONValue: String; begin result := BusinessProcessor.CurrentChange.OldValueByName[fld_ContactosPOBLACION]; end; +function TContactosBusinessProcessorRules.GetOldPOBLACIONIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_ContactosPOBLACION]); +end; + procedure TContactosBusinessProcessorRules.SetPOBLACIONValue(const aValue: String); begin BusinessProcessor.CurrentChange.NewValueByName[fld_ContactosPOBLACION] := aValue; end; +procedure TContactosBusinessProcessorRules.SetPOBLACIONIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_ContactosPOBLACION] := Null; +end; + function TContactosBusinessProcessorRules.GetPROVINCIAValue: String; begin result := BusinessProcessor.CurrentChange.NewValueByName[fld_ContactosPROVINCIA]; end; +function TContactosBusinessProcessorRules.GetPROVINCIAIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_ContactosPROVINCIA]); +end; + function TContactosBusinessProcessorRules.GetOldPROVINCIAValue: String; begin result := BusinessProcessor.CurrentChange.OldValueByName[fld_ContactosPROVINCIA]; end; +function TContactosBusinessProcessorRules.GetOldPROVINCIAIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_ContactosPROVINCIA]); +end; + procedure TContactosBusinessProcessorRules.SetPROVINCIAValue(const aValue: String); begin BusinessProcessor.CurrentChange.NewValueByName[fld_ContactosPROVINCIA] := aValue; end; +procedure TContactosBusinessProcessorRules.SetPROVINCIAIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_ContactosPROVINCIA] := Null; +end; + function TContactosBusinessProcessorRules.GetCODIGO_POSTALValue: String; begin result := BusinessProcessor.CurrentChange.NewValueByName[fld_ContactosCODIGO_POSTAL]; end; +function TContactosBusinessProcessorRules.GetCODIGO_POSTALIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_ContactosCODIGO_POSTAL]); +end; + function TContactosBusinessProcessorRules.GetOldCODIGO_POSTALValue: String; begin result := BusinessProcessor.CurrentChange.OldValueByName[fld_ContactosCODIGO_POSTAL]; end; +function TContactosBusinessProcessorRules.GetOldCODIGO_POSTALIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_ContactosCODIGO_POSTAL]); +end; + procedure TContactosBusinessProcessorRules.SetCODIGO_POSTALValue(const aValue: String); begin BusinessProcessor.CurrentChange.NewValueByName[fld_ContactosCODIGO_POSTAL] := aValue; end; +procedure TContactosBusinessProcessorRules.SetCODIGO_POSTALIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_ContactosCODIGO_POSTAL] := Null; +end; + function TContactosBusinessProcessorRules.GetTELEFONO_1Value: String; begin result := BusinessProcessor.CurrentChange.NewValueByName[fld_ContactosTELEFONO_1]; end; +function TContactosBusinessProcessorRules.GetTELEFONO_1IsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_ContactosTELEFONO_1]); +end; + function TContactosBusinessProcessorRules.GetOldTELEFONO_1Value: String; begin result := BusinessProcessor.CurrentChange.OldValueByName[fld_ContactosTELEFONO_1]; end; +function TContactosBusinessProcessorRules.GetOldTELEFONO_1IsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_ContactosTELEFONO_1]); +end; + procedure TContactosBusinessProcessorRules.SetTELEFONO_1Value(const aValue: String); begin BusinessProcessor.CurrentChange.NewValueByName[fld_ContactosTELEFONO_1] := aValue; end; +procedure TContactosBusinessProcessorRules.SetTELEFONO_1IsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_ContactosTELEFONO_1] := Null; +end; + function TContactosBusinessProcessorRules.GetTELEFONO_2Value: String; begin result := BusinessProcessor.CurrentChange.NewValueByName[fld_ContactosTELEFONO_2]; end; +function TContactosBusinessProcessorRules.GetTELEFONO_2IsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_ContactosTELEFONO_2]); +end; + function TContactosBusinessProcessorRules.GetOldTELEFONO_2Value: String; begin result := BusinessProcessor.CurrentChange.OldValueByName[fld_ContactosTELEFONO_2]; end; +function TContactosBusinessProcessorRules.GetOldTELEFONO_2IsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_ContactosTELEFONO_2]); +end; + procedure TContactosBusinessProcessorRules.SetTELEFONO_2Value(const aValue: String); begin BusinessProcessor.CurrentChange.NewValueByName[fld_ContactosTELEFONO_2] := aValue; end; +procedure TContactosBusinessProcessorRules.SetTELEFONO_2IsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_ContactosTELEFONO_2] := Null; +end; + function TContactosBusinessProcessorRules.GetMOVIL_1Value: String; begin result := BusinessProcessor.CurrentChange.NewValueByName[fld_ContactosMOVIL_1]; end; +function TContactosBusinessProcessorRules.GetMOVIL_1IsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_ContactosMOVIL_1]); +end; + function TContactosBusinessProcessorRules.GetOldMOVIL_1Value: String; begin result := BusinessProcessor.CurrentChange.OldValueByName[fld_ContactosMOVIL_1]; end; +function TContactosBusinessProcessorRules.GetOldMOVIL_1IsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_ContactosMOVIL_1]); +end; + procedure TContactosBusinessProcessorRules.SetMOVIL_1Value(const aValue: String); begin BusinessProcessor.CurrentChange.NewValueByName[fld_ContactosMOVIL_1] := aValue; end; +procedure TContactosBusinessProcessorRules.SetMOVIL_1IsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_ContactosMOVIL_1] := Null; +end; + function TContactosBusinessProcessorRules.GetMOVIL_2Value: String; begin result := BusinessProcessor.CurrentChange.NewValueByName[fld_ContactosMOVIL_2]; end; +function TContactosBusinessProcessorRules.GetMOVIL_2IsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_ContactosMOVIL_2]); +end; + function TContactosBusinessProcessorRules.GetOldMOVIL_2Value: String; begin result := BusinessProcessor.CurrentChange.OldValueByName[fld_ContactosMOVIL_2]; end; +function TContactosBusinessProcessorRules.GetOldMOVIL_2IsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_ContactosMOVIL_2]); +end; + procedure TContactosBusinessProcessorRules.SetMOVIL_2Value(const aValue: String); begin BusinessProcessor.CurrentChange.NewValueByName[fld_ContactosMOVIL_2] := aValue; end; +procedure TContactosBusinessProcessorRules.SetMOVIL_2IsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_ContactosMOVIL_2] := Null; +end; + function TContactosBusinessProcessorRules.GetFAXValue: String; begin result := BusinessProcessor.CurrentChange.NewValueByName[fld_ContactosFAX]; end; +function TContactosBusinessProcessorRules.GetFAXIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_ContactosFAX]); +end; + function TContactosBusinessProcessorRules.GetOldFAXValue: String; begin result := BusinessProcessor.CurrentChange.OldValueByName[fld_ContactosFAX]; end; +function TContactosBusinessProcessorRules.GetOldFAXIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_ContactosFAX]); +end; + procedure TContactosBusinessProcessorRules.SetFAXValue(const aValue: String); begin BusinessProcessor.CurrentChange.NewValueByName[fld_ContactosFAX] := aValue; end; +procedure TContactosBusinessProcessorRules.SetFAXIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_ContactosFAX] := Null; +end; + function TContactosBusinessProcessorRules.GetEMAIL_1Value: String; begin result := BusinessProcessor.CurrentChange.NewValueByName[fld_ContactosEMAIL_1]; end; +function TContactosBusinessProcessorRules.GetEMAIL_1IsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_ContactosEMAIL_1]); +end; + function TContactosBusinessProcessorRules.GetOldEMAIL_1Value: String; begin result := BusinessProcessor.CurrentChange.OldValueByName[fld_ContactosEMAIL_1]; end; +function TContactosBusinessProcessorRules.GetOldEMAIL_1IsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_ContactosEMAIL_1]); +end; + procedure TContactosBusinessProcessorRules.SetEMAIL_1Value(const aValue: String); begin BusinessProcessor.CurrentChange.NewValueByName[fld_ContactosEMAIL_1] := aValue; end; +procedure TContactosBusinessProcessorRules.SetEMAIL_1IsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_ContactosEMAIL_1] := Null; +end; + function TContactosBusinessProcessorRules.GetEMAIL_2Value: String; begin result := BusinessProcessor.CurrentChange.NewValueByName[fld_ContactosEMAIL_2]; end; +function TContactosBusinessProcessorRules.GetEMAIL_2IsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_ContactosEMAIL_2]); +end; + function TContactosBusinessProcessorRules.GetOldEMAIL_2Value: String; begin result := BusinessProcessor.CurrentChange.OldValueByName[fld_ContactosEMAIL_2]; end; +function TContactosBusinessProcessorRules.GetOldEMAIL_2IsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_ContactosEMAIL_2]); +end; + procedure TContactosBusinessProcessorRules.SetEMAIL_2Value(const aValue: String); begin BusinessProcessor.CurrentChange.NewValueByName[fld_ContactosEMAIL_2] := aValue; end; +procedure TContactosBusinessProcessorRules.SetEMAIL_2IsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_ContactosEMAIL_2] := Null; +end; + function TContactosBusinessProcessorRules.GetPAGINA_WEBValue: String; begin result := BusinessProcessor.CurrentChange.NewValueByName[fld_ContactosPAGINA_WEB]; end; +function TContactosBusinessProcessorRules.GetPAGINA_WEBIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_ContactosPAGINA_WEB]); +end; + function TContactosBusinessProcessorRules.GetOldPAGINA_WEBValue: String; begin result := BusinessProcessor.CurrentChange.OldValueByName[fld_ContactosPAGINA_WEB]; end; +function TContactosBusinessProcessorRules.GetOldPAGINA_WEBIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_ContactosPAGINA_WEB]); +end; + procedure TContactosBusinessProcessorRules.SetPAGINA_WEBValue(const aValue: String); begin BusinessProcessor.CurrentChange.NewValueByName[fld_ContactosPAGINA_WEB] := aValue; end; +procedure TContactosBusinessProcessorRules.SetPAGINA_WEBIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_ContactosPAGINA_WEB] := Null; +end; + function TContactosBusinessProcessorRules.GetNOTASValue: IROStrings; begin - result := NewROStrings(); + result := f_NOTAS; result.Text := BusinessProcessor.CurrentChange.NewValueByName[fld_ContactosNOTAS]; end; +function TContactosBusinessProcessorRules.GetNOTASIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_ContactosNOTAS]); +end; + function TContactosBusinessProcessorRules.GetOldNOTASValue: IROStrings; begin result := NewROStrings(); result.Text := BusinessProcessor.CurrentChange.OldValueByName[fld_ContactosNOTAS]; end; -procedure TContactosBusinessProcessorRules.SetNOTASValue(const aValue: IROStrings); +function TContactosBusinessProcessorRules.GetOldNOTASIsNull: Boolean; begin - BusinessProcessor.CurrentChange.NewValueByName[fld_ContactosNOTAS] := aValue.Text; + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_ContactosNOTAS]); +end; + +procedure TContactosBusinessProcessorRules.SetNOTASIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_ContactosNOTAS] := Null; +end; + +function TContactosBusinessProcessorRules.GetFECHA_ALTAValue: DateTime; +begin + result := BusinessProcessor.CurrentChange.NewValueByName[fld_ContactosFECHA_ALTA]; +end; + +function TContactosBusinessProcessorRules.GetFECHA_ALTAIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_ContactosFECHA_ALTA]); +end; + +function TContactosBusinessProcessorRules.GetOldFECHA_ALTAValue: DateTime; +begin + result := BusinessProcessor.CurrentChange.OldValueByName[fld_ContactosFECHA_ALTA]; +end; + +function TContactosBusinessProcessorRules.GetOldFECHA_ALTAIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_ContactosFECHA_ALTA]); +end; + +procedure TContactosBusinessProcessorRules.SetFECHA_ALTAValue(const aValue: DateTime); +begin + BusinessProcessor.CurrentChange.NewValueByName[fld_ContactosFECHA_ALTA] := aValue; +end; + +procedure TContactosBusinessProcessorRules.SetFECHA_ALTAIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_ContactosFECHA_ALTA] := Null; +end; + +function TContactosBusinessProcessorRules.GetFECHA_MODIFICACIONValue: DateTime; +begin + result := BusinessProcessor.CurrentChange.NewValueByName[fld_ContactosFECHA_MODIFICACION]; +end; + +function TContactosBusinessProcessorRules.GetFECHA_MODIFICACIONIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_ContactosFECHA_MODIFICACION]); +end; + +function TContactosBusinessProcessorRules.GetOldFECHA_MODIFICACIONValue: DateTime; +begin + result := BusinessProcessor.CurrentChange.OldValueByName[fld_ContactosFECHA_MODIFICACION]; +end; + +function TContactosBusinessProcessorRules.GetOldFECHA_MODIFICACIONIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_ContactosFECHA_MODIFICACION]); +end; + +procedure TContactosBusinessProcessorRules.SetFECHA_MODIFICACIONValue(const aValue: DateTime); +begin + BusinessProcessor.CurrentChange.NewValueByName[fld_ContactosFECHA_MODIFICACION] := aValue; +end; + +procedure TContactosBusinessProcessorRules.SetFECHA_MODIFICACIONIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_ContactosFECHA_MODIFICACION] := Null; end; function TContactosBusinessProcessorRules.GetUSUARIOValue: String; @@ -1551,46 +2999,94 @@ begin result := BusinessProcessor.CurrentChange.NewValueByName[fld_ContactosUSUARIO]; end; +function TContactosBusinessProcessorRules.GetUSUARIOIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_ContactosUSUARIO]); +end; + function TContactosBusinessProcessorRules.GetOldUSUARIOValue: String; begin result := BusinessProcessor.CurrentChange.OldValueByName[fld_ContactosUSUARIO]; end; +function TContactosBusinessProcessorRules.GetOldUSUARIOIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_ContactosUSUARIO]); +end; + procedure TContactosBusinessProcessorRules.SetUSUARIOValue(const aValue: String); begin BusinessProcessor.CurrentChange.NewValueByName[fld_ContactosUSUARIO] := aValue; end; +procedure TContactosBusinessProcessorRules.SetUSUARIOIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_ContactosUSUARIO] := Null; +end; + function TContactosBusinessProcessorRules.GetID_EMPRESAValue: Integer; begin result := BusinessProcessor.CurrentChange.NewValueByName[fld_ContactosID_EMPRESA]; end; +function TContactosBusinessProcessorRules.GetID_EMPRESAIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_ContactosID_EMPRESA]); +end; + function TContactosBusinessProcessorRules.GetOldID_EMPRESAValue: Integer; begin result := BusinessProcessor.CurrentChange.OldValueByName[fld_ContactosID_EMPRESA]; end; +function TContactosBusinessProcessorRules.GetOldID_EMPRESAIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_ContactosID_EMPRESA]); +end; + procedure TContactosBusinessProcessorRules.SetID_EMPRESAValue(const aValue: Integer); begin BusinessProcessor.CurrentChange.NewValueByName[fld_ContactosID_EMPRESA] := aValue; end; +procedure TContactosBusinessProcessorRules.SetID_EMPRESAIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_ContactosID_EMPRESA] := Null; +end; + function TContactosBusinessProcessorRules.GetREFERENCIAValue: String; begin result := BusinessProcessor.CurrentChange.NewValueByName[fld_ContactosREFERENCIA]; end; +function TContactosBusinessProcessorRules.GetREFERENCIAIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_ContactosREFERENCIA]); +end; + function TContactosBusinessProcessorRules.GetOldREFERENCIAValue: String; begin result := BusinessProcessor.CurrentChange.OldValueByName[fld_ContactosREFERENCIA]; end; +function TContactosBusinessProcessorRules.GetOldREFERENCIAIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_ContactosREFERENCIA]); +end; + procedure TContactosBusinessProcessorRules.SetREFERENCIAValue(const aValue: String); begin BusinessProcessor.CurrentChange.NewValueByName[fld_ContactosREFERENCIA] := aValue; end; +procedure TContactosBusinessProcessorRules.SetREFERENCIAIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_ContactosREFERENCIA] := Null; +end; + { TGruposClienteBusinessProcessorRules } constructor TGruposClienteBusinessProcessorRules.Create(aBusinessProcessor: TDABusinessProcessor); @@ -1608,16 +3104,32 @@ begin result := BusinessProcessor.CurrentChange.NewValueByName[fld_GruposClienteDESCRIPCION]; end; +function TGruposClienteBusinessProcessorRules.GetDESCRIPCIONIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_GruposClienteDESCRIPCION]); +end; + function TGruposClienteBusinessProcessorRules.GetOldDESCRIPCIONValue: String; begin result := BusinessProcessor.CurrentChange.OldValueByName[fld_GruposClienteDESCRIPCION]; end; +function TGruposClienteBusinessProcessorRules.GetOldDESCRIPCIONIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_GruposClienteDESCRIPCION]); +end; + procedure TGruposClienteBusinessProcessorRules.SetDESCRIPCIONValue(const aValue: String); begin BusinessProcessor.CurrentChange.NewValueByName[fld_GruposClienteDESCRIPCION] := aValue; end; +procedure TGruposClienteBusinessProcessorRules.SetDESCRIPCIONIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_GruposClienteDESCRIPCION] := Null; +end; + { TDatosBancariosBusinessProcessorRules } constructor TDatosBancariosBusinessProcessorRules.Create(aBusinessProcessor: TDABusinessProcessor); @@ -1635,153 +3147,291 @@ begin result := BusinessProcessor.CurrentChange.NewValueByName[fld_DatosBancariosID]; end; +function TDatosBancariosBusinessProcessorRules.GetIDIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_DatosBancariosID]); +end; + function TDatosBancariosBusinessProcessorRules.GetOldIDValue: Integer; begin result := BusinessProcessor.CurrentChange.OldValueByName[fld_DatosBancariosID]; end; +function TDatosBancariosBusinessProcessorRules.GetOldIDIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_DatosBancariosID]); +end; + procedure TDatosBancariosBusinessProcessorRules.SetIDValue(const aValue: Integer); begin BusinessProcessor.CurrentChange.NewValueByName[fld_DatosBancariosID] := aValue; end; +procedure TDatosBancariosBusinessProcessorRules.SetIDIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_DatosBancariosID] := Null; +end; + function TDatosBancariosBusinessProcessorRules.GetID_CONTACTOValue: Integer; begin result := BusinessProcessor.CurrentChange.NewValueByName[fld_DatosBancariosID_CONTACTO]; end; +function TDatosBancariosBusinessProcessorRules.GetID_CONTACTOIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_DatosBancariosID_CONTACTO]); +end; + function TDatosBancariosBusinessProcessorRules.GetOldID_CONTACTOValue: Integer; begin result := BusinessProcessor.CurrentChange.OldValueByName[fld_DatosBancariosID_CONTACTO]; end; +function TDatosBancariosBusinessProcessorRules.GetOldID_CONTACTOIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_DatosBancariosID_CONTACTO]); +end; + procedure TDatosBancariosBusinessProcessorRules.SetID_CONTACTOValue(const aValue: Integer); begin BusinessProcessor.CurrentChange.NewValueByName[fld_DatosBancariosID_CONTACTO] := aValue; end; +procedure TDatosBancariosBusinessProcessorRules.SetID_CONTACTOIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_DatosBancariosID_CONTACTO] := Null; +end; + function TDatosBancariosBusinessProcessorRules.GetTITULARValue: String; begin result := BusinessProcessor.CurrentChange.NewValueByName[fld_DatosBancariosTITULAR]; end; +function TDatosBancariosBusinessProcessorRules.GetTITULARIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_DatosBancariosTITULAR]); +end; + function TDatosBancariosBusinessProcessorRules.GetOldTITULARValue: String; begin result := BusinessProcessor.CurrentChange.OldValueByName[fld_DatosBancariosTITULAR]; end; +function TDatosBancariosBusinessProcessorRules.GetOldTITULARIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_DatosBancariosTITULAR]); +end; + procedure TDatosBancariosBusinessProcessorRules.SetTITULARValue(const aValue: String); begin BusinessProcessor.CurrentChange.NewValueByName[fld_DatosBancariosTITULAR] := aValue; end; +procedure TDatosBancariosBusinessProcessorRules.SetTITULARIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_DatosBancariosTITULAR] := Null; +end; + function TDatosBancariosBusinessProcessorRules.GetENTIDADValue: String; begin result := BusinessProcessor.CurrentChange.NewValueByName[fld_DatosBancariosENTIDAD]; end; +function TDatosBancariosBusinessProcessorRules.GetENTIDADIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_DatosBancariosENTIDAD]); +end; + function TDatosBancariosBusinessProcessorRules.GetOldENTIDADValue: String; begin result := BusinessProcessor.CurrentChange.OldValueByName[fld_DatosBancariosENTIDAD]; end; +function TDatosBancariosBusinessProcessorRules.GetOldENTIDADIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_DatosBancariosENTIDAD]); +end; + procedure TDatosBancariosBusinessProcessorRules.SetENTIDADValue(const aValue: String); begin BusinessProcessor.CurrentChange.NewValueByName[fld_DatosBancariosENTIDAD] := aValue; end; +procedure TDatosBancariosBusinessProcessorRules.SetENTIDADIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_DatosBancariosENTIDAD] := Null; +end; + function TDatosBancariosBusinessProcessorRules.GetSUCURSALValue: String; begin result := BusinessProcessor.CurrentChange.NewValueByName[fld_DatosBancariosSUCURSAL]; end; +function TDatosBancariosBusinessProcessorRules.GetSUCURSALIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_DatosBancariosSUCURSAL]); +end; + function TDatosBancariosBusinessProcessorRules.GetOldSUCURSALValue: String; begin result := BusinessProcessor.CurrentChange.OldValueByName[fld_DatosBancariosSUCURSAL]; end; +function TDatosBancariosBusinessProcessorRules.GetOldSUCURSALIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_DatosBancariosSUCURSAL]); +end; + procedure TDatosBancariosBusinessProcessorRules.SetSUCURSALValue(const aValue: String); begin BusinessProcessor.CurrentChange.NewValueByName[fld_DatosBancariosSUCURSAL] := aValue; end; +procedure TDatosBancariosBusinessProcessorRules.SetSUCURSALIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_DatosBancariosSUCURSAL] := Null; +end; + function TDatosBancariosBusinessProcessorRules.GetDCValue: String; begin result := BusinessProcessor.CurrentChange.NewValueByName[fld_DatosBancariosDC]; end; +function TDatosBancariosBusinessProcessorRules.GetDCIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_DatosBancariosDC]); +end; + function TDatosBancariosBusinessProcessorRules.GetOldDCValue: String; begin result := BusinessProcessor.CurrentChange.OldValueByName[fld_DatosBancariosDC]; end; +function TDatosBancariosBusinessProcessorRules.GetOldDCIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_DatosBancariosDC]); +end; + procedure TDatosBancariosBusinessProcessorRules.SetDCValue(const aValue: String); begin BusinessProcessor.CurrentChange.NewValueByName[fld_DatosBancariosDC] := aValue; end; +procedure TDatosBancariosBusinessProcessorRules.SetDCIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_DatosBancariosDC] := Null; +end; + function TDatosBancariosBusinessProcessorRules.GetCUENTAValue: String; begin result := BusinessProcessor.CurrentChange.NewValueByName[fld_DatosBancariosCUENTA]; end; +function TDatosBancariosBusinessProcessorRules.GetCUENTAIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_DatosBancariosCUENTA]); +end; + function TDatosBancariosBusinessProcessorRules.GetOldCUENTAValue: String; begin result := BusinessProcessor.CurrentChange.OldValueByName[fld_DatosBancariosCUENTA]; end; +function TDatosBancariosBusinessProcessorRules.GetOldCUENTAIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_DatosBancariosCUENTA]); +end; + procedure TDatosBancariosBusinessProcessorRules.SetCUENTAValue(const aValue: String); begin BusinessProcessor.CurrentChange.NewValueByName[fld_DatosBancariosCUENTA] := aValue; end; - -{ TContactosCategoriasBusinessProcessorRules } -constructor TContactosCategoriasBusinessProcessorRules.Create(aBusinessProcessor: TDABusinessProcessor); +procedure TDatosBancariosBusinessProcessorRules.SetCUENTAIsNull(const aValue: Boolean); begin - inherited; + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_DatosBancariosCUENTA] := Null; end; -destructor TContactosCategoriasBusinessProcessorRules.Destroy; +function TDatosBancariosBusinessProcessorRules.GetFECHA_ALTAValue: DateTime; begin - inherited; + result := BusinessProcessor.CurrentChange.NewValueByName[fld_DatosBancariosFECHA_ALTA]; end; -function TContactosCategoriasBusinessProcessorRules.GetID_CONTACTOValue: Integer; +function TDatosBancariosBusinessProcessorRules.GetFECHA_ALTAIsNull: Boolean; begin - result := BusinessProcessor.CurrentChange.NewValueByName[fld_ContactosCategoriasID_CONTACTO]; + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_DatosBancariosFECHA_ALTA]); end; -function TContactosCategoriasBusinessProcessorRules.GetOldID_CONTACTOValue: Integer; +function TDatosBancariosBusinessProcessorRules.GetOldFECHA_ALTAValue: DateTime; begin - result := BusinessProcessor.CurrentChange.OldValueByName[fld_ContactosCategoriasID_CONTACTO]; + result := BusinessProcessor.CurrentChange.OldValueByName[fld_DatosBancariosFECHA_ALTA]; end; -procedure TContactosCategoriasBusinessProcessorRules.SetID_CONTACTOValue(const aValue: Integer); +function TDatosBancariosBusinessProcessorRules.GetOldFECHA_ALTAIsNull: Boolean; begin - BusinessProcessor.CurrentChange.NewValueByName[fld_ContactosCategoriasID_CONTACTO] := aValue; + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_DatosBancariosFECHA_ALTA]); end; -function TContactosCategoriasBusinessProcessorRules.GetID_CATEGORIAValue: Integer; +procedure TDatosBancariosBusinessProcessorRules.SetFECHA_ALTAValue(const aValue: DateTime); begin - result := BusinessProcessor.CurrentChange.NewValueByName[fld_ContactosCategoriasID_CATEGORIA]; + BusinessProcessor.CurrentChange.NewValueByName[fld_DatosBancariosFECHA_ALTA] := aValue; end; -function TContactosCategoriasBusinessProcessorRules.GetOldID_CATEGORIAValue: Integer; +procedure TDatosBancariosBusinessProcessorRules.SetFECHA_ALTAIsNull(const aValue: Boolean); begin - result := BusinessProcessor.CurrentChange.OldValueByName[fld_ContactosCategoriasID_CATEGORIA]; + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_DatosBancariosFECHA_ALTA] := Null; end; -procedure TContactosCategoriasBusinessProcessorRules.SetID_CATEGORIAValue(const aValue: Integer); +function TDatosBancariosBusinessProcessorRules.GetFECHA_MODIFICACIONValue: DateTime; begin - BusinessProcessor.CurrentChange.NewValueByName[fld_ContactosCategoriasID_CATEGORIA] := aValue; + result := BusinessProcessor.CurrentChange.NewValueByName[fld_DatosBancariosFECHA_MODIFICACION]; +end; + +function TDatosBancariosBusinessProcessorRules.GetFECHA_MODIFICACIONIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_DatosBancariosFECHA_MODIFICACION]); +end; + +function TDatosBancariosBusinessProcessorRules.GetOldFECHA_MODIFICACIONValue: DateTime; +begin + result := BusinessProcessor.CurrentChange.OldValueByName[fld_DatosBancariosFECHA_MODIFICACION]; +end; + +function TDatosBancariosBusinessProcessorRules.GetOldFECHA_MODIFICACIONIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_DatosBancariosFECHA_MODIFICACION]); +end; + +procedure TDatosBancariosBusinessProcessorRules.SetFECHA_MODIFICACIONValue(const aValue: DateTime); +begin + BusinessProcessor.CurrentChange.NewValueByName[fld_DatosBancariosFECHA_MODIFICACION] := aValue; +end; + +procedure TDatosBancariosBusinessProcessorRules.SetFECHA_MODIFICACIONIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_DatosBancariosFECHA_MODIFICACION] := Null; end; { TClientesBusinessProcessorRules } constructor TClientesBusinessProcessorRules.Create(aBusinessProcessor: TDABusinessProcessor); +var + StrList: TStringList; begin inherited; + + StrList := TStringList.Create; + StrList.OnChange := NOTAS_OnChange; + f_NOTAS := NewROStrings(StrList,True); end; destructor TClientesBusinessProcessorRules.Destroy; @@ -1789,79 +3439,133 @@ begin inherited; end; +procedure TClientesBusinessProcessorRules.NOTAS_OnChange(Sender: TObject); +begin + BusinessProcessor.CurrentChange.NewValueByName[fld_ClientesNOTAS] := TStringList(Sender).Text; +end; + function TClientesBusinessProcessorRules.GetIDValue: Integer; begin result := BusinessProcessor.CurrentChange.NewValueByName[fld_ClientesID]; end; +function TClientesBusinessProcessorRules.GetIDIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_ClientesID]); +end; + function TClientesBusinessProcessorRules.GetOldIDValue: Integer; begin result := BusinessProcessor.CurrentChange.OldValueByName[fld_ClientesID]; end; +function TClientesBusinessProcessorRules.GetOldIDIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_ClientesID]); +end; + procedure TClientesBusinessProcessorRules.SetIDValue(const aValue: Integer); begin BusinessProcessor.CurrentChange.NewValueByName[fld_ClientesID] := aValue; end; +procedure TClientesBusinessProcessorRules.SetIDIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_ClientesID] := Null; +end; + function TClientesBusinessProcessorRules.GetID_CATEGORIAValue: Integer; begin result := BusinessProcessor.CurrentChange.NewValueByName[fld_ClientesID_CATEGORIA]; end; +function TClientesBusinessProcessorRules.GetID_CATEGORIAIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_ClientesID_CATEGORIA]); +end; + function TClientesBusinessProcessorRules.GetOldID_CATEGORIAValue: Integer; begin result := BusinessProcessor.CurrentChange.OldValueByName[fld_ClientesID_CATEGORIA]; end; +function TClientesBusinessProcessorRules.GetOldID_CATEGORIAIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_ClientesID_CATEGORIA]); +end; + procedure TClientesBusinessProcessorRules.SetID_CATEGORIAValue(const aValue: Integer); begin BusinessProcessor.CurrentChange.NewValueByName[fld_ClientesID_CATEGORIA] := aValue; end; +procedure TClientesBusinessProcessorRules.SetID_CATEGORIAIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_ClientesID_CATEGORIA] := Null; +end; + function TClientesBusinessProcessorRules.GetNIF_CIFValue: String; begin result := BusinessProcessor.CurrentChange.NewValueByName[fld_ClientesNIF_CIF]; end; +function TClientesBusinessProcessorRules.GetNIF_CIFIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_ClientesNIF_CIF]); +end; + function TClientesBusinessProcessorRules.GetOldNIF_CIFValue: String; begin result := BusinessProcessor.CurrentChange.OldValueByName[fld_ClientesNIF_CIF]; end; +function TClientesBusinessProcessorRules.GetOldNIF_CIFIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_ClientesNIF_CIF]); +end; + procedure TClientesBusinessProcessorRules.SetNIF_CIFValue(const aValue: String); begin BusinessProcessor.CurrentChange.NewValueByName[fld_ClientesNIF_CIF] := aValue; end; +procedure TClientesBusinessProcessorRules.SetNIF_CIFIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_ClientesNIF_CIF] := Null; +end; + function TClientesBusinessProcessorRules.GetNOMBREValue: String; begin result := BusinessProcessor.CurrentChange.NewValueByName[fld_ClientesNOMBRE]; end; +function TClientesBusinessProcessorRules.GetNOMBREIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_ClientesNOMBRE]); +end; + function TClientesBusinessProcessorRules.GetOldNOMBREValue: String; begin result := BusinessProcessor.CurrentChange.OldValueByName[fld_ClientesNOMBRE]; end; +function TClientesBusinessProcessorRules.GetOldNOMBREIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_ClientesNOMBRE]); +end; + procedure TClientesBusinessProcessorRules.SetNOMBREValue(const aValue: String); begin BusinessProcessor.CurrentChange.NewValueByName[fld_ClientesNOMBRE] := aValue; end; -function TClientesBusinessProcessorRules.GetCALLEValue: String; +procedure TClientesBusinessProcessorRules.SetNOMBREIsNull(const aValue: Boolean); begin - result := BusinessProcessor.CurrentChange.NewValueByName[fld_ClientesCALLE]; -end; - -function TClientesBusinessProcessorRules.GetOldCALLEValue: String; -begin - result := BusinessProcessor.CurrentChange.OldValueByName[fld_ClientesCALLE]; -end; - -procedure TClientesBusinessProcessorRules.SetCALLEValue(const aValue: String); -begin - BusinessProcessor.CurrentChange.NewValueByName[fld_ClientesCALLE] := aValue; + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_ClientesNOMBRE] := Null; end; function TClientesBusinessProcessorRules.GetPERSONA_CONTACTOValue: String; @@ -1869,196 +3573,492 @@ begin result := BusinessProcessor.CurrentChange.NewValueByName[fld_ClientesPERSONA_CONTACTO]; end; +function TClientesBusinessProcessorRules.GetPERSONA_CONTACTOIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_ClientesPERSONA_CONTACTO]); +end; + function TClientesBusinessProcessorRules.GetOldPERSONA_CONTACTOValue: String; begin result := BusinessProcessor.CurrentChange.OldValueByName[fld_ClientesPERSONA_CONTACTO]; end; +function TClientesBusinessProcessorRules.GetOldPERSONA_CONTACTOIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_ClientesPERSONA_CONTACTO]); +end; + procedure TClientesBusinessProcessorRules.SetPERSONA_CONTACTOValue(const aValue: String); begin BusinessProcessor.CurrentChange.NewValueByName[fld_ClientesPERSONA_CONTACTO] := aValue; end; +procedure TClientesBusinessProcessorRules.SetPERSONA_CONTACTOIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_ClientesPERSONA_CONTACTO] := Null; +end; + +function TClientesBusinessProcessorRules.GetCALLEValue: String; +begin + result := BusinessProcessor.CurrentChange.NewValueByName[fld_ClientesCALLE]; +end; + +function TClientesBusinessProcessorRules.GetCALLEIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_ClientesCALLE]); +end; + +function TClientesBusinessProcessorRules.GetOldCALLEValue: String; +begin + result := BusinessProcessor.CurrentChange.OldValueByName[fld_ClientesCALLE]; +end; + +function TClientesBusinessProcessorRules.GetOldCALLEIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_ClientesCALLE]); +end; + +procedure TClientesBusinessProcessorRules.SetCALLEValue(const aValue: String); +begin + BusinessProcessor.CurrentChange.NewValueByName[fld_ClientesCALLE] := aValue; +end; + +procedure TClientesBusinessProcessorRules.SetCALLEIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_ClientesCALLE] := Null; +end; + function TClientesBusinessProcessorRules.GetPOBLACIONValue: String; begin result := BusinessProcessor.CurrentChange.NewValueByName[fld_ClientesPOBLACION]; end; +function TClientesBusinessProcessorRules.GetPOBLACIONIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_ClientesPOBLACION]); +end; + function TClientesBusinessProcessorRules.GetOldPOBLACIONValue: String; begin result := BusinessProcessor.CurrentChange.OldValueByName[fld_ClientesPOBLACION]; end; +function TClientesBusinessProcessorRules.GetOldPOBLACIONIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_ClientesPOBLACION]); +end; + procedure TClientesBusinessProcessorRules.SetPOBLACIONValue(const aValue: String); begin BusinessProcessor.CurrentChange.NewValueByName[fld_ClientesPOBLACION] := aValue; end; +procedure TClientesBusinessProcessorRules.SetPOBLACIONIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_ClientesPOBLACION] := Null; +end; + function TClientesBusinessProcessorRules.GetPROVINCIAValue: String; begin result := BusinessProcessor.CurrentChange.NewValueByName[fld_ClientesPROVINCIA]; end; +function TClientesBusinessProcessorRules.GetPROVINCIAIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_ClientesPROVINCIA]); +end; + function TClientesBusinessProcessorRules.GetOldPROVINCIAValue: String; begin result := BusinessProcessor.CurrentChange.OldValueByName[fld_ClientesPROVINCIA]; end; +function TClientesBusinessProcessorRules.GetOldPROVINCIAIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_ClientesPROVINCIA]); +end; + procedure TClientesBusinessProcessorRules.SetPROVINCIAValue(const aValue: String); begin BusinessProcessor.CurrentChange.NewValueByName[fld_ClientesPROVINCIA] := aValue; end; +procedure TClientesBusinessProcessorRules.SetPROVINCIAIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_ClientesPROVINCIA] := Null; +end; + function TClientesBusinessProcessorRules.GetCODIGO_POSTALValue: String; begin result := BusinessProcessor.CurrentChange.NewValueByName[fld_ClientesCODIGO_POSTAL]; end; +function TClientesBusinessProcessorRules.GetCODIGO_POSTALIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_ClientesCODIGO_POSTAL]); +end; + function TClientesBusinessProcessorRules.GetOldCODIGO_POSTALValue: String; begin result := BusinessProcessor.CurrentChange.OldValueByName[fld_ClientesCODIGO_POSTAL]; end; +function TClientesBusinessProcessorRules.GetOldCODIGO_POSTALIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_ClientesCODIGO_POSTAL]); +end; + procedure TClientesBusinessProcessorRules.SetCODIGO_POSTALValue(const aValue: String); begin BusinessProcessor.CurrentChange.NewValueByName[fld_ClientesCODIGO_POSTAL] := aValue; end; +procedure TClientesBusinessProcessorRules.SetCODIGO_POSTALIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_ClientesCODIGO_POSTAL] := Null; +end; + function TClientesBusinessProcessorRules.GetTELEFONO_1Value: String; begin result := BusinessProcessor.CurrentChange.NewValueByName[fld_ClientesTELEFONO_1]; end; +function TClientesBusinessProcessorRules.GetTELEFONO_1IsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_ClientesTELEFONO_1]); +end; + function TClientesBusinessProcessorRules.GetOldTELEFONO_1Value: String; begin result := BusinessProcessor.CurrentChange.OldValueByName[fld_ClientesTELEFONO_1]; end; +function TClientesBusinessProcessorRules.GetOldTELEFONO_1IsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_ClientesTELEFONO_1]); +end; + procedure TClientesBusinessProcessorRules.SetTELEFONO_1Value(const aValue: String); begin BusinessProcessor.CurrentChange.NewValueByName[fld_ClientesTELEFONO_1] := aValue; end; +procedure TClientesBusinessProcessorRules.SetTELEFONO_1IsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_ClientesTELEFONO_1] := Null; +end; + function TClientesBusinessProcessorRules.GetTELEFONO_2Value: String; begin result := BusinessProcessor.CurrentChange.NewValueByName[fld_ClientesTELEFONO_2]; end; +function TClientesBusinessProcessorRules.GetTELEFONO_2IsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_ClientesTELEFONO_2]); +end; + function TClientesBusinessProcessorRules.GetOldTELEFONO_2Value: String; begin result := BusinessProcessor.CurrentChange.OldValueByName[fld_ClientesTELEFONO_2]; end; +function TClientesBusinessProcessorRules.GetOldTELEFONO_2IsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_ClientesTELEFONO_2]); +end; + procedure TClientesBusinessProcessorRules.SetTELEFONO_2Value(const aValue: String); begin BusinessProcessor.CurrentChange.NewValueByName[fld_ClientesTELEFONO_2] := aValue; end; +procedure TClientesBusinessProcessorRules.SetTELEFONO_2IsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_ClientesTELEFONO_2] := Null; +end; + function TClientesBusinessProcessorRules.GetMOVIL_1Value: String; begin result := BusinessProcessor.CurrentChange.NewValueByName[fld_ClientesMOVIL_1]; end; +function TClientesBusinessProcessorRules.GetMOVIL_1IsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_ClientesMOVIL_1]); +end; + function TClientesBusinessProcessorRules.GetOldMOVIL_1Value: String; begin result := BusinessProcessor.CurrentChange.OldValueByName[fld_ClientesMOVIL_1]; end; +function TClientesBusinessProcessorRules.GetOldMOVIL_1IsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_ClientesMOVIL_1]); +end; + procedure TClientesBusinessProcessorRules.SetMOVIL_1Value(const aValue: String); begin BusinessProcessor.CurrentChange.NewValueByName[fld_ClientesMOVIL_1] := aValue; end; +procedure TClientesBusinessProcessorRules.SetMOVIL_1IsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_ClientesMOVIL_1] := Null; +end; + function TClientesBusinessProcessorRules.GetMOVIL_2Value: String; begin result := BusinessProcessor.CurrentChange.NewValueByName[fld_ClientesMOVIL_2]; end; +function TClientesBusinessProcessorRules.GetMOVIL_2IsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_ClientesMOVIL_2]); +end; + function TClientesBusinessProcessorRules.GetOldMOVIL_2Value: String; begin result := BusinessProcessor.CurrentChange.OldValueByName[fld_ClientesMOVIL_2]; end; +function TClientesBusinessProcessorRules.GetOldMOVIL_2IsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_ClientesMOVIL_2]); +end; + procedure TClientesBusinessProcessorRules.SetMOVIL_2Value(const aValue: String); begin BusinessProcessor.CurrentChange.NewValueByName[fld_ClientesMOVIL_2] := aValue; end; +procedure TClientesBusinessProcessorRules.SetMOVIL_2IsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_ClientesMOVIL_2] := Null; +end; + function TClientesBusinessProcessorRules.GetFAXValue: String; begin result := BusinessProcessor.CurrentChange.NewValueByName[fld_ClientesFAX]; end; +function TClientesBusinessProcessorRules.GetFAXIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_ClientesFAX]); +end; + function TClientesBusinessProcessorRules.GetOldFAXValue: String; begin result := BusinessProcessor.CurrentChange.OldValueByName[fld_ClientesFAX]; end; +function TClientesBusinessProcessorRules.GetOldFAXIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_ClientesFAX]); +end; + procedure TClientesBusinessProcessorRules.SetFAXValue(const aValue: String); begin BusinessProcessor.CurrentChange.NewValueByName[fld_ClientesFAX] := aValue; end; +procedure TClientesBusinessProcessorRules.SetFAXIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_ClientesFAX] := Null; +end; + function TClientesBusinessProcessorRules.GetEMAIL_1Value: String; begin result := BusinessProcessor.CurrentChange.NewValueByName[fld_ClientesEMAIL_1]; end; +function TClientesBusinessProcessorRules.GetEMAIL_1IsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_ClientesEMAIL_1]); +end; + function TClientesBusinessProcessorRules.GetOldEMAIL_1Value: String; begin result := BusinessProcessor.CurrentChange.OldValueByName[fld_ClientesEMAIL_1]; end; +function TClientesBusinessProcessorRules.GetOldEMAIL_1IsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_ClientesEMAIL_1]); +end; + procedure TClientesBusinessProcessorRules.SetEMAIL_1Value(const aValue: String); begin BusinessProcessor.CurrentChange.NewValueByName[fld_ClientesEMAIL_1] := aValue; end; +procedure TClientesBusinessProcessorRules.SetEMAIL_1IsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_ClientesEMAIL_1] := Null; +end; + function TClientesBusinessProcessorRules.GetEMAIL_2Value: String; begin result := BusinessProcessor.CurrentChange.NewValueByName[fld_ClientesEMAIL_2]; end; +function TClientesBusinessProcessorRules.GetEMAIL_2IsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_ClientesEMAIL_2]); +end; + function TClientesBusinessProcessorRules.GetOldEMAIL_2Value: String; begin result := BusinessProcessor.CurrentChange.OldValueByName[fld_ClientesEMAIL_2]; end; +function TClientesBusinessProcessorRules.GetOldEMAIL_2IsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_ClientesEMAIL_2]); +end; + procedure TClientesBusinessProcessorRules.SetEMAIL_2Value(const aValue: String); begin BusinessProcessor.CurrentChange.NewValueByName[fld_ClientesEMAIL_2] := aValue; end; +procedure TClientesBusinessProcessorRules.SetEMAIL_2IsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_ClientesEMAIL_2] := Null; +end; + function TClientesBusinessProcessorRules.GetPAGINA_WEBValue: String; begin result := BusinessProcessor.CurrentChange.NewValueByName[fld_ClientesPAGINA_WEB]; end; +function TClientesBusinessProcessorRules.GetPAGINA_WEBIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_ClientesPAGINA_WEB]); +end; + function TClientesBusinessProcessorRules.GetOldPAGINA_WEBValue: String; begin result := BusinessProcessor.CurrentChange.OldValueByName[fld_ClientesPAGINA_WEB]; end; +function TClientesBusinessProcessorRules.GetOldPAGINA_WEBIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_ClientesPAGINA_WEB]); +end; + procedure TClientesBusinessProcessorRules.SetPAGINA_WEBValue(const aValue: String); begin BusinessProcessor.CurrentChange.NewValueByName[fld_ClientesPAGINA_WEB] := aValue; end; +procedure TClientesBusinessProcessorRules.SetPAGINA_WEBIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_ClientesPAGINA_WEB] := Null; +end; + function TClientesBusinessProcessorRules.GetNOTASValue: IROStrings; begin - result := NewROStrings(); + result := f_NOTAS; result.Text := BusinessProcessor.CurrentChange.NewValueByName[fld_ClientesNOTAS]; end; +function TClientesBusinessProcessorRules.GetNOTASIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_ClientesNOTAS]); +end; + function TClientesBusinessProcessorRules.GetOldNOTASValue: IROStrings; begin result := NewROStrings(); result.Text := BusinessProcessor.CurrentChange.OldValueByName[fld_ClientesNOTAS]; end; -procedure TClientesBusinessProcessorRules.SetNOTASValue(const aValue: IROStrings); +function TClientesBusinessProcessorRules.GetOldNOTASIsNull: Boolean; begin - BusinessProcessor.CurrentChange.NewValueByName[fld_ClientesNOTAS] := aValue.Text; + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_ClientesNOTAS]); +end; + +procedure TClientesBusinessProcessorRules.SetNOTASIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_ClientesNOTAS] := Null; +end; + +function TClientesBusinessProcessorRules.GetFECHA_ALTAValue: DateTime; +begin + result := BusinessProcessor.CurrentChange.NewValueByName[fld_ClientesFECHA_ALTA]; +end; + +function TClientesBusinessProcessorRules.GetFECHA_ALTAIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_ClientesFECHA_ALTA]); +end; + +function TClientesBusinessProcessorRules.GetOldFECHA_ALTAValue: DateTime; +begin + result := BusinessProcessor.CurrentChange.OldValueByName[fld_ClientesFECHA_ALTA]; +end; + +function TClientesBusinessProcessorRules.GetOldFECHA_ALTAIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_ClientesFECHA_ALTA]); +end; + +procedure TClientesBusinessProcessorRules.SetFECHA_ALTAValue(const aValue: DateTime); +begin + BusinessProcessor.CurrentChange.NewValueByName[fld_ClientesFECHA_ALTA] := aValue; +end; + +procedure TClientesBusinessProcessorRules.SetFECHA_ALTAIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_ClientesFECHA_ALTA] := Null; +end; + +function TClientesBusinessProcessorRules.GetFECHA_MODIFICACIONValue: DateTime; +begin + result := BusinessProcessor.CurrentChange.NewValueByName[fld_ClientesFECHA_MODIFICACION]; +end; + +function TClientesBusinessProcessorRules.GetFECHA_MODIFICACIONIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_ClientesFECHA_MODIFICACION]); +end; + +function TClientesBusinessProcessorRules.GetOldFECHA_MODIFICACIONValue: DateTime; +begin + result := BusinessProcessor.CurrentChange.OldValueByName[fld_ClientesFECHA_MODIFICACION]; +end; + +function TClientesBusinessProcessorRules.GetOldFECHA_MODIFICACIONIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_ClientesFECHA_MODIFICACION]); +end; + +procedure TClientesBusinessProcessorRules.SetFECHA_MODIFICACIONValue(const aValue: DateTime); +begin + BusinessProcessor.CurrentChange.NewValueByName[fld_ClientesFECHA_MODIFICACION] := aValue; +end; + +procedure TClientesBusinessProcessorRules.SetFECHA_MODIFICACIONIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_ClientesFECHA_MODIFICACION] := Null; end; function TClientesBusinessProcessorRules.GetUSUARIOValue: String; @@ -2066,119 +4066,92 @@ begin result := BusinessProcessor.CurrentChange.NewValueByName[fld_ClientesUSUARIO]; end; +function TClientesBusinessProcessorRules.GetUSUARIOIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_ClientesUSUARIO]); +end; + function TClientesBusinessProcessorRules.GetOldUSUARIOValue: String; begin result := BusinessProcessor.CurrentChange.OldValueByName[fld_ClientesUSUARIO]; end; +function TClientesBusinessProcessorRules.GetOldUSUARIOIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_ClientesUSUARIO]); +end; + procedure TClientesBusinessProcessorRules.SetUSUARIOValue(const aValue: String); begin BusinessProcessor.CurrentChange.NewValueByName[fld_ClientesUSUARIO] := aValue; end; +procedure TClientesBusinessProcessorRules.SetUSUARIOIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_ClientesUSUARIO] := Null; +end; + function TClientesBusinessProcessorRules.GetID_EMPRESAValue: Integer; begin result := BusinessProcessor.CurrentChange.NewValueByName[fld_ClientesID_EMPRESA]; end; +function TClientesBusinessProcessorRules.GetID_EMPRESAIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_ClientesID_EMPRESA]); +end; + function TClientesBusinessProcessorRules.GetOldID_EMPRESAValue: Integer; begin result := BusinessProcessor.CurrentChange.OldValueByName[fld_ClientesID_EMPRESA]; end; +function TClientesBusinessProcessorRules.GetOldID_EMPRESAIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_ClientesID_EMPRESA]); +end; + procedure TClientesBusinessProcessorRules.SetID_EMPRESAValue(const aValue: Integer); begin BusinessProcessor.CurrentChange.NewValueByName[fld_ClientesID_EMPRESA] := aValue; end; +procedure TClientesBusinessProcessorRules.SetID_EMPRESAIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_ClientesID_EMPRESA] := Null; +end; + function TClientesBusinessProcessorRules.GetREFERENCIAValue: String; begin result := BusinessProcessor.CurrentChange.NewValueByName[fld_ClientesREFERENCIA]; end; +function TClientesBusinessProcessorRules.GetREFERENCIAIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_ClientesREFERENCIA]); +end; + function TClientesBusinessProcessorRules.GetOldREFERENCIAValue: String; begin result := BusinessProcessor.CurrentChange.OldValueByName[fld_ClientesREFERENCIA]; end; +function TClientesBusinessProcessorRules.GetOldREFERENCIAIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_ClientesREFERENCIA]); +end; + procedure TClientesBusinessProcessorRules.SetREFERENCIAValue(const aValue: String); begin BusinessProcessor.CurrentChange.NewValueByName[fld_ClientesREFERENCIA] := aValue; end; -function TClientesBusinessProcessorRules.GetID_TIPO_IVAValue: Integer; +procedure TClientesBusinessProcessorRules.SetREFERENCIAIsNull(const aValue: Boolean); begin - result := BusinessProcessor.CurrentChange.NewValueByName[fld_ClientesID_TIPO_IVA]; -end; - -function TClientesBusinessProcessorRules.GetOldID_TIPO_IVAValue: Integer; -begin - result := BusinessProcessor.CurrentChange.OldValueByName[fld_ClientesID_TIPO_IVA]; -end; - -procedure TClientesBusinessProcessorRules.SetID_TIPO_IVAValue(const aValue: Integer); -begin - BusinessProcessor.CurrentChange.NewValueByName[fld_ClientesID_TIPO_IVA] := aValue; -end; - -function TClientesBusinessProcessorRules.GetREGIMEN_IVAValue: String; -begin - result := BusinessProcessor.CurrentChange.NewValueByName[fld_ClientesREGIMEN_IVA]; -end; - -function TClientesBusinessProcessorRules.GetOldREGIMEN_IVAValue: String; -begin - result := BusinessProcessor.CurrentChange.OldValueByName[fld_ClientesREGIMEN_IVA]; -end; - -procedure TClientesBusinessProcessorRules.SetREGIMEN_IVAValue(const aValue: String); -begin - BusinessProcessor.CurrentChange.NewValueByName[fld_ClientesREGIMEN_IVA] := aValue; -end; - -function TClientesBusinessProcessorRules.GetID_FORMA_PAGOValue: Integer; -begin - result := BusinessProcessor.CurrentChange.NewValueByName[fld_ClientesID_FORMA_PAGO]; -end; - -function TClientesBusinessProcessorRules.GetOldID_FORMA_PAGOValue: Integer; -begin - result := BusinessProcessor.CurrentChange.OldValueByName[fld_ClientesID_FORMA_PAGO]; -end; - -procedure TClientesBusinessProcessorRules.SetID_FORMA_PAGOValue(const aValue: Integer); -begin - BusinessProcessor.CurrentChange.NewValueByName[fld_ClientesID_FORMA_PAGO] := aValue; -end; - -function TClientesBusinessProcessorRules.GetTIENDA_WEBValue: Integer; -begin - result := BusinessProcessor.CurrentChange.NewValueByName[fld_ClientesTIENDA_WEB]; -end; - -function TClientesBusinessProcessorRules.GetOldTIENDA_WEBValue: Integer; -begin - result := BusinessProcessor.CurrentChange.OldValueByName[fld_ClientesTIENDA_WEB]; -end; - -procedure TClientesBusinessProcessorRules.SetTIENDA_WEBValue(const aValue: Integer); -begin - BusinessProcessor.CurrentChange.NewValueByName[fld_ClientesTIENDA_WEB] := aValue; -end; - -function TClientesBusinessProcessorRules.GetRECARGO_EQUIVALENCIAValue: Integer; -begin - result := BusinessProcessor.CurrentChange.NewValueByName[fld_ClientesRECARGO_EQUIVALENCIA]; -end; - -function TClientesBusinessProcessorRules.GetOldRECARGO_EQUIVALENCIAValue: Integer; -begin - result := BusinessProcessor.CurrentChange.OldValueByName[fld_ClientesRECARGO_EQUIVALENCIA]; -end; - -procedure TClientesBusinessProcessorRules.SetRECARGO_EQUIVALENCIAValue(const aValue: Integer); -begin - BusinessProcessor.CurrentChange.NewValueByName[fld_ClientesRECARGO_EQUIVALENCIA] := aValue; + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_ClientesREFERENCIA] := Null; end; function TClientesBusinessProcessorRules.GetGRUPO_CLIENTEValue: String; @@ -2186,81 +4159,322 @@ begin result := BusinessProcessor.CurrentChange.NewValueByName[fld_ClientesGRUPO_CLIENTE]; end; +function TClientesBusinessProcessorRules.GetGRUPO_CLIENTEIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_ClientesGRUPO_CLIENTE]); +end; + function TClientesBusinessProcessorRules.GetOldGRUPO_CLIENTEValue: String; begin result := BusinessProcessor.CurrentChange.OldValueByName[fld_ClientesGRUPO_CLIENTE]; end; +function TClientesBusinessProcessorRules.GetOldGRUPO_CLIENTEIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_ClientesGRUPO_CLIENTE]); +end; + procedure TClientesBusinessProcessorRules.SetGRUPO_CLIENTEValue(const aValue: String); begin BusinessProcessor.CurrentChange.NewValueByName[fld_ClientesGRUPO_CLIENTE] := aValue; end; +procedure TClientesBusinessProcessorRules.SetGRUPO_CLIENTEIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_ClientesGRUPO_CLIENTE] := Null; +end; + function TClientesBusinessProcessorRules.GetNOMBRE_COMERCIALValue: String; begin result := BusinessProcessor.CurrentChange.NewValueByName[fld_ClientesNOMBRE_COMERCIAL]; end; +function TClientesBusinessProcessorRules.GetNOMBRE_COMERCIALIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_ClientesNOMBRE_COMERCIAL]); +end; + function TClientesBusinessProcessorRules.GetOldNOMBRE_COMERCIALValue: String; begin result := BusinessProcessor.CurrentChange.OldValueByName[fld_ClientesNOMBRE_COMERCIAL]; end; +function TClientesBusinessProcessorRules.GetOldNOMBRE_COMERCIALIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_ClientesNOMBRE_COMERCIAL]); +end; + procedure TClientesBusinessProcessorRules.SetNOMBRE_COMERCIALValue(const aValue: String); begin BusinessProcessor.CurrentChange.NewValueByName[fld_ClientesNOMBRE_COMERCIAL] := aValue; end; +procedure TClientesBusinessProcessorRules.SetNOMBRE_COMERCIALIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_ClientesNOMBRE_COMERCIAL] := Null; +end; + function TClientesBusinessProcessorRules.GetVENCIMIENTO_FACTURASValue: Integer; begin result := BusinessProcessor.CurrentChange.NewValueByName[fld_ClientesVENCIMIENTO_FACTURAS]; end; +function TClientesBusinessProcessorRules.GetVENCIMIENTO_FACTURASIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_ClientesVENCIMIENTO_FACTURAS]); +end; + function TClientesBusinessProcessorRules.GetOldVENCIMIENTO_FACTURASValue: Integer; begin result := BusinessProcessor.CurrentChange.OldValueByName[fld_ClientesVENCIMIENTO_FACTURAS]; end; +function TClientesBusinessProcessorRules.GetOldVENCIMIENTO_FACTURASIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_ClientesVENCIMIENTO_FACTURAS]); +end; + procedure TClientesBusinessProcessorRules.SetVENCIMIENTO_FACTURASValue(const aValue: Integer); begin BusinessProcessor.CurrentChange.NewValueByName[fld_ClientesVENCIMIENTO_FACTURAS] := aValue; end; -function TClientesBusinessProcessorRules.GetBLOQUEADOValue: Integer; +procedure TClientesBusinessProcessorRules.SetVENCIMIENTO_FACTURASIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_ClientesVENCIMIENTO_FACTURAS] := Null; +end; + +function TClientesBusinessProcessorRules.GetBLOQUEADOValue: SmallInt; begin result := BusinessProcessor.CurrentChange.NewValueByName[fld_ClientesBLOQUEADO]; end; -function TClientesBusinessProcessorRules.GetOldBLOQUEADOValue: Integer; +function TClientesBusinessProcessorRules.GetBLOQUEADOIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_ClientesBLOQUEADO]); +end; + +function TClientesBusinessProcessorRules.GetOldBLOQUEADOValue: SmallInt; begin result := BusinessProcessor.CurrentChange.OldValueByName[fld_ClientesBLOQUEADO]; end; -procedure TClientesBusinessProcessorRules.SetBLOQUEADOValue(const aValue: Integer); +function TClientesBusinessProcessorRules.GetOldBLOQUEADOIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_ClientesBLOQUEADO]); +end; + +procedure TClientesBusinessProcessorRules.SetBLOQUEADOValue(const aValue: SmallInt); begin BusinessProcessor.CurrentChange.NewValueByName[fld_ClientesBLOQUEADO] := aValue; end; +procedure TClientesBusinessProcessorRules.SetBLOQUEADOIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_ClientesBLOQUEADO] := Null; +end; + +function TClientesBusinessProcessorRules.GetREGIMEN_IVAValue: String; +begin + result := BusinessProcessor.CurrentChange.NewValueByName[fld_ClientesREGIMEN_IVA]; +end; + +function TClientesBusinessProcessorRules.GetREGIMEN_IVAIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_ClientesREGIMEN_IVA]); +end; + +function TClientesBusinessProcessorRules.GetOldREGIMEN_IVAValue: String; +begin + result := BusinessProcessor.CurrentChange.OldValueByName[fld_ClientesREGIMEN_IVA]; +end; + +function TClientesBusinessProcessorRules.GetOldREGIMEN_IVAIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_ClientesREGIMEN_IVA]); +end; + +procedure TClientesBusinessProcessorRules.SetREGIMEN_IVAValue(const aValue: String); +begin + BusinessProcessor.CurrentChange.NewValueByName[fld_ClientesREGIMEN_IVA] := aValue; +end; + +procedure TClientesBusinessProcessorRules.SetREGIMEN_IVAIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_ClientesREGIMEN_IVA] := Null; +end; + function TClientesBusinessProcessorRules.GetMOTIVO_BLOQUEOValue: String; begin result := BusinessProcessor.CurrentChange.NewValueByName[fld_ClientesMOTIVO_BLOQUEO]; end; +function TClientesBusinessProcessorRules.GetMOTIVO_BLOQUEOIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_ClientesMOTIVO_BLOQUEO]); +end; + function TClientesBusinessProcessorRules.GetOldMOTIVO_BLOQUEOValue: String; begin result := BusinessProcessor.CurrentChange.OldValueByName[fld_ClientesMOTIVO_BLOQUEO]; end; +function TClientesBusinessProcessorRules.GetOldMOTIVO_BLOQUEOIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_ClientesMOTIVO_BLOQUEO]); +end; + procedure TClientesBusinessProcessorRules.SetMOTIVO_BLOQUEOValue(const aValue: String); begin BusinessProcessor.CurrentChange.NewValueByName[fld_ClientesMOTIVO_BLOQUEO] := aValue; end; +procedure TClientesBusinessProcessorRules.SetMOTIVO_BLOQUEOIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_ClientesMOTIVO_BLOQUEO] := Null; +end; + +function TClientesBusinessProcessorRules.GetRECARGO_EQUIVALENCIAValue: Integer; +begin + result := BusinessProcessor.CurrentChange.NewValueByName[fld_ClientesRECARGO_EQUIVALENCIA]; +end; + +function TClientesBusinessProcessorRules.GetRECARGO_EQUIVALENCIAIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_ClientesRECARGO_EQUIVALENCIA]); +end; + +function TClientesBusinessProcessorRules.GetOldRECARGO_EQUIVALENCIAValue: Integer; +begin + result := BusinessProcessor.CurrentChange.OldValueByName[fld_ClientesRECARGO_EQUIVALENCIA]; +end; + +function TClientesBusinessProcessorRules.GetOldRECARGO_EQUIVALENCIAIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_ClientesRECARGO_EQUIVALENCIA]); +end; + +procedure TClientesBusinessProcessorRules.SetRECARGO_EQUIVALENCIAValue(const aValue: Integer); +begin + BusinessProcessor.CurrentChange.NewValueByName[fld_ClientesRECARGO_EQUIVALENCIA] := aValue; +end; + +procedure TClientesBusinessProcessorRules.SetRECARGO_EQUIVALENCIAIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_ClientesRECARGO_EQUIVALENCIA] := Null; +end; + +function TClientesBusinessProcessorRules.GetID_TIPO_IVAValue: Integer; +begin + result := BusinessProcessor.CurrentChange.NewValueByName[fld_ClientesID_TIPO_IVA]; +end; + +function TClientesBusinessProcessorRules.GetID_TIPO_IVAIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_ClientesID_TIPO_IVA]); +end; + +function TClientesBusinessProcessorRules.GetOldID_TIPO_IVAValue: Integer; +begin + result := BusinessProcessor.CurrentChange.OldValueByName[fld_ClientesID_TIPO_IVA]; +end; + +function TClientesBusinessProcessorRules.GetOldID_TIPO_IVAIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_ClientesID_TIPO_IVA]); +end; + +procedure TClientesBusinessProcessorRules.SetID_TIPO_IVAValue(const aValue: Integer); +begin + BusinessProcessor.CurrentChange.NewValueByName[fld_ClientesID_TIPO_IVA] := aValue; +end; + +procedure TClientesBusinessProcessorRules.SetID_TIPO_IVAIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_ClientesID_TIPO_IVA] := Null; +end; + +function TClientesBusinessProcessorRules.GetID_FORMA_PAGOValue: Integer; +begin + result := BusinessProcessor.CurrentChange.NewValueByName[fld_ClientesID_FORMA_PAGO]; +end; + +function TClientesBusinessProcessorRules.GetID_FORMA_PAGOIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_ClientesID_FORMA_PAGO]); +end; + +function TClientesBusinessProcessorRules.GetOldID_FORMA_PAGOValue: Integer; +begin + result := BusinessProcessor.CurrentChange.OldValueByName[fld_ClientesID_FORMA_PAGO]; +end; + +function TClientesBusinessProcessorRules.GetOldID_FORMA_PAGOIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_ClientesID_FORMA_PAGO]); +end; + +procedure TClientesBusinessProcessorRules.SetID_FORMA_PAGOValue(const aValue: Integer); +begin + BusinessProcessor.CurrentChange.NewValueByName[fld_ClientesID_FORMA_PAGO] := aValue; +end; + +procedure TClientesBusinessProcessorRules.SetID_FORMA_PAGOIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_ClientesID_FORMA_PAGO] := Null; +end; + +function TClientesBusinessProcessorRules.GetTIENDA_WEBValue: SmallInt; +begin + result := BusinessProcessor.CurrentChange.NewValueByName[fld_ClientesTIENDA_WEB]; +end; + +function TClientesBusinessProcessorRules.GetTIENDA_WEBIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_ClientesTIENDA_WEB]); +end; + +function TClientesBusinessProcessorRules.GetOldTIENDA_WEBValue: SmallInt; +begin + result := BusinessProcessor.CurrentChange.OldValueByName[fld_ClientesTIENDA_WEB]; +end; + +function TClientesBusinessProcessorRules.GetOldTIENDA_WEBIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_ClientesTIENDA_WEB]); +end; + +procedure TClientesBusinessProcessorRules.SetTIENDA_WEBValue(const aValue: SmallInt); +begin + BusinessProcessor.CurrentChange.NewValueByName[fld_ClientesTIENDA_WEB] := aValue; +end; + +procedure TClientesBusinessProcessorRules.SetTIENDA_WEBIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_ClientesTIENDA_WEB] := Null; +end; + { TProveedoresBusinessProcessorRules } constructor TProveedoresBusinessProcessorRules.Create(aBusinessProcessor: TDABusinessProcessor); +var + StrList: TStringList; begin inherited; + + StrList := TStringList.Create; + StrList.OnChange := NOTAS_OnChange; + f_NOTAS := NewROStrings(StrList,True); end; destructor TProveedoresBusinessProcessorRules.Destroy; @@ -2268,79 +4482,133 @@ begin inherited; end; +procedure TProveedoresBusinessProcessorRules.NOTAS_OnChange(Sender: TObject); +begin + BusinessProcessor.CurrentChange.NewValueByName[fld_ProveedoresNOTAS] := TStringList(Sender).Text; +end; + function TProveedoresBusinessProcessorRules.GetIDValue: Integer; begin result := BusinessProcessor.CurrentChange.NewValueByName[fld_ProveedoresID]; end; +function TProveedoresBusinessProcessorRules.GetIDIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_ProveedoresID]); +end; + function TProveedoresBusinessProcessorRules.GetOldIDValue: Integer; begin result := BusinessProcessor.CurrentChange.OldValueByName[fld_ProveedoresID]; end; +function TProveedoresBusinessProcessorRules.GetOldIDIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_ProveedoresID]); +end; + procedure TProveedoresBusinessProcessorRules.SetIDValue(const aValue: Integer); begin BusinessProcessor.CurrentChange.NewValueByName[fld_ProveedoresID] := aValue; end; +procedure TProveedoresBusinessProcessorRules.SetIDIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_ProveedoresID] := Null; +end; + function TProveedoresBusinessProcessorRules.GetID_CATEGORIAValue: Integer; begin result := BusinessProcessor.CurrentChange.NewValueByName[fld_ProveedoresID_CATEGORIA]; end; +function TProveedoresBusinessProcessorRules.GetID_CATEGORIAIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_ProveedoresID_CATEGORIA]); +end; + function TProveedoresBusinessProcessorRules.GetOldID_CATEGORIAValue: Integer; begin result := BusinessProcessor.CurrentChange.OldValueByName[fld_ProveedoresID_CATEGORIA]; end; +function TProveedoresBusinessProcessorRules.GetOldID_CATEGORIAIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_ProveedoresID_CATEGORIA]); +end; + procedure TProveedoresBusinessProcessorRules.SetID_CATEGORIAValue(const aValue: Integer); begin BusinessProcessor.CurrentChange.NewValueByName[fld_ProveedoresID_CATEGORIA] := aValue; end; +procedure TProveedoresBusinessProcessorRules.SetID_CATEGORIAIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_ProveedoresID_CATEGORIA] := Null; +end; + function TProveedoresBusinessProcessorRules.GetNIF_CIFValue: String; begin result := BusinessProcessor.CurrentChange.NewValueByName[fld_ProveedoresNIF_CIF]; end; +function TProveedoresBusinessProcessorRules.GetNIF_CIFIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_ProveedoresNIF_CIF]); +end; + function TProveedoresBusinessProcessorRules.GetOldNIF_CIFValue: String; begin result := BusinessProcessor.CurrentChange.OldValueByName[fld_ProveedoresNIF_CIF]; end; +function TProveedoresBusinessProcessorRules.GetOldNIF_CIFIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_ProveedoresNIF_CIF]); +end; + procedure TProveedoresBusinessProcessorRules.SetNIF_CIFValue(const aValue: String); begin BusinessProcessor.CurrentChange.NewValueByName[fld_ProveedoresNIF_CIF] := aValue; end; +procedure TProveedoresBusinessProcessorRules.SetNIF_CIFIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_ProveedoresNIF_CIF] := Null; +end; + function TProveedoresBusinessProcessorRules.GetNOMBREValue: String; begin result := BusinessProcessor.CurrentChange.NewValueByName[fld_ProveedoresNOMBRE]; end; +function TProveedoresBusinessProcessorRules.GetNOMBREIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_ProveedoresNOMBRE]); +end; + function TProveedoresBusinessProcessorRules.GetOldNOMBREValue: String; begin result := BusinessProcessor.CurrentChange.OldValueByName[fld_ProveedoresNOMBRE]; end; +function TProveedoresBusinessProcessorRules.GetOldNOMBREIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_ProveedoresNOMBRE]); +end; + procedure TProveedoresBusinessProcessorRules.SetNOMBREValue(const aValue: String); begin BusinessProcessor.CurrentChange.NewValueByName[fld_ProveedoresNOMBRE] := aValue; end; -function TProveedoresBusinessProcessorRules.GetCALLEValue: String; +procedure TProveedoresBusinessProcessorRules.SetNOMBREIsNull(const aValue: Boolean); begin - result := BusinessProcessor.CurrentChange.NewValueByName[fld_ProveedoresCALLE]; -end; - -function TProveedoresBusinessProcessorRules.GetOldCALLEValue: String; -begin - result := BusinessProcessor.CurrentChange.OldValueByName[fld_ProveedoresCALLE]; -end; - -procedure TProveedoresBusinessProcessorRules.SetCALLEValue(const aValue: String); -begin - BusinessProcessor.CurrentChange.NewValueByName[fld_ProveedoresCALLE] := aValue; + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_ProveedoresNOMBRE] := Null; end; function TProveedoresBusinessProcessorRules.GetPERSONA_CONTACTOValue: String; @@ -2348,196 +4616,492 @@ begin result := BusinessProcessor.CurrentChange.NewValueByName[fld_ProveedoresPERSONA_CONTACTO]; end; +function TProveedoresBusinessProcessorRules.GetPERSONA_CONTACTOIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_ProveedoresPERSONA_CONTACTO]); +end; + function TProveedoresBusinessProcessorRules.GetOldPERSONA_CONTACTOValue: String; begin result := BusinessProcessor.CurrentChange.OldValueByName[fld_ProveedoresPERSONA_CONTACTO]; end; +function TProveedoresBusinessProcessorRules.GetOldPERSONA_CONTACTOIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_ProveedoresPERSONA_CONTACTO]); +end; + procedure TProveedoresBusinessProcessorRules.SetPERSONA_CONTACTOValue(const aValue: String); begin BusinessProcessor.CurrentChange.NewValueByName[fld_ProveedoresPERSONA_CONTACTO] := aValue; end; +procedure TProveedoresBusinessProcessorRules.SetPERSONA_CONTACTOIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_ProveedoresPERSONA_CONTACTO] := Null; +end; + +function TProveedoresBusinessProcessorRules.GetCALLEValue: String; +begin + result := BusinessProcessor.CurrentChange.NewValueByName[fld_ProveedoresCALLE]; +end; + +function TProveedoresBusinessProcessorRules.GetCALLEIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_ProveedoresCALLE]); +end; + +function TProveedoresBusinessProcessorRules.GetOldCALLEValue: String; +begin + result := BusinessProcessor.CurrentChange.OldValueByName[fld_ProveedoresCALLE]; +end; + +function TProveedoresBusinessProcessorRules.GetOldCALLEIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_ProveedoresCALLE]); +end; + +procedure TProveedoresBusinessProcessorRules.SetCALLEValue(const aValue: String); +begin + BusinessProcessor.CurrentChange.NewValueByName[fld_ProveedoresCALLE] := aValue; +end; + +procedure TProveedoresBusinessProcessorRules.SetCALLEIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_ProveedoresCALLE] := Null; +end; + function TProveedoresBusinessProcessorRules.GetPOBLACIONValue: String; begin result := BusinessProcessor.CurrentChange.NewValueByName[fld_ProveedoresPOBLACION]; end; +function TProveedoresBusinessProcessorRules.GetPOBLACIONIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_ProveedoresPOBLACION]); +end; + function TProveedoresBusinessProcessorRules.GetOldPOBLACIONValue: String; begin result := BusinessProcessor.CurrentChange.OldValueByName[fld_ProveedoresPOBLACION]; end; +function TProveedoresBusinessProcessorRules.GetOldPOBLACIONIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_ProveedoresPOBLACION]); +end; + procedure TProveedoresBusinessProcessorRules.SetPOBLACIONValue(const aValue: String); begin BusinessProcessor.CurrentChange.NewValueByName[fld_ProveedoresPOBLACION] := aValue; end; +procedure TProveedoresBusinessProcessorRules.SetPOBLACIONIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_ProveedoresPOBLACION] := Null; +end; + function TProveedoresBusinessProcessorRules.GetPROVINCIAValue: String; begin result := BusinessProcessor.CurrentChange.NewValueByName[fld_ProveedoresPROVINCIA]; end; +function TProveedoresBusinessProcessorRules.GetPROVINCIAIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_ProveedoresPROVINCIA]); +end; + function TProveedoresBusinessProcessorRules.GetOldPROVINCIAValue: String; begin result := BusinessProcessor.CurrentChange.OldValueByName[fld_ProveedoresPROVINCIA]; end; +function TProveedoresBusinessProcessorRules.GetOldPROVINCIAIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_ProveedoresPROVINCIA]); +end; + procedure TProveedoresBusinessProcessorRules.SetPROVINCIAValue(const aValue: String); begin BusinessProcessor.CurrentChange.NewValueByName[fld_ProveedoresPROVINCIA] := aValue; end; +procedure TProveedoresBusinessProcessorRules.SetPROVINCIAIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_ProveedoresPROVINCIA] := Null; +end; + function TProveedoresBusinessProcessorRules.GetCODIGO_POSTALValue: String; begin result := BusinessProcessor.CurrentChange.NewValueByName[fld_ProveedoresCODIGO_POSTAL]; end; +function TProveedoresBusinessProcessorRules.GetCODIGO_POSTALIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_ProveedoresCODIGO_POSTAL]); +end; + function TProveedoresBusinessProcessorRules.GetOldCODIGO_POSTALValue: String; begin result := BusinessProcessor.CurrentChange.OldValueByName[fld_ProveedoresCODIGO_POSTAL]; end; +function TProveedoresBusinessProcessorRules.GetOldCODIGO_POSTALIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_ProveedoresCODIGO_POSTAL]); +end; + procedure TProveedoresBusinessProcessorRules.SetCODIGO_POSTALValue(const aValue: String); begin BusinessProcessor.CurrentChange.NewValueByName[fld_ProveedoresCODIGO_POSTAL] := aValue; end; +procedure TProveedoresBusinessProcessorRules.SetCODIGO_POSTALIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_ProveedoresCODIGO_POSTAL] := Null; +end; + function TProveedoresBusinessProcessorRules.GetTELEFONO_1Value: String; begin result := BusinessProcessor.CurrentChange.NewValueByName[fld_ProveedoresTELEFONO_1]; end; +function TProveedoresBusinessProcessorRules.GetTELEFONO_1IsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_ProveedoresTELEFONO_1]); +end; + function TProveedoresBusinessProcessorRules.GetOldTELEFONO_1Value: String; begin result := BusinessProcessor.CurrentChange.OldValueByName[fld_ProveedoresTELEFONO_1]; end; +function TProveedoresBusinessProcessorRules.GetOldTELEFONO_1IsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_ProveedoresTELEFONO_1]); +end; + procedure TProveedoresBusinessProcessorRules.SetTELEFONO_1Value(const aValue: String); begin BusinessProcessor.CurrentChange.NewValueByName[fld_ProveedoresTELEFONO_1] := aValue; end; +procedure TProveedoresBusinessProcessorRules.SetTELEFONO_1IsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_ProveedoresTELEFONO_1] := Null; +end; + function TProveedoresBusinessProcessorRules.GetTELEFONO_2Value: String; begin result := BusinessProcessor.CurrentChange.NewValueByName[fld_ProveedoresTELEFONO_2]; end; +function TProveedoresBusinessProcessorRules.GetTELEFONO_2IsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_ProveedoresTELEFONO_2]); +end; + function TProveedoresBusinessProcessorRules.GetOldTELEFONO_2Value: String; begin result := BusinessProcessor.CurrentChange.OldValueByName[fld_ProveedoresTELEFONO_2]; end; +function TProveedoresBusinessProcessorRules.GetOldTELEFONO_2IsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_ProveedoresTELEFONO_2]); +end; + procedure TProveedoresBusinessProcessorRules.SetTELEFONO_2Value(const aValue: String); begin BusinessProcessor.CurrentChange.NewValueByName[fld_ProveedoresTELEFONO_2] := aValue; end; +procedure TProveedoresBusinessProcessorRules.SetTELEFONO_2IsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_ProveedoresTELEFONO_2] := Null; +end; + function TProveedoresBusinessProcessorRules.GetMOVIL_1Value: String; begin result := BusinessProcessor.CurrentChange.NewValueByName[fld_ProveedoresMOVIL_1]; end; +function TProveedoresBusinessProcessorRules.GetMOVIL_1IsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_ProveedoresMOVIL_1]); +end; + function TProveedoresBusinessProcessorRules.GetOldMOVIL_1Value: String; begin result := BusinessProcessor.CurrentChange.OldValueByName[fld_ProveedoresMOVIL_1]; end; +function TProveedoresBusinessProcessorRules.GetOldMOVIL_1IsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_ProveedoresMOVIL_1]); +end; + procedure TProveedoresBusinessProcessorRules.SetMOVIL_1Value(const aValue: String); begin BusinessProcessor.CurrentChange.NewValueByName[fld_ProveedoresMOVIL_1] := aValue; end; +procedure TProveedoresBusinessProcessorRules.SetMOVIL_1IsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_ProveedoresMOVIL_1] := Null; +end; + function TProveedoresBusinessProcessorRules.GetMOVIL_2Value: String; begin result := BusinessProcessor.CurrentChange.NewValueByName[fld_ProveedoresMOVIL_2]; end; +function TProveedoresBusinessProcessorRules.GetMOVIL_2IsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_ProveedoresMOVIL_2]); +end; + function TProveedoresBusinessProcessorRules.GetOldMOVIL_2Value: String; begin result := BusinessProcessor.CurrentChange.OldValueByName[fld_ProveedoresMOVIL_2]; end; +function TProveedoresBusinessProcessorRules.GetOldMOVIL_2IsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_ProveedoresMOVIL_2]); +end; + procedure TProveedoresBusinessProcessorRules.SetMOVIL_2Value(const aValue: String); begin BusinessProcessor.CurrentChange.NewValueByName[fld_ProveedoresMOVIL_2] := aValue; end; +procedure TProveedoresBusinessProcessorRules.SetMOVIL_2IsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_ProveedoresMOVIL_2] := Null; +end; + function TProveedoresBusinessProcessorRules.GetFAXValue: String; begin result := BusinessProcessor.CurrentChange.NewValueByName[fld_ProveedoresFAX]; end; +function TProveedoresBusinessProcessorRules.GetFAXIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_ProveedoresFAX]); +end; + function TProveedoresBusinessProcessorRules.GetOldFAXValue: String; begin result := BusinessProcessor.CurrentChange.OldValueByName[fld_ProveedoresFAX]; end; +function TProveedoresBusinessProcessorRules.GetOldFAXIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_ProveedoresFAX]); +end; + procedure TProveedoresBusinessProcessorRules.SetFAXValue(const aValue: String); begin BusinessProcessor.CurrentChange.NewValueByName[fld_ProveedoresFAX] := aValue; end; +procedure TProveedoresBusinessProcessorRules.SetFAXIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_ProveedoresFAX] := Null; +end; + function TProveedoresBusinessProcessorRules.GetEMAIL_1Value: String; begin result := BusinessProcessor.CurrentChange.NewValueByName[fld_ProveedoresEMAIL_1]; end; +function TProveedoresBusinessProcessorRules.GetEMAIL_1IsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_ProveedoresEMAIL_1]); +end; + function TProveedoresBusinessProcessorRules.GetOldEMAIL_1Value: String; begin result := BusinessProcessor.CurrentChange.OldValueByName[fld_ProveedoresEMAIL_1]; end; +function TProveedoresBusinessProcessorRules.GetOldEMAIL_1IsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_ProveedoresEMAIL_1]); +end; + procedure TProveedoresBusinessProcessorRules.SetEMAIL_1Value(const aValue: String); begin BusinessProcessor.CurrentChange.NewValueByName[fld_ProveedoresEMAIL_1] := aValue; end; +procedure TProveedoresBusinessProcessorRules.SetEMAIL_1IsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_ProveedoresEMAIL_1] := Null; +end; + function TProveedoresBusinessProcessorRules.GetEMAIL_2Value: String; begin result := BusinessProcessor.CurrentChange.NewValueByName[fld_ProveedoresEMAIL_2]; end; +function TProveedoresBusinessProcessorRules.GetEMAIL_2IsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_ProveedoresEMAIL_2]); +end; + function TProveedoresBusinessProcessorRules.GetOldEMAIL_2Value: String; begin result := BusinessProcessor.CurrentChange.OldValueByName[fld_ProveedoresEMAIL_2]; end; +function TProveedoresBusinessProcessorRules.GetOldEMAIL_2IsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_ProveedoresEMAIL_2]); +end; + procedure TProveedoresBusinessProcessorRules.SetEMAIL_2Value(const aValue: String); begin BusinessProcessor.CurrentChange.NewValueByName[fld_ProveedoresEMAIL_2] := aValue; end; +procedure TProveedoresBusinessProcessorRules.SetEMAIL_2IsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_ProveedoresEMAIL_2] := Null; +end; + function TProveedoresBusinessProcessorRules.GetPAGINA_WEBValue: String; begin result := BusinessProcessor.CurrentChange.NewValueByName[fld_ProveedoresPAGINA_WEB]; end; +function TProveedoresBusinessProcessorRules.GetPAGINA_WEBIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_ProveedoresPAGINA_WEB]); +end; + function TProveedoresBusinessProcessorRules.GetOldPAGINA_WEBValue: String; begin result := BusinessProcessor.CurrentChange.OldValueByName[fld_ProveedoresPAGINA_WEB]; end; +function TProveedoresBusinessProcessorRules.GetOldPAGINA_WEBIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_ProveedoresPAGINA_WEB]); +end; + procedure TProveedoresBusinessProcessorRules.SetPAGINA_WEBValue(const aValue: String); begin BusinessProcessor.CurrentChange.NewValueByName[fld_ProveedoresPAGINA_WEB] := aValue; end; +procedure TProveedoresBusinessProcessorRules.SetPAGINA_WEBIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_ProveedoresPAGINA_WEB] := Null; +end; + function TProveedoresBusinessProcessorRules.GetNOTASValue: IROStrings; begin - result := NewROStrings(); + result := f_NOTAS; result.Text := BusinessProcessor.CurrentChange.NewValueByName[fld_ProveedoresNOTAS]; end; +function TProveedoresBusinessProcessorRules.GetNOTASIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_ProveedoresNOTAS]); +end; + function TProveedoresBusinessProcessorRules.GetOldNOTASValue: IROStrings; begin result := NewROStrings(); result.Text := BusinessProcessor.CurrentChange.OldValueByName[fld_ProveedoresNOTAS]; end; -procedure TProveedoresBusinessProcessorRules.SetNOTASValue(const aValue: IROStrings); +function TProveedoresBusinessProcessorRules.GetOldNOTASIsNull: Boolean; begin - BusinessProcessor.CurrentChange.NewValueByName[fld_ProveedoresNOTAS] := aValue.Text; + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_ProveedoresNOTAS]); +end; + +procedure TProveedoresBusinessProcessorRules.SetNOTASIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_ProveedoresNOTAS] := Null; +end; + +function TProveedoresBusinessProcessorRules.GetFECHA_ALTAValue: DateTime; +begin + result := BusinessProcessor.CurrentChange.NewValueByName[fld_ProveedoresFECHA_ALTA]; +end; + +function TProveedoresBusinessProcessorRules.GetFECHA_ALTAIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_ProveedoresFECHA_ALTA]); +end; + +function TProveedoresBusinessProcessorRules.GetOldFECHA_ALTAValue: DateTime; +begin + result := BusinessProcessor.CurrentChange.OldValueByName[fld_ProveedoresFECHA_ALTA]; +end; + +function TProveedoresBusinessProcessorRules.GetOldFECHA_ALTAIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_ProveedoresFECHA_ALTA]); +end; + +procedure TProveedoresBusinessProcessorRules.SetFECHA_ALTAValue(const aValue: DateTime); +begin + BusinessProcessor.CurrentChange.NewValueByName[fld_ProveedoresFECHA_ALTA] := aValue; +end; + +procedure TProveedoresBusinessProcessorRules.SetFECHA_ALTAIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_ProveedoresFECHA_ALTA] := Null; +end; + +function TProveedoresBusinessProcessorRules.GetFECHA_MODIFICACIONValue: DateTime; +begin + result := BusinessProcessor.CurrentChange.NewValueByName[fld_ProveedoresFECHA_MODIFICACION]; +end; + +function TProveedoresBusinessProcessorRules.GetFECHA_MODIFICACIONIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_ProveedoresFECHA_MODIFICACION]); +end; + +function TProveedoresBusinessProcessorRules.GetOldFECHA_MODIFICACIONValue: DateTime; +begin + result := BusinessProcessor.CurrentChange.OldValueByName[fld_ProveedoresFECHA_MODIFICACION]; +end; + +function TProveedoresBusinessProcessorRules.GetOldFECHA_MODIFICACIONIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_ProveedoresFECHA_MODIFICACION]); +end; + +procedure TProveedoresBusinessProcessorRules.SetFECHA_MODIFICACIONValue(const aValue: DateTime); +begin + BusinessProcessor.CurrentChange.NewValueByName[fld_ProveedoresFECHA_MODIFICACION] := aValue; +end; + +procedure TProveedoresBusinessProcessorRules.SetFECHA_MODIFICACIONIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_ProveedoresFECHA_MODIFICACION] := Null; end; function TProveedoresBusinessProcessorRules.GetUSUARIOValue: String; @@ -2545,104 +5109,92 @@ begin result := BusinessProcessor.CurrentChange.NewValueByName[fld_ProveedoresUSUARIO]; end; +function TProveedoresBusinessProcessorRules.GetUSUARIOIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_ProveedoresUSUARIO]); +end; + function TProveedoresBusinessProcessorRules.GetOldUSUARIOValue: String; begin result := BusinessProcessor.CurrentChange.OldValueByName[fld_ProveedoresUSUARIO]; end; +function TProveedoresBusinessProcessorRules.GetOldUSUARIOIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_ProveedoresUSUARIO]); +end; + procedure TProveedoresBusinessProcessorRules.SetUSUARIOValue(const aValue: String); begin BusinessProcessor.CurrentChange.NewValueByName[fld_ProveedoresUSUARIO] := aValue; end; +procedure TProveedoresBusinessProcessorRules.SetUSUARIOIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_ProveedoresUSUARIO] := Null; +end; + function TProveedoresBusinessProcessorRules.GetID_EMPRESAValue: Integer; begin result := BusinessProcessor.CurrentChange.NewValueByName[fld_ProveedoresID_EMPRESA]; end; +function TProveedoresBusinessProcessorRules.GetID_EMPRESAIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_ProveedoresID_EMPRESA]); +end; + function TProveedoresBusinessProcessorRules.GetOldID_EMPRESAValue: Integer; begin result := BusinessProcessor.CurrentChange.OldValueByName[fld_ProveedoresID_EMPRESA]; end; +function TProveedoresBusinessProcessorRules.GetOldID_EMPRESAIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_ProveedoresID_EMPRESA]); +end; + procedure TProveedoresBusinessProcessorRules.SetID_EMPRESAValue(const aValue: Integer); begin BusinessProcessor.CurrentChange.NewValueByName[fld_ProveedoresID_EMPRESA] := aValue; end; +procedure TProveedoresBusinessProcessorRules.SetID_EMPRESAIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_ProveedoresID_EMPRESA] := Null; +end; + function TProveedoresBusinessProcessorRules.GetREFERENCIAValue: String; begin result := BusinessProcessor.CurrentChange.NewValueByName[fld_ProveedoresREFERENCIA]; end; +function TProveedoresBusinessProcessorRules.GetREFERENCIAIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_ProveedoresREFERENCIA]); +end; + function TProveedoresBusinessProcessorRules.GetOldREFERENCIAValue: String; begin result := BusinessProcessor.CurrentChange.OldValueByName[fld_ProveedoresREFERENCIA]; end; +function TProveedoresBusinessProcessorRules.GetOldREFERENCIAIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_ProveedoresREFERENCIA]); +end; + procedure TProveedoresBusinessProcessorRules.SetREFERENCIAValue(const aValue: String); begin BusinessProcessor.CurrentChange.NewValueByName[fld_ProveedoresREFERENCIA] := aValue; end; -function TProveedoresBusinessProcessorRules.GetID_TIPO_IVAValue: Integer; +procedure TProveedoresBusinessProcessorRules.SetREFERENCIAIsNull(const aValue: Boolean); begin - result := BusinessProcessor.CurrentChange.NewValueByName[fld_ProveedoresID_TIPO_IVA]; -end; - -function TProveedoresBusinessProcessorRules.GetOldID_TIPO_IVAValue: Integer; -begin - result := BusinessProcessor.CurrentChange.OldValueByName[fld_ProveedoresID_TIPO_IVA]; -end; - -procedure TProveedoresBusinessProcessorRules.SetID_TIPO_IVAValue(const aValue: Integer); -begin - BusinessProcessor.CurrentChange.NewValueByName[fld_ProveedoresID_TIPO_IVA] := aValue; -end; - -function TProveedoresBusinessProcessorRules.GetREGIMEN_IVAValue: String; -begin - result := BusinessProcessor.CurrentChange.NewValueByName[fld_ProveedoresREGIMEN_IVA]; -end; - -function TProveedoresBusinessProcessorRules.GetOldREGIMEN_IVAValue: String; -begin - result := BusinessProcessor.CurrentChange.OldValueByName[fld_ProveedoresREGIMEN_IVA]; -end; - -procedure TProveedoresBusinessProcessorRules.SetREGIMEN_IVAValue(const aValue: String); -begin - BusinessProcessor.CurrentChange.NewValueByName[fld_ProveedoresREGIMEN_IVA] := aValue; -end; - -function TProveedoresBusinessProcessorRules.GetID_FORMA_PAGOValue: Integer; -begin - result := BusinessProcessor.CurrentChange.NewValueByName[fld_ProveedoresID_FORMA_PAGO]; -end; - -function TProveedoresBusinessProcessorRules.GetOldID_FORMA_PAGOValue: Integer; -begin - result := BusinessProcessor.CurrentChange.OldValueByName[fld_ProveedoresID_FORMA_PAGO]; -end; - -procedure TProveedoresBusinessProcessorRules.SetID_FORMA_PAGOValue(const aValue: Integer); -begin - BusinessProcessor.CurrentChange.NewValueByName[fld_ProveedoresID_FORMA_PAGO] := aValue; -end; - -function TProveedoresBusinessProcessorRules.GetTIENDA_WEBValue: Integer; -begin - result := BusinessProcessor.CurrentChange.NewValueByName[fld_ProveedoresTIENDA_WEB]; -end; - -function TProveedoresBusinessProcessorRules.GetOldTIENDA_WEBValue: Integer; -begin - result := BusinessProcessor.CurrentChange.OldValueByName[fld_ProveedoresTIENDA_WEB]; -end; - -procedure TProveedoresBusinessProcessorRules.SetTIENDA_WEBValue(const aValue: Integer); -begin - BusinessProcessor.CurrentChange.NewValueByName[fld_ProveedoresTIENDA_WEB] := aValue; + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_ProveedoresREFERENCIA] := Null; end; function TProveedoresBusinessProcessorRules.GetDESCUENTOValue: Float; @@ -2650,74 +5202,92 @@ begin result := BusinessProcessor.CurrentChange.NewValueByName[fld_ProveedoresDESCUENTO]; end; +function TProveedoresBusinessProcessorRules.GetDESCUENTOIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_ProveedoresDESCUENTO]); +end; + function TProveedoresBusinessProcessorRules.GetOldDESCUENTOValue: Float; begin result := BusinessProcessor.CurrentChange.OldValueByName[fld_ProveedoresDESCUENTO]; end; +function TProveedoresBusinessProcessorRules.GetOldDESCUENTOIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_ProveedoresDESCUENTO]); +end; + procedure TProveedoresBusinessProcessorRules.SetDESCUENTOValue(const aValue: Float); begin BusinessProcessor.CurrentChange.NewValueByName[fld_ProveedoresDESCUENTO] := aValue; end; +procedure TProveedoresBusinessProcessorRules.SetDESCUENTOIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_ProveedoresDESCUENTO] := Null; +end; + function TProveedoresBusinessProcessorRules.GetDESCRIPCION_PROVEEDORValue: String; begin result := BusinessProcessor.CurrentChange.NewValueByName[fld_ProveedoresDESCRIPCION_PROVEEDOR]; end; +function TProveedoresBusinessProcessorRules.GetDESCRIPCION_PROVEEDORIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_ProveedoresDESCRIPCION_PROVEEDOR]); +end; + function TProveedoresBusinessProcessorRules.GetOldDESCRIPCION_PROVEEDORValue: String; begin result := BusinessProcessor.CurrentChange.OldValueByName[fld_ProveedoresDESCRIPCION_PROVEEDOR]; end; +function TProveedoresBusinessProcessorRules.GetOldDESCRIPCION_PROVEEDORIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_ProveedoresDESCRIPCION_PROVEEDOR]); +end; + procedure TProveedoresBusinessProcessorRules.SetDESCRIPCION_PROVEEDORValue(const aValue: String); begin BusinessProcessor.CurrentChange.NewValueByName[fld_ProveedoresDESCRIPCION_PROVEEDOR] := aValue; end; +procedure TProveedoresBusinessProcessorRules.SetDESCRIPCION_PROVEEDORIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_ProveedoresDESCRIPCION_PROVEEDOR] := Null; +end; + function TProveedoresBusinessProcessorRules.GetCODIGO_ASIGNADOValue: String; begin result := BusinessProcessor.CurrentChange.NewValueByName[fld_ProveedoresCODIGO_ASIGNADO]; end; +function TProveedoresBusinessProcessorRules.GetCODIGO_ASIGNADOIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_ProveedoresCODIGO_ASIGNADO]); +end; + function TProveedoresBusinessProcessorRules.GetOldCODIGO_ASIGNADOValue: String; begin result := BusinessProcessor.CurrentChange.OldValueByName[fld_ProveedoresCODIGO_ASIGNADO]; end; +function TProveedoresBusinessProcessorRules.GetOldCODIGO_ASIGNADOIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_ProveedoresCODIGO_ASIGNADO]); +end; + procedure TProveedoresBusinessProcessorRules.SetCODIGO_ASIGNADOValue(const aValue: String); begin BusinessProcessor.CurrentChange.NewValueByName[fld_ProveedoresCODIGO_ASIGNADO] := aValue; end; -function TProveedoresBusinessProcessorRules.GetHOMOLOGADOValue: Integer; +procedure TProveedoresBusinessProcessorRules.SetCODIGO_ASIGNADOIsNull(const aValue: Boolean); begin - result := BusinessProcessor.CurrentChange.NewValueByName[fld_ProveedoresHOMOLOGADO]; -end; - -function TProveedoresBusinessProcessorRules.GetOldHOMOLOGADOValue: Integer; -begin - result := BusinessProcessor.CurrentChange.OldValueByName[fld_ProveedoresHOMOLOGADO]; -end; - -procedure TProveedoresBusinessProcessorRules.SetHOMOLOGADOValue(const aValue: Integer); -begin - BusinessProcessor.CurrentChange.NewValueByName[fld_ProveedoresHOMOLOGADO] := aValue; -end; - -function TProveedoresBusinessProcessorRules.GetCERTIFICACIONValue: String; -begin - result := BusinessProcessor.CurrentChange.NewValueByName[fld_ProveedoresCERTIFICACION]; -end; - -function TProveedoresBusinessProcessorRules.GetOldCERTIFICACIONValue: String; -begin - result := BusinessProcessor.CurrentChange.OldValueByName[fld_ProveedoresCERTIFICACION]; -end; - -procedure TProveedoresBusinessProcessorRules.SetCERTIFICACIONValue(const aValue: String); -begin - BusinessProcessor.CurrentChange.NewValueByName[fld_ProveedoresCERTIFICACION] := aValue; + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_ProveedoresCODIGO_ASIGNADO] := Null; end; function TProveedoresBusinessProcessorRules.GetGRUPO_PROVEEDORValue: String; @@ -2725,21 +5295,245 @@ begin result := BusinessProcessor.CurrentChange.NewValueByName[fld_ProveedoresGRUPO_PROVEEDOR]; end; +function TProveedoresBusinessProcessorRules.GetGRUPO_PROVEEDORIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_ProveedoresGRUPO_PROVEEDOR]); +end; + function TProveedoresBusinessProcessorRules.GetOldGRUPO_PROVEEDORValue: String; begin result := BusinessProcessor.CurrentChange.OldValueByName[fld_ProveedoresGRUPO_PROVEEDOR]; end; +function TProveedoresBusinessProcessorRules.GetOldGRUPO_PROVEEDORIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_ProveedoresGRUPO_PROVEEDOR]); +end; + procedure TProveedoresBusinessProcessorRules.SetGRUPO_PROVEEDORValue(const aValue: String); begin BusinessProcessor.CurrentChange.NewValueByName[fld_ProveedoresGRUPO_PROVEEDOR] := aValue; end; +procedure TProveedoresBusinessProcessorRules.SetGRUPO_PROVEEDORIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_ProveedoresGRUPO_PROVEEDOR] := Null; +end; + +function TProveedoresBusinessProcessorRules.GetREGIMEN_IVAValue: String; +begin + result := BusinessProcessor.CurrentChange.NewValueByName[fld_ProveedoresREGIMEN_IVA]; +end; + +function TProveedoresBusinessProcessorRules.GetREGIMEN_IVAIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_ProveedoresREGIMEN_IVA]); +end; + +function TProveedoresBusinessProcessorRules.GetOldREGIMEN_IVAValue: String; +begin + result := BusinessProcessor.CurrentChange.OldValueByName[fld_ProveedoresREGIMEN_IVA]; +end; + +function TProveedoresBusinessProcessorRules.GetOldREGIMEN_IVAIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_ProveedoresREGIMEN_IVA]); +end; + +procedure TProveedoresBusinessProcessorRules.SetREGIMEN_IVAValue(const aValue: String); +begin + BusinessProcessor.CurrentChange.NewValueByName[fld_ProveedoresREGIMEN_IVA] := aValue; +end; + +procedure TProveedoresBusinessProcessorRules.SetREGIMEN_IVAIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_ProveedoresREGIMEN_IVA] := Null; +end; + +function TProveedoresBusinessProcessorRules.GetID_TIPO_IVAValue: Integer; +begin + result := BusinessProcessor.CurrentChange.NewValueByName[fld_ProveedoresID_TIPO_IVA]; +end; + +function TProveedoresBusinessProcessorRules.GetID_TIPO_IVAIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_ProveedoresID_TIPO_IVA]); +end; + +function TProveedoresBusinessProcessorRules.GetOldID_TIPO_IVAValue: Integer; +begin + result := BusinessProcessor.CurrentChange.OldValueByName[fld_ProveedoresID_TIPO_IVA]; +end; + +function TProveedoresBusinessProcessorRules.GetOldID_TIPO_IVAIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_ProveedoresID_TIPO_IVA]); +end; + +procedure TProveedoresBusinessProcessorRules.SetID_TIPO_IVAValue(const aValue: Integer); +begin + BusinessProcessor.CurrentChange.NewValueByName[fld_ProveedoresID_TIPO_IVA] := aValue; +end; + +procedure TProveedoresBusinessProcessorRules.SetID_TIPO_IVAIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_ProveedoresID_TIPO_IVA] := Null; +end; + +function TProveedoresBusinessProcessorRules.GetID_FORMA_PAGOValue: Integer; +begin + result := BusinessProcessor.CurrentChange.NewValueByName[fld_ProveedoresID_FORMA_PAGO]; +end; + +function TProveedoresBusinessProcessorRules.GetID_FORMA_PAGOIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_ProveedoresID_FORMA_PAGO]); +end; + +function TProveedoresBusinessProcessorRules.GetOldID_FORMA_PAGOValue: Integer; +begin + result := BusinessProcessor.CurrentChange.OldValueByName[fld_ProveedoresID_FORMA_PAGO]; +end; + +function TProveedoresBusinessProcessorRules.GetOldID_FORMA_PAGOIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_ProveedoresID_FORMA_PAGO]); +end; + +procedure TProveedoresBusinessProcessorRules.SetID_FORMA_PAGOValue(const aValue: Integer); +begin + BusinessProcessor.CurrentChange.NewValueByName[fld_ProveedoresID_FORMA_PAGO] := aValue; +end; + +procedure TProveedoresBusinessProcessorRules.SetID_FORMA_PAGOIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_ProveedoresID_FORMA_PAGO] := Null; +end; + +function TProveedoresBusinessProcessorRules.GetTIENDA_WEBValue: SmallInt; +begin + result := BusinessProcessor.CurrentChange.NewValueByName[fld_ProveedoresTIENDA_WEB]; +end; + +function TProveedoresBusinessProcessorRules.GetTIENDA_WEBIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_ProveedoresTIENDA_WEB]); +end; + +function TProveedoresBusinessProcessorRules.GetOldTIENDA_WEBValue: SmallInt; +begin + result := BusinessProcessor.CurrentChange.OldValueByName[fld_ProveedoresTIENDA_WEB]; +end; + +function TProveedoresBusinessProcessorRules.GetOldTIENDA_WEBIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_ProveedoresTIENDA_WEB]); +end; + +procedure TProveedoresBusinessProcessorRules.SetTIENDA_WEBValue(const aValue: SmallInt); +begin + BusinessProcessor.CurrentChange.NewValueByName[fld_ProveedoresTIENDA_WEB] := aValue; +end; + +procedure TProveedoresBusinessProcessorRules.SetTIENDA_WEBIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_ProveedoresTIENDA_WEB] := Null; +end; + +function TProveedoresBusinessProcessorRules.GetHOMOLOGADOValue: SmallInt; +begin + result := BusinessProcessor.CurrentChange.NewValueByName[fld_ProveedoresHOMOLOGADO]; +end; + +function TProveedoresBusinessProcessorRules.GetHOMOLOGADOIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_ProveedoresHOMOLOGADO]); +end; + +function TProveedoresBusinessProcessorRules.GetOldHOMOLOGADOValue: SmallInt; +begin + result := BusinessProcessor.CurrentChange.OldValueByName[fld_ProveedoresHOMOLOGADO]; +end; + +function TProveedoresBusinessProcessorRules.GetOldHOMOLOGADOIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_ProveedoresHOMOLOGADO]); +end; + +procedure TProveedoresBusinessProcessorRules.SetHOMOLOGADOValue(const aValue: SmallInt); +begin + BusinessProcessor.CurrentChange.NewValueByName[fld_ProveedoresHOMOLOGADO] := aValue; +end; + +procedure TProveedoresBusinessProcessorRules.SetHOMOLOGADOIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_ProveedoresHOMOLOGADO] := Null; +end; + +function TProveedoresBusinessProcessorRules.GetCERTIFICACIONValue: String; +begin + result := BusinessProcessor.CurrentChange.NewValueByName[fld_ProveedoresCERTIFICACION]; +end; + +function TProveedoresBusinessProcessorRules.GetCERTIFICACIONIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_ProveedoresCERTIFICACION]); +end; + +function TProveedoresBusinessProcessorRules.GetOldCERTIFICACIONValue: String; +begin + result := BusinessProcessor.CurrentChange.OldValueByName[fld_ProveedoresCERTIFICACION]; +end; + +function TProveedoresBusinessProcessorRules.GetOldCERTIFICACIONIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_ProveedoresCERTIFICACION]); +end; + +procedure TProveedoresBusinessProcessorRules.SetCERTIFICACIONValue(const aValue: String); +begin + BusinessProcessor.CurrentChange.NewValueByName[fld_ProveedoresCERTIFICACION] := aValue; +end; + +procedure TProveedoresBusinessProcessorRules.SetCERTIFICACIONIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_ProveedoresCERTIFICACION] := Null; +end; + { TEmpleadosBusinessProcessorRules } constructor TEmpleadosBusinessProcessorRules.Create(aBusinessProcessor: TDABusinessProcessor); +var + StrList: TStringList; begin inherited; + + StrList := TStringList.Create; + StrList.OnChange := NOTAS_OnChange; + f_NOTAS := NewROStrings(StrList,True); + + StrList := TStringList.Create; + StrList.OnChange := FORMACION_BASE_OnChange; + f_FORMACION_BASE := NewROStrings(StrList,True); + + StrList := TStringList.Create; + StrList.OnChange := FORMACION_COMPLE_OnChange; + f_FORMACION_COMPLE := NewROStrings(StrList,True); + + StrList := TStringList.Create; + StrList.OnChange := FORMACION_RECIBIDA_OnChange; + f_FORMACION_RECIBIDA := NewROStrings(StrList,True); + + StrList := TStringList.Create; + StrList.OnChange := EXPERIENCIA_OnChange; + f_EXPERIENCIA := NewROStrings(StrList,True); end; destructor TEmpleadosBusinessProcessorRules.Destroy; @@ -2747,79 +5541,153 @@ begin inherited; end; +procedure TEmpleadosBusinessProcessorRules.NOTAS_OnChange(Sender: TObject); +begin + BusinessProcessor.CurrentChange.NewValueByName[fld_EmpleadosNOTAS] := TStringList(Sender).Text; +end; + +procedure TEmpleadosBusinessProcessorRules.FORMACION_BASE_OnChange(Sender: TObject); +begin + BusinessProcessor.CurrentChange.NewValueByName[fld_EmpleadosFORMACION_BASE] := TStringList(Sender).Text; +end; + +procedure TEmpleadosBusinessProcessorRules.FORMACION_COMPLE_OnChange(Sender: TObject); +begin + BusinessProcessor.CurrentChange.NewValueByName[fld_EmpleadosFORMACION_COMPLE] := TStringList(Sender).Text; +end; + +procedure TEmpleadosBusinessProcessorRules.FORMACION_RECIBIDA_OnChange(Sender: TObject); +begin + BusinessProcessor.CurrentChange.NewValueByName[fld_EmpleadosFORMACION_RECIBIDA] := TStringList(Sender).Text; +end; + +procedure TEmpleadosBusinessProcessorRules.EXPERIENCIA_OnChange(Sender: TObject); +begin + BusinessProcessor.CurrentChange.NewValueByName[fld_EmpleadosEXPERIENCIA] := TStringList(Sender).Text; +end; + function TEmpleadosBusinessProcessorRules.GetIDValue: Integer; begin result := BusinessProcessor.CurrentChange.NewValueByName[fld_EmpleadosID]; end; +function TEmpleadosBusinessProcessorRules.GetIDIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_EmpleadosID]); +end; + function TEmpleadosBusinessProcessorRules.GetOldIDValue: Integer; begin result := BusinessProcessor.CurrentChange.OldValueByName[fld_EmpleadosID]; end; +function TEmpleadosBusinessProcessorRules.GetOldIDIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_EmpleadosID]); +end; + procedure TEmpleadosBusinessProcessorRules.SetIDValue(const aValue: Integer); begin BusinessProcessor.CurrentChange.NewValueByName[fld_EmpleadosID] := aValue; end; +procedure TEmpleadosBusinessProcessorRules.SetIDIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_EmpleadosID] := Null; +end; + function TEmpleadosBusinessProcessorRules.GetID_CATEGORIAValue: Integer; begin result := BusinessProcessor.CurrentChange.NewValueByName[fld_EmpleadosID_CATEGORIA]; end; +function TEmpleadosBusinessProcessorRules.GetID_CATEGORIAIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_EmpleadosID_CATEGORIA]); +end; + function TEmpleadosBusinessProcessorRules.GetOldID_CATEGORIAValue: Integer; begin result := BusinessProcessor.CurrentChange.OldValueByName[fld_EmpleadosID_CATEGORIA]; end; +function TEmpleadosBusinessProcessorRules.GetOldID_CATEGORIAIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_EmpleadosID_CATEGORIA]); +end; + procedure TEmpleadosBusinessProcessorRules.SetID_CATEGORIAValue(const aValue: Integer); begin BusinessProcessor.CurrentChange.NewValueByName[fld_EmpleadosID_CATEGORIA] := aValue; end; +procedure TEmpleadosBusinessProcessorRules.SetID_CATEGORIAIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_EmpleadosID_CATEGORIA] := Null; +end; + function TEmpleadosBusinessProcessorRules.GetNIF_CIFValue: String; begin result := BusinessProcessor.CurrentChange.NewValueByName[fld_EmpleadosNIF_CIF]; end; +function TEmpleadosBusinessProcessorRules.GetNIF_CIFIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_EmpleadosNIF_CIF]); +end; + function TEmpleadosBusinessProcessorRules.GetOldNIF_CIFValue: String; begin result := BusinessProcessor.CurrentChange.OldValueByName[fld_EmpleadosNIF_CIF]; end; +function TEmpleadosBusinessProcessorRules.GetOldNIF_CIFIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_EmpleadosNIF_CIF]); +end; + procedure TEmpleadosBusinessProcessorRules.SetNIF_CIFValue(const aValue: String); begin BusinessProcessor.CurrentChange.NewValueByName[fld_EmpleadosNIF_CIF] := aValue; end; +procedure TEmpleadosBusinessProcessorRules.SetNIF_CIFIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_EmpleadosNIF_CIF] := Null; +end; + function TEmpleadosBusinessProcessorRules.GetNOMBREValue: String; begin result := BusinessProcessor.CurrentChange.NewValueByName[fld_EmpleadosNOMBRE]; end; +function TEmpleadosBusinessProcessorRules.GetNOMBREIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_EmpleadosNOMBRE]); +end; + function TEmpleadosBusinessProcessorRules.GetOldNOMBREValue: String; begin result := BusinessProcessor.CurrentChange.OldValueByName[fld_EmpleadosNOMBRE]; end; +function TEmpleadosBusinessProcessorRules.GetOldNOMBREIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_EmpleadosNOMBRE]); +end; + procedure TEmpleadosBusinessProcessorRules.SetNOMBREValue(const aValue: String); begin BusinessProcessor.CurrentChange.NewValueByName[fld_EmpleadosNOMBRE] := aValue; end; -function TEmpleadosBusinessProcessorRules.GetCALLEValue: String; +procedure TEmpleadosBusinessProcessorRules.SetNOMBREIsNull(const aValue: Boolean); begin - result := BusinessProcessor.CurrentChange.NewValueByName[fld_EmpleadosCALLE]; -end; - -function TEmpleadosBusinessProcessorRules.GetOldCALLEValue: String; -begin - result := BusinessProcessor.CurrentChange.OldValueByName[fld_EmpleadosCALLE]; -end; - -procedure TEmpleadosBusinessProcessorRules.SetCALLEValue(const aValue: String); -begin - BusinessProcessor.CurrentChange.NewValueByName[fld_EmpleadosCALLE] := aValue; + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_EmpleadosNOMBRE] := Null; end; function TEmpleadosBusinessProcessorRules.GetPERSONA_CONTACTOValue: String; @@ -2827,196 +5695,492 @@ begin result := BusinessProcessor.CurrentChange.NewValueByName[fld_EmpleadosPERSONA_CONTACTO]; end; +function TEmpleadosBusinessProcessorRules.GetPERSONA_CONTACTOIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_EmpleadosPERSONA_CONTACTO]); +end; + function TEmpleadosBusinessProcessorRules.GetOldPERSONA_CONTACTOValue: String; begin result := BusinessProcessor.CurrentChange.OldValueByName[fld_EmpleadosPERSONA_CONTACTO]; end; +function TEmpleadosBusinessProcessorRules.GetOldPERSONA_CONTACTOIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_EmpleadosPERSONA_CONTACTO]); +end; + procedure TEmpleadosBusinessProcessorRules.SetPERSONA_CONTACTOValue(const aValue: String); begin BusinessProcessor.CurrentChange.NewValueByName[fld_EmpleadosPERSONA_CONTACTO] := aValue; end; +procedure TEmpleadosBusinessProcessorRules.SetPERSONA_CONTACTOIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_EmpleadosPERSONA_CONTACTO] := Null; +end; + +function TEmpleadosBusinessProcessorRules.GetCALLEValue: String; +begin + result := BusinessProcessor.CurrentChange.NewValueByName[fld_EmpleadosCALLE]; +end; + +function TEmpleadosBusinessProcessorRules.GetCALLEIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_EmpleadosCALLE]); +end; + +function TEmpleadosBusinessProcessorRules.GetOldCALLEValue: String; +begin + result := BusinessProcessor.CurrentChange.OldValueByName[fld_EmpleadosCALLE]; +end; + +function TEmpleadosBusinessProcessorRules.GetOldCALLEIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_EmpleadosCALLE]); +end; + +procedure TEmpleadosBusinessProcessorRules.SetCALLEValue(const aValue: String); +begin + BusinessProcessor.CurrentChange.NewValueByName[fld_EmpleadosCALLE] := aValue; +end; + +procedure TEmpleadosBusinessProcessorRules.SetCALLEIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_EmpleadosCALLE] := Null; +end; + function TEmpleadosBusinessProcessorRules.GetPOBLACIONValue: String; begin result := BusinessProcessor.CurrentChange.NewValueByName[fld_EmpleadosPOBLACION]; end; +function TEmpleadosBusinessProcessorRules.GetPOBLACIONIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_EmpleadosPOBLACION]); +end; + function TEmpleadosBusinessProcessorRules.GetOldPOBLACIONValue: String; begin result := BusinessProcessor.CurrentChange.OldValueByName[fld_EmpleadosPOBLACION]; end; +function TEmpleadosBusinessProcessorRules.GetOldPOBLACIONIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_EmpleadosPOBLACION]); +end; + procedure TEmpleadosBusinessProcessorRules.SetPOBLACIONValue(const aValue: String); begin BusinessProcessor.CurrentChange.NewValueByName[fld_EmpleadosPOBLACION] := aValue; end; +procedure TEmpleadosBusinessProcessorRules.SetPOBLACIONIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_EmpleadosPOBLACION] := Null; +end; + function TEmpleadosBusinessProcessorRules.GetPROVINCIAValue: String; begin result := BusinessProcessor.CurrentChange.NewValueByName[fld_EmpleadosPROVINCIA]; end; +function TEmpleadosBusinessProcessorRules.GetPROVINCIAIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_EmpleadosPROVINCIA]); +end; + function TEmpleadosBusinessProcessorRules.GetOldPROVINCIAValue: String; begin result := BusinessProcessor.CurrentChange.OldValueByName[fld_EmpleadosPROVINCIA]; end; +function TEmpleadosBusinessProcessorRules.GetOldPROVINCIAIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_EmpleadosPROVINCIA]); +end; + procedure TEmpleadosBusinessProcessorRules.SetPROVINCIAValue(const aValue: String); begin BusinessProcessor.CurrentChange.NewValueByName[fld_EmpleadosPROVINCIA] := aValue; end; +procedure TEmpleadosBusinessProcessorRules.SetPROVINCIAIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_EmpleadosPROVINCIA] := Null; +end; + function TEmpleadosBusinessProcessorRules.GetCODIGO_POSTALValue: String; begin result := BusinessProcessor.CurrentChange.NewValueByName[fld_EmpleadosCODIGO_POSTAL]; end; +function TEmpleadosBusinessProcessorRules.GetCODIGO_POSTALIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_EmpleadosCODIGO_POSTAL]); +end; + function TEmpleadosBusinessProcessorRules.GetOldCODIGO_POSTALValue: String; begin result := BusinessProcessor.CurrentChange.OldValueByName[fld_EmpleadosCODIGO_POSTAL]; end; +function TEmpleadosBusinessProcessorRules.GetOldCODIGO_POSTALIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_EmpleadosCODIGO_POSTAL]); +end; + procedure TEmpleadosBusinessProcessorRules.SetCODIGO_POSTALValue(const aValue: String); begin BusinessProcessor.CurrentChange.NewValueByName[fld_EmpleadosCODIGO_POSTAL] := aValue; end; +procedure TEmpleadosBusinessProcessorRules.SetCODIGO_POSTALIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_EmpleadosCODIGO_POSTAL] := Null; +end; + function TEmpleadosBusinessProcessorRules.GetTELEFONO_1Value: String; begin result := BusinessProcessor.CurrentChange.NewValueByName[fld_EmpleadosTELEFONO_1]; end; +function TEmpleadosBusinessProcessorRules.GetTELEFONO_1IsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_EmpleadosTELEFONO_1]); +end; + function TEmpleadosBusinessProcessorRules.GetOldTELEFONO_1Value: String; begin result := BusinessProcessor.CurrentChange.OldValueByName[fld_EmpleadosTELEFONO_1]; end; +function TEmpleadosBusinessProcessorRules.GetOldTELEFONO_1IsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_EmpleadosTELEFONO_1]); +end; + procedure TEmpleadosBusinessProcessorRules.SetTELEFONO_1Value(const aValue: String); begin BusinessProcessor.CurrentChange.NewValueByName[fld_EmpleadosTELEFONO_1] := aValue; end; +procedure TEmpleadosBusinessProcessorRules.SetTELEFONO_1IsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_EmpleadosTELEFONO_1] := Null; +end; + function TEmpleadosBusinessProcessorRules.GetTELEFONO_2Value: String; begin result := BusinessProcessor.CurrentChange.NewValueByName[fld_EmpleadosTELEFONO_2]; end; +function TEmpleadosBusinessProcessorRules.GetTELEFONO_2IsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_EmpleadosTELEFONO_2]); +end; + function TEmpleadosBusinessProcessorRules.GetOldTELEFONO_2Value: String; begin result := BusinessProcessor.CurrentChange.OldValueByName[fld_EmpleadosTELEFONO_2]; end; +function TEmpleadosBusinessProcessorRules.GetOldTELEFONO_2IsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_EmpleadosTELEFONO_2]); +end; + procedure TEmpleadosBusinessProcessorRules.SetTELEFONO_2Value(const aValue: String); begin BusinessProcessor.CurrentChange.NewValueByName[fld_EmpleadosTELEFONO_2] := aValue; end; +procedure TEmpleadosBusinessProcessorRules.SetTELEFONO_2IsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_EmpleadosTELEFONO_2] := Null; +end; + function TEmpleadosBusinessProcessorRules.GetMOVIL_1Value: String; begin result := BusinessProcessor.CurrentChange.NewValueByName[fld_EmpleadosMOVIL_1]; end; +function TEmpleadosBusinessProcessorRules.GetMOVIL_1IsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_EmpleadosMOVIL_1]); +end; + function TEmpleadosBusinessProcessorRules.GetOldMOVIL_1Value: String; begin result := BusinessProcessor.CurrentChange.OldValueByName[fld_EmpleadosMOVIL_1]; end; +function TEmpleadosBusinessProcessorRules.GetOldMOVIL_1IsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_EmpleadosMOVIL_1]); +end; + procedure TEmpleadosBusinessProcessorRules.SetMOVIL_1Value(const aValue: String); begin BusinessProcessor.CurrentChange.NewValueByName[fld_EmpleadosMOVIL_1] := aValue; end; +procedure TEmpleadosBusinessProcessorRules.SetMOVIL_1IsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_EmpleadosMOVIL_1] := Null; +end; + function TEmpleadosBusinessProcessorRules.GetMOVIL_2Value: String; begin result := BusinessProcessor.CurrentChange.NewValueByName[fld_EmpleadosMOVIL_2]; end; +function TEmpleadosBusinessProcessorRules.GetMOVIL_2IsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_EmpleadosMOVIL_2]); +end; + function TEmpleadosBusinessProcessorRules.GetOldMOVIL_2Value: String; begin result := BusinessProcessor.CurrentChange.OldValueByName[fld_EmpleadosMOVIL_2]; end; +function TEmpleadosBusinessProcessorRules.GetOldMOVIL_2IsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_EmpleadosMOVIL_2]); +end; + procedure TEmpleadosBusinessProcessorRules.SetMOVIL_2Value(const aValue: String); begin BusinessProcessor.CurrentChange.NewValueByName[fld_EmpleadosMOVIL_2] := aValue; end; +procedure TEmpleadosBusinessProcessorRules.SetMOVIL_2IsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_EmpleadosMOVIL_2] := Null; +end; + function TEmpleadosBusinessProcessorRules.GetFAXValue: String; begin result := BusinessProcessor.CurrentChange.NewValueByName[fld_EmpleadosFAX]; end; +function TEmpleadosBusinessProcessorRules.GetFAXIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_EmpleadosFAX]); +end; + function TEmpleadosBusinessProcessorRules.GetOldFAXValue: String; begin result := BusinessProcessor.CurrentChange.OldValueByName[fld_EmpleadosFAX]; end; +function TEmpleadosBusinessProcessorRules.GetOldFAXIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_EmpleadosFAX]); +end; + procedure TEmpleadosBusinessProcessorRules.SetFAXValue(const aValue: String); begin BusinessProcessor.CurrentChange.NewValueByName[fld_EmpleadosFAX] := aValue; end; +procedure TEmpleadosBusinessProcessorRules.SetFAXIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_EmpleadosFAX] := Null; +end; + function TEmpleadosBusinessProcessorRules.GetEMAIL_1Value: String; begin result := BusinessProcessor.CurrentChange.NewValueByName[fld_EmpleadosEMAIL_1]; end; +function TEmpleadosBusinessProcessorRules.GetEMAIL_1IsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_EmpleadosEMAIL_1]); +end; + function TEmpleadosBusinessProcessorRules.GetOldEMAIL_1Value: String; begin result := BusinessProcessor.CurrentChange.OldValueByName[fld_EmpleadosEMAIL_1]; end; +function TEmpleadosBusinessProcessorRules.GetOldEMAIL_1IsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_EmpleadosEMAIL_1]); +end; + procedure TEmpleadosBusinessProcessorRules.SetEMAIL_1Value(const aValue: String); begin BusinessProcessor.CurrentChange.NewValueByName[fld_EmpleadosEMAIL_1] := aValue; end; +procedure TEmpleadosBusinessProcessorRules.SetEMAIL_1IsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_EmpleadosEMAIL_1] := Null; +end; + function TEmpleadosBusinessProcessorRules.GetEMAIL_2Value: String; begin result := BusinessProcessor.CurrentChange.NewValueByName[fld_EmpleadosEMAIL_2]; end; +function TEmpleadosBusinessProcessorRules.GetEMAIL_2IsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_EmpleadosEMAIL_2]); +end; + function TEmpleadosBusinessProcessorRules.GetOldEMAIL_2Value: String; begin result := BusinessProcessor.CurrentChange.OldValueByName[fld_EmpleadosEMAIL_2]; end; +function TEmpleadosBusinessProcessorRules.GetOldEMAIL_2IsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_EmpleadosEMAIL_2]); +end; + procedure TEmpleadosBusinessProcessorRules.SetEMAIL_2Value(const aValue: String); begin BusinessProcessor.CurrentChange.NewValueByName[fld_EmpleadosEMAIL_2] := aValue; end; +procedure TEmpleadosBusinessProcessorRules.SetEMAIL_2IsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_EmpleadosEMAIL_2] := Null; +end; + function TEmpleadosBusinessProcessorRules.GetPAGINA_WEBValue: String; begin result := BusinessProcessor.CurrentChange.NewValueByName[fld_EmpleadosPAGINA_WEB]; end; +function TEmpleadosBusinessProcessorRules.GetPAGINA_WEBIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_EmpleadosPAGINA_WEB]); +end; + function TEmpleadosBusinessProcessorRules.GetOldPAGINA_WEBValue: String; begin result := BusinessProcessor.CurrentChange.OldValueByName[fld_EmpleadosPAGINA_WEB]; end; +function TEmpleadosBusinessProcessorRules.GetOldPAGINA_WEBIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_EmpleadosPAGINA_WEB]); +end; + procedure TEmpleadosBusinessProcessorRules.SetPAGINA_WEBValue(const aValue: String); begin BusinessProcessor.CurrentChange.NewValueByName[fld_EmpleadosPAGINA_WEB] := aValue; end; +procedure TEmpleadosBusinessProcessorRules.SetPAGINA_WEBIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_EmpleadosPAGINA_WEB] := Null; +end; + function TEmpleadosBusinessProcessorRules.GetNOTASValue: IROStrings; begin - result := NewROStrings(); + result := f_NOTAS; result.Text := BusinessProcessor.CurrentChange.NewValueByName[fld_EmpleadosNOTAS]; end; +function TEmpleadosBusinessProcessorRules.GetNOTASIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_EmpleadosNOTAS]); +end; + function TEmpleadosBusinessProcessorRules.GetOldNOTASValue: IROStrings; begin result := NewROStrings(); result.Text := BusinessProcessor.CurrentChange.OldValueByName[fld_EmpleadosNOTAS]; end; -procedure TEmpleadosBusinessProcessorRules.SetNOTASValue(const aValue: IROStrings); +function TEmpleadosBusinessProcessorRules.GetOldNOTASIsNull: Boolean; begin - BusinessProcessor.CurrentChange.NewValueByName[fld_EmpleadosNOTAS] := aValue.Text; + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_EmpleadosNOTAS]); +end; + +procedure TEmpleadosBusinessProcessorRules.SetNOTASIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_EmpleadosNOTAS] := Null; +end; + +function TEmpleadosBusinessProcessorRules.GetFECHA_ALTAValue: DateTime; +begin + result := BusinessProcessor.CurrentChange.NewValueByName[fld_EmpleadosFECHA_ALTA]; +end; + +function TEmpleadosBusinessProcessorRules.GetFECHA_ALTAIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_EmpleadosFECHA_ALTA]); +end; + +function TEmpleadosBusinessProcessorRules.GetOldFECHA_ALTAValue: DateTime; +begin + result := BusinessProcessor.CurrentChange.OldValueByName[fld_EmpleadosFECHA_ALTA]; +end; + +function TEmpleadosBusinessProcessorRules.GetOldFECHA_ALTAIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_EmpleadosFECHA_ALTA]); +end; + +procedure TEmpleadosBusinessProcessorRules.SetFECHA_ALTAValue(const aValue: DateTime); +begin + BusinessProcessor.CurrentChange.NewValueByName[fld_EmpleadosFECHA_ALTA] := aValue; +end; + +procedure TEmpleadosBusinessProcessorRules.SetFECHA_ALTAIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_EmpleadosFECHA_ALTA] := Null; +end; + +function TEmpleadosBusinessProcessorRules.GetFECHA_MODIFICACIONValue: DateTime; +begin + result := BusinessProcessor.CurrentChange.NewValueByName[fld_EmpleadosFECHA_MODIFICACION]; +end; + +function TEmpleadosBusinessProcessorRules.GetFECHA_MODIFICACIONIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_EmpleadosFECHA_MODIFICACION]); +end; + +function TEmpleadosBusinessProcessorRules.GetOldFECHA_MODIFICACIONValue: DateTime; +begin + result := BusinessProcessor.CurrentChange.OldValueByName[fld_EmpleadosFECHA_MODIFICACION]; +end; + +function TEmpleadosBusinessProcessorRules.GetOldFECHA_MODIFICACIONIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_EmpleadosFECHA_MODIFICACION]); +end; + +procedure TEmpleadosBusinessProcessorRules.SetFECHA_MODIFICACIONValue(const aValue: DateTime); +begin + BusinessProcessor.CurrentChange.NewValueByName[fld_EmpleadosFECHA_MODIFICACION] := aValue; +end; + +procedure TEmpleadosBusinessProcessorRules.SetFECHA_MODIFICACIONIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_EmpleadosFECHA_MODIFICACION] := Null; end; function TEmpleadosBusinessProcessorRules.GetUSUARIOValue: String; @@ -3024,59 +6188,92 @@ begin result := BusinessProcessor.CurrentChange.NewValueByName[fld_EmpleadosUSUARIO]; end; +function TEmpleadosBusinessProcessorRules.GetUSUARIOIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_EmpleadosUSUARIO]); +end; + function TEmpleadosBusinessProcessorRules.GetOldUSUARIOValue: String; begin result := BusinessProcessor.CurrentChange.OldValueByName[fld_EmpleadosUSUARIO]; end; +function TEmpleadosBusinessProcessorRules.GetOldUSUARIOIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_EmpleadosUSUARIO]); +end; + procedure TEmpleadosBusinessProcessorRules.SetUSUARIOValue(const aValue: String); begin BusinessProcessor.CurrentChange.NewValueByName[fld_EmpleadosUSUARIO] := aValue; end; +procedure TEmpleadosBusinessProcessorRules.SetUSUARIOIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_EmpleadosUSUARIO] := Null; +end; + function TEmpleadosBusinessProcessorRules.GetID_EMPRESAValue: Integer; begin result := BusinessProcessor.CurrentChange.NewValueByName[fld_EmpleadosID_EMPRESA]; end; +function TEmpleadosBusinessProcessorRules.GetID_EMPRESAIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_EmpleadosID_EMPRESA]); +end; + function TEmpleadosBusinessProcessorRules.GetOldID_EMPRESAValue: Integer; begin result := BusinessProcessor.CurrentChange.OldValueByName[fld_EmpleadosID_EMPRESA]; end; +function TEmpleadosBusinessProcessorRules.GetOldID_EMPRESAIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_EmpleadosID_EMPRESA]); +end; + procedure TEmpleadosBusinessProcessorRules.SetID_EMPRESAValue(const aValue: Integer); begin BusinessProcessor.CurrentChange.NewValueByName[fld_EmpleadosID_EMPRESA] := aValue; end; +procedure TEmpleadosBusinessProcessorRules.SetID_EMPRESAIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_EmpleadosID_EMPRESA] := Null; +end; + function TEmpleadosBusinessProcessorRules.GetREFERENCIAValue: String; begin result := BusinessProcessor.CurrentChange.NewValueByName[fld_EmpleadosREFERENCIA]; end; +function TEmpleadosBusinessProcessorRules.GetREFERENCIAIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_EmpleadosREFERENCIA]); +end; + function TEmpleadosBusinessProcessorRules.GetOldREFERENCIAValue: String; begin result := BusinessProcessor.CurrentChange.OldValueByName[fld_EmpleadosREFERENCIA]; end; +function TEmpleadosBusinessProcessorRules.GetOldREFERENCIAIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_EmpleadosREFERENCIA]); +end; + procedure TEmpleadosBusinessProcessorRules.SetREFERENCIAValue(const aValue: String); begin BusinessProcessor.CurrentChange.NewValueByName[fld_EmpleadosREFERENCIA] := aValue; end; -function TEmpleadosBusinessProcessorRules.GetCATEGORIAValue: String; +procedure TEmpleadosBusinessProcessorRules.SetREFERENCIAIsNull(const aValue: Boolean); begin - result := BusinessProcessor.CurrentChange.NewValueByName[fld_EmpleadosCATEGORIA]; -end; - -function TEmpleadosBusinessProcessorRules.GetOldCATEGORIAValue: String; -begin - result := BusinessProcessor.CurrentChange.OldValueByName[fld_EmpleadosCATEGORIA]; -end; - -procedure TEmpleadosBusinessProcessorRules.SetCATEGORIAValue(const aValue: String); -begin - BusinessProcessor.CurrentChange.NewValueByName[fld_EmpleadosCATEGORIA] := aValue; + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_EmpleadosREFERENCIA] := Null; end; function TEmpleadosBusinessProcessorRules.GetFECHA_NACIMIENTOValue: DateTime; @@ -3084,104 +6281,217 @@ begin result := BusinessProcessor.CurrentChange.NewValueByName[fld_EmpleadosFECHA_NACIMIENTO]; end; +function TEmpleadosBusinessProcessorRules.GetFECHA_NACIMIENTOIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_EmpleadosFECHA_NACIMIENTO]); +end; + function TEmpleadosBusinessProcessorRules.GetOldFECHA_NACIMIENTOValue: DateTime; begin result := BusinessProcessor.CurrentChange.OldValueByName[fld_EmpleadosFECHA_NACIMIENTO]; end; +function TEmpleadosBusinessProcessorRules.GetOldFECHA_NACIMIENTOIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_EmpleadosFECHA_NACIMIENTO]); +end; + procedure TEmpleadosBusinessProcessorRules.SetFECHA_NACIMIENTOValue(const aValue: DateTime); begin BusinessProcessor.CurrentChange.NewValueByName[fld_EmpleadosFECHA_NACIMIENTO] := aValue; end; +procedure TEmpleadosBusinessProcessorRules.SetFECHA_NACIMIENTOIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_EmpleadosFECHA_NACIMIENTO] := Null; +end; + +function TEmpleadosBusinessProcessorRules.GetCATEGORIAValue: String; +begin + result := BusinessProcessor.CurrentChange.NewValueByName[fld_EmpleadosCATEGORIA]; +end; + +function TEmpleadosBusinessProcessorRules.GetCATEGORIAIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_EmpleadosCATEGORIA]); +end; + +function TEmpleadosBusinessProcessorRules.GetOldCATEGORIAValue: String; +begin + result := BusinessProcessor.CurrentChange.OldValueByName[fld_EmpleadosCATEGORIA]; +end; + +function TEmpleadosBusinessProcessorRules.GetOldCATEGORIAIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_EmpleadosCATEGORIA]); +end; + +procedure TEmpleadosBusinessProcessorRules.SetCATEGORIAValue(const aValue: String); +begin + BusinessProcessor.CurrentChange.NewValueByName[fld_EmpleadosCATEGORIA] := aValue; +end; + +procedure TEmpleadosBusinessProcessorRules.SetCATEGORIAIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_EmpleadosCATEGORIA] := Null; +end; + function TEmpleadosBusinessProcessorRules.GetFECHA_ALTA_EMPRESAValue: DateTime; begin result := BusinessProcessor.CurrentChange.NewValueByName[fld_EmpleadosFECHA_ALTA_EMPRESA]; end; +function TEmpleadosBusinessProcessorRules.GetFECHA_ALTA_EMPRESAIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_EmpleadosFECHA_ALTA_EMPRESA]); +end; + function TEmpleadosBusinessProcessorRules.GetOldFECHA_ALTA_EMPRESAValue: DateTime; begin result := BusinessProcessor.CurrentChange.OldValueByName[fld_EmpleadosFECHA_ALTA_EMPRESA]; end; +function TEmpleadosBusinessProcessorRules.GetOldFECHA_ALTA_EMPRESAIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_EmpleadosFECHA_ALTA_EMPRESA]); +end; + procedure TEmpleadosBusinessProcessorRules.SetFECHA_ALTA_EMPRESAValue(const aValue: DateTime); begin BusinessProcessor.CurrentChange.NewValueByName[fld_EmpleadosFECHA_ALTA_EMPRESA] := aValue; end; +procedure TEmpleadosBusinessProcessorRules.SetFECHA_ALTA_EMPRESAIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_EmpleadosFECHA_ALTA_EMPRESA] := Null; +end; + function TEmpleadosBusinessProcessorRules.GetFORMACION_BASEValue: IROStrings; begin - result := NewROStrings(); + result := f_FORMACION_BASE; result.Text := BusinessProcessor.CurrentChange.NewValueByName[fld_EmpleadosFORMACION_BASE]; end; +function TEmpleadosBusinessProcessorRules.GetFORMACION_BASEIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_EmpleadosFORMACION_BASE]); +end; + function TEmpleadosBusinessProcessorRules.GetOldFORMACION_BASEValue: IROStrings; begin result := NewROStrings(); result.Text := BusinessProcessor.CurrentChange.OldValueByName[fld_EmpleadosFORMACION_BASE]; end; -procedure TEmpleadosBusinessProcessorRules.SetFORMACION_BASEValue(const aValue: IROStrings); +function TEmpleadosBusinessProcessorRules.GetOldFORMACION_BASEIsNull: Boolean; begin - BusinessProcessor.CurrentChange.NewValueByName[fld_EmpleadosFORMACION_BASE] := aValue.Text; + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_EmpleadosFORMACION_BASE]); +end; + +procedure TEmpleadosBusinessProcessorRules.SetFORMACION_BASEIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_EmpleadosFORMACION_BASE] := Null; end; function TEmpleadosBusinessProcessorRules.GetFORMACION_COMPLEValue: IROStrings; begin - result := NewROStrings(); + result := f_FORMACION_COMPLE; result.Text := BusinessProcessor.CurrentChange.NewValueByName[fld_EmpleadosFORMACION_COMPLE]; end; +function TEmpleadosBusinessProcessorRules.GetFORMACION_COMPLEIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_EmpleadosFORMACION_COMPLE]); +end; + function TEmpleadosBusinessProcessorRules.GetOldFORMACION_COMPLEValue: IROStrings; begin result := NewROStrings(); result.Text := BusinessProcessor.CurrentChange.OldValueByName[fld_EmpleadosFORMACION_COMPLE]; end; -procedure TEmpleadosBusinessProcessorRules.SetFORMACION_COMPLEValue(const aValue: IROStrings); +function TEmpleadosBusinessProcessorRules.GetOldFORMACION_COMPLEIsNull: Boolean; begin - BusinessProcessor.CurrentChange.NewValueByName[fld_EmpleadosFORMACION_COMPLE] := aValue.Text; + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_EmpleadosFORMACION_COMPLE]); +end; + +procedure TEmpleadosBusinessProcessorRules.SetFORMACION_COMPLEIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_EmpleadosFORMACION_COMPLE] := Null; end; function TEmpleadosBusinessProcessorRules.GetFORMACION_RECIBIDAValue: IROStrings; begin - result := NewROStrings(); + result := f_FORMACION_RECIBIDA; result.Text := BusinessProcessor.CurrentChange.NewValueByName[fld_EmpleadosFORMACION_RECIBIDA]; end; +function TEmpleadosBusinessProcessorRules.GetFORMACION_RECIBIDAIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_EmpleadosFORMACION_RECIBIDA]); +end; + function TEmpleadosBusinessProcessorRules.GetOldFORMACION_RECIBIDAValue: IROStrings; begin result := NewROStrings(); result.Text := BusinessProcessor.CurrentChange.OldValueByName[fld_EmpleadosFORMACION_RECIBIDA]; end; -procedure TEmpleadosBusinessProcessorRules.SetFORMACION_RECIBIDAValue(const aValue: IROStrings); +function TEmpleadosBusinessProcessorRules.GetOldFORMACION_RECIBIDAIsNull: Boolean; begin - BusinessProcessor.CurrentChange.NewValueByName[fld_EmpleadosFORMACION_RECIBIDA] := aValue.Text; + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_EmpleadosFORMACION_RECIBIDA]); +end; + +procedure TEmpleadosBusinessProcessorRules.SetFORMACION_RECIBIDAIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_EmpleadosFORMACION_RECIBIDA] := Null; end; function TEmpleadosBusinessProcessorRules.GetEXPERIENCIAValue: IROStrings; begin - result := NewROStrings(); + result := f_EXPERIENCIA; result.Text := BusinessProcessor.CurrentChange.NewValueByName[fld_EmpleadosEXPERIENCIA]; end; +function TEmpleadosBusinessProcessorRules.GetEXPERIENCIAIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_EmpleadosEXPERIENCIA]); +end; + function TEmpleadosBusinessProcessorRules.GetOldEXPERIENCIAValue: IROStrings; begin result := NewROStrings(); result.Text := BusinessProcessor.CurrentChange.OldValueByName[fld_EmpleadosEXPERIENCIA]; end; -procedure TEmpleadosBusinessProcessorRules.SetEXPERIENCIAValue(const aValue: IROStrings); +function TEmpleadosBusinessProcessorRules.GetOldEXPERIENCIAIsNull: Boolean; begin - BusinessProcessor.CurrentChange.NewValueByName[fld_EmpleadosEXPERIENCIA] := aValue.Text; + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_EmpleadosEXPERIENCIA]); +end; + +procedure TEmpleadosBusinessProcessorRules.SetEXPERIENCIAIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_EmpleadosEXPERIENCIA] := Null; end; { TDireccionesContactoBusinessProcessorRules } constructor TDireccionesContactoBusinessProcessorRules.Create(aBusinessProcessor: TDABusinessProcessor); +var + StrList: TStringList; begin inherited; + + StrList := TStringList.Create; + StrList.OnChange := NOTAS_OnChange; + f_NOTAS := NewROStrings(StrList,True); end; destructor TDireccionesContactoBusinessProcessorRules.Destroy; @@ -3189,49 +6499,71 @@ begin inherited; end; +procedure TDireccionesContactoBusinessProcessorRules.NOTAS_OnChange(Sender: TObject); +begin + BusinessProcessor.CurrentChange.NewValueByName[fld_DireccionesContactoNOTAS] := TStringList(Sender).Text; +end; + function TDireccionesContactoBusinessProcessorRules.GetIDValue: Integer; begin result := BusinessProcessor.CurrentChange.NewValueByName[fld_DireccionesContactoID]; end; +function TDireccionesContactoBusinessProcessorRules.GetIDIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_DireccionesContactoID]); +end; + function TDireccionesContactoBusinessProcessorRules.GetOldIDValue: Integer; begin result := BusinessProcessor.CurrentChange.OldValueByName[fld_DireccionesContactoID]; end; +function TDireccionesContactoBusinessProcessorRules.GetOldIDIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_DireccionesContactoID]); +end; + procedure TDireccionesContactoBusinessProcessorRules.SetIDValue(const aValue: Integer); begin BusinessProcessor.CurrentChange.NewValueByName[fld_DireccionesContactoID] := aValue; end; +procedure TDireccionesContactoBusinessProcessorRules.SetIDIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_DireccionesContactoID] := Null; +end; + function TDireccionesContactoBusinessProcessorRules.GetID_CONTACTOValue: Integer; begin result := BusinessProcessor.CurrentChange.NewValueByName[fld_DireccionesContactoID_CONTACTO]; end; +function TDireccionesContactoBusinessProcessorRules.GetID_CONTACTOIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_DireccionesContactoID_CONTACTO]); +end; + function TDireccionesContactoBusinessProcessorRules.GetOldID_CONTACTOValue: Integer; begin result := BusinessProcessor.CurrentChange.OldValueByName[fld_DireccionesContactoID_CONTACTO]; end; +function TDireccionesContactoBusinessProcessorRules.GetOldID_CONTACTOIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_DireccionesContactoID_CONTACTO]); +end; + procedure TDireccionesContactoBusinessProcessorRules.SetID_CONTACTOValue(const aValue: Integer); begin BusinessProcessor.CurrentChange.NewValueByName[fld_DireccionesContactoID_CONTACTO] := aValue; end; -function TDireccionesContactoBusinessProcessorRules.GetNOMBREValue: String; +procedure TDireccionesContactoBusinessProcessorRules.SetID_CONTACTOIsNull(const aValue: Boolean); begin - result := BusinessProcessor.CurrentChange.NewValueByName[fld_DireccionesContactoNOMBRE]; -end; - -function TDireccionesContactoBusinessProcessorRules.GetOldNOMBREValue: String; -begin - result := BusinessProcessor.CurrentChange.OldValueByName[fld_DireccionesContactoNOMBRE]; -end; - -procedure TDireccionesContactoBusinessProcessorRules.SetNOMBREValue(const aValue: String); -begin - BusinessProcessor.CurrentChange.NewValueByName[fld_DireccionesContactoNOMBRE] := aValue; + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_DireccionesContactoID_CONTACTO] := Null; end; function TDireccionesContactoBusinessProcessorRules.GetCALLEValue: String; @@ -3239,151 +6571,337 @@ begin result := BusinessProcessor.CurrentChange.NewValueByName[fld_DireccionesContactoCALLE]; end; +function TDireccionesContactoBusinessProcessorRules.GetCALLEIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_DireccionesContactoCALLE]); +end; + function TDireccionesContactoBusinessProcessorRules.GetOldCALLEValue: String; begin result := BusinessProcessor.CurrentChange.OldValueByName[fld_DireccionesContactoCALLE]; end; +function TDireccionesContactoBusinessProcessorRules.GetOldCALLEIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_DireccionesContactoCALLE]); +end; + procedure TDireccionesContactoBusinessProcessorRules.SetCALLEValue(const aValue: String); begin BusinessProcessor.CurrentChange.NewValueByName[fld_DireccionesContactoCALLE] := aValue; end; +procedure TDireccionesContactoBusinessProcessorRules.SetCALLEIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_DireccionesContactoCALLE] := Null; +end; + function TDireccionesContactoBusinessProcessorRules.GetPOBLACIONValue: String; begin result := BusinessProcessor.CurrentChange.NewValueByName[fld_DireccionesContactoPOBLACION]; end; +function TDireccionesContactoBusinessProcessorRules.GetPOBLACIONIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_DireccionesContactoPOBLACION]); +end; + function TDireccionesContactoBusinessProcessorRules.GetOldPOBLACIONValue: String; begin result := BusinessProcessor.CurrentChange.OldValueByName[fld_DireccionesContactoPOBLACION]; end; +function TDireccionesContactoBusinessProcessorRules.GetOldPOBLACIONIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_DireccionesContactoPOBLACION]); +end; + procedure TDireccionesContactoBusinessProcessorRules.SetPOBLACIONValue(const aValue: String); begin BusinessProcessor.CurrentChange.NewValueByName[fld_DireccionesContactoPOBLACION] := aValue; end; +procedure TDireccionesContactoBusinessProcessorRules.SetPOBLACIONIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_DireccionesContactoPOBLACION] := Null; +end; + function TDireccionesContactoBusinessProcessorRules.GetPROVINCIAValue: String; begin result := BusinessProcessor.CurrentChange.NewValueByName[fld_DireccionesContactoPROVINCIA]; end; +function TDireccionesContactoBusinessProcessorRules.GetPROVINCIAIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_DireccionesContactoPROVINCIA]); +end; + function TDireccionesContactoBusinessProcessorRules.GetOldPROVINCIAValue: String; begin result := BusinessProcessor.CurrentChange.OldValueByName[fld_DireccionesContactoPROVINCIA]; end; +function TDireccionesContactoBusinessProcessorRules.GetOldPROVINCIAIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_DireccionesContactoPROVINCIA]); +end; + procedure TDireccionesContactoBusinessProcessorRules.SetPROVINCIAValue(const aValue: String); begin BusinessProcessor.CurrentChange.NewValueByName[fld_DireccionesContactoPROVINCIA] := aValue; end; +procedure TDireccionesContactoBusinessProcessorRules.SetPROVINCIAIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_DireccionesContactoPROVINCIA] := Null; +end; + function TDireccionesContactoBusinessProcessorRules.GetCODIGO_POSTALValue: String; begin result := BusinessProcessor.CurrentChange.NewValueByName[fld_DireccionesContactoCODIGO_POSTAL]; end; +function TDireccionesContactoBusinessProcessorRules.GetCODIGO_POSTALIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_DireccionesContactoCODIGO_POSTAL]); +end; + function TDireccionesContactoBusinessProcessorRules.GetOldCODIGO_POSTALValue: String; begin result := BusinessProcessor.CurrentChange.OldValueByName[fld_DireccionesContactoCODIGO_POSTAL]; end; +function TDireccionesContactoBusinessProcessorRules.GetOldCODIGO_POSTALIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_DireccionesContactoCODIGO_POSTAL]); +end; + procedure TDireccionesContactoBusinessProcessorRules.SetCODIGO_POSTALValue(const aValue: String); begin BusinessProcessor.CurrentChange.NewValueByName[fld_DireccionesContactoCODIGO_POSTAL] := aValue; end; +procedure TDireccionesContactoBusinessProcessorRules.SetCODIGO_POSTALIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_DireccionesContactoCODIGO_POSTAL] := Null; +end; + function TDireccionesContactoBusinessProcessorRules.GetPERSONA_CONTACTOValue: String; begin result := BusinessProcessor.CurrentChange.NewValueByName[fld_DireccionesContactoPERSONA_CONTACTO]; end; +function TDireccionesContactoBusinessProcessorRules.GetPERSONA_CONTACTOIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_DireccionesContactoPERSONA_CONTACTO]); +end; + function TDireccionesContactoBusinessProcessorRules.GetOldPERSONA_CONTACTOValue: String; begin result := BusinessProcessor.CurrentChange.OldValueByName[fld_DireccionesContactoPERSONA_CONTACTO]; end; +function TDireccionesContactoBusinessProcessorRules.GetOldPERSONA_CONTACTOIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_DireccionesContactoPERSONA_CONTACTO]); +end; + procedure TDireccionesContactoBusinessProcessorRules.SetPERSONA_CONTACTOValue(const aValue: String); begin BusinessProcessor.CurrentChange.NewValueByName[fld_DireccionesContactoPERSONA_CONTACTO] := aValue; end; +procedure TDireccionesContactoBusinessProcessorRules.SetPERSONA_CONTACTOIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_DireccionesContactoPERSONA_CONTACTO] := Null; +end; + +function TDireccionesContactoBusinessProcessorRules.GetNOMBREValue: String; +begin + result := BusinessProcessor.CurrentChange.NewValueByName[fld_DireccionesContactoNOMBRE]; +end; + +function TDireccionesContactoBusinessProcessorRules.GetNOMBREIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_DireccionesContactoNOMBRE]); +end; + +function TDireccionesContactoBusinessProcessorRules.GetOldNOMBREValue: String; +begin + result := BusinessProcessor.CurrentChange.OldValueByName[fld_DireccionesContactoNOMBRE]; +end; + +function TDireccionesContactoBusinessProcessorRules.GetOldNOMBREIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_DireccionesContactoNOMBRE]); +end; + +procedure TDireccionesContactoBusinessProcessorRules.SetNOMBREValue(const aValue: String); +begin + BusinessProcessor.CurrentChange.NewValueByName[fld_DireccionesContactoNOMBRE] := aValue; +end; + +procedure TDireccionesContactoBusinessProcessorRules.SetNOMBREIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_DireccionesContactoNOMBRE] := Null; +end; + function TDireccionesContactoBusinessProcessorRules.GetTELEFONOValue: String; begin result := BusinessProcessor.CurrentChange.NewValueByName[fld_DireccionesContactoTELEFONO]; end; +function TDireccionesContactoBusinessProcessorRules.GetTELEFONOIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_DireccionesContactoTELEFONO]); +end; + function TDireccionesContactoBusinessProcessorRules.GetOldTELEFONOValue: String; begin result := BusinessProcessor.CurrentChange.OldValueByName[fld_DireccionesContactoTELEFONO]; end; +function TDireccionesContactoBusinessProcessorRules.GetOldTELEFONOIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_DireccionesContactoTELEFONO]); +end; + procedure TDireccionesContactoBusinessProcessorRules.SetTELEFONOValue(const aValue: String); begin BusinessProcessor.CurrentChange.NewValueByName[fld_DireccionesContactoTELEFONO] := aValue; end; +procedure TDireccionesContactoBusinessProcessorRules.SetTELEFONOIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_DireccionesContactoTELEFONO] := Null; +end; + function TDireccionesContactoBusinessProcessorRules.GetMOVILValue: String; begin result := BusinessProcessor.CurrentChange.NewValueByName[fld_DireccionesContactoMOVIL]; end; +function TDireccionesContactoBusinessProcessorRules.GetMOVILIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_DireccionesContactoMOVIL]); +end; + function TDireccionesContactoBusinessProcessorRules.GetOldMOVILValue: String; begin result := BusinessProcessor.CurrentChange.OldValueByName[fld_DireccionesContactoMOVIL]; end; +function TDireccionesContactoBusinessProcessorRules.GetOldMOVILIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_DireccionesContactoMOVIL]); +end; + procedure TDireccionesContactoBusinessProcessorRules.SetMOVILValue(const aValue: String); begin BusinessProcessor.CurrentChange.NewValueByName[fld_DireccionesContactoMOVIL] := aValue; end; +procedure TDireccionesContactoBusinessProcessorRules.SetMOVILIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_DireccionesContactoMOVIL] := Null; +end; + function TDireccionesContactoBusinessProcessorRules.GetFAXValue: String; begin result := BusinessProcessor.CurrentChange.NewValueByName[fld_DireccionesContactoFAX]; end; +function TDireccionesContactoBusinessProcessorRules.GetFAXIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_DireccionesContactoFAX]); +end; + function TDireccionesContactoBusinessProcessorRules.GetOldFAXValue: String; begin result := BusinessProcessor.CurrentChange.OldValueByName[fld_DireccionesContactoFAX]; end; +function TDireccionesContactoBusinessProcessorRules.GetOldFAXIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_DireccionesContactoFAX]); +end; + procedure TDireccionesContactoBusinessProcessorRules.SetFAXValue(const aValue: String); begin BusinessProcessor.CurrentChange.NewValueByName[fld_DireccionesContactoFAX] := aValue; end; +procedure TDireccionesContactoBusinessProcessorRules.SetFAXIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_DireccionesContactoFAX] := Null; +end; + function TDireccionesContactoBusinessProcessorRules.GetEMAILValue: String; begin result := BusinessProcessor.CurrentChange.NewValueByName[fld_DireccionesContactoEMAIL]; end; +function TDireccionesContactoBusinessProcessorRules.GetEMAILIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_DireccionesContactoEMAIL]); +end; + function TDireccionesContactoBusinessProcessorRules.GetOldEMAILValue: String; begin result := BusinessProcessor.CurrentChange.OldValueByName[fld_DireccionesContactoEMAIL]; end; +function TDireccionesContactoBusinessProcessorRules.GetOldEMAILIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_DireccionesContactoEMAIL]); +end; + procedure TDireccionesContactoBusinessProcessorRules.SetEMAILValue(const aValue: String); begin BusinessProcessor.CurrentChange.NewValueByName[fld_DireccionesContactoEMAIL] := aValue; end; +procedure TDireccionesContactoBusinessProcessorRules.SetEMAILIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_DireccionesContactoEMAIL] := Null; +end; + function TDireccionesContactoBusinessProcessorRules.GetNOTASValue: IROStrings; begin - result := NewROStrings(); + result := f_NOTAS; result.Text := BusinessProcessor.CurrentChange.NewValueByName[fld_DireccionesContactoNOTAS]; end; +function TDireccionesContactoBusinessProcessorRules.GetNOTASIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_DireccionesContactoNOTAS]); +end; + function TDireccionesContactoBusinessProcessorRules.GetOldNOTASValue: IROStrings; begin result := NewROStrings(); result.Text := BusinessProcessor.CurrentChange.OldValueByName[fld_DireccionesContactoNOTAS]; end; -procedure TDireccionesContactoBusinessProcessorRules.SetNOTASValue(const aValue: IROStrings); +function TDireccionesContactoBusinessProcessorRules.GetOldNOTASIsNull: Boolean; begin - BusinessProcessor.CurrentChange.NewValueByName[fld_DireccionesContactoNOTAS] := aValue.Text; + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_DireccionesContactoNOTAS]); +end; + +procedure TDireccionesContactoBusinessProcessorRules.SetNOTASIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_DireccionesContactoNOTAS] := Null; end; function TDireccionesContactoBusinessProcessorRules.GetPORTEValue: Float; @@ -3391,16 +6909,94 @@ begin result := BusinessProcessor.CurrentChange.NewValueByName[fld_DireccionesContactoPORTE]; end; +function TDireccionesContactoBusinessProcessorRules.GetPORTEIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_DireccionesContactoPORTE]); +end; + function TDireccionesContactoBusinessProcessorRules.GetOldPORTEValue: Float; begin result := BusinessProcessor.CurrentChange.OldValueByName[fld_DireccionesContactoPORTE]; end; +function TDireccionesContactoBusinessProcessorRules.GetOldPORTEIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_DireccionesContactoPORTE]); +end; + procedure TDireccionesContactoBusinessProcessorRules.SetPORTEValue(const aValue: Float); begin BusinessProcessor.CurrentChange.NewValueByName[fld_DireccionesContactoPORTE] := aValue; end; +procedure TDireccionesContactoBusinessProcessorRules.SetPORTEIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_DireccionesContactoPORTE] := Null; +end; + +function TDireccionesContactoBusinessProcessorRules.GetFECHA_ALTAValue: DateTime; +begin + result := BusinessProcessor.CurrentChange.NewValueByName[fld_DireccionesContactoFECHA_ALTA]; +end; + +function TDireccionesContactoBusinessProcessorRules.GetFECHA_ALTAIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_DireccionesContactoFECHA_ALTA]); +end; + +function TDireccionesContactoBusinessProcessorRules.GetOldFECHA_ALTAValue: DateTime; +begin + result := BusinessProcessor.CurrentChange.OldValueByName[fld_DireccionesContactoFECHA_ALTA]; +end; + +function TDireccionesContactoBusinessProcessorRules.GetOldFECHA_ALTAIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_DireccionesContactoFECHA_ALTA]); +end; + +procedure TDireccionesContactoBusinessProcessorRules.SetFECHA_ALTAValue(const aValue: DateTime); +begin + BusinessProcessor.CurrentChange.NewValueByName[fld_DireccionesContactoFECHA_ALTA] := aValue; +end; + +procedure TDireccionesContactoBusinessProcessorRules.SetFECHA_ALTAIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_DireccionesContactoFECHA_ALTA] := Null; +end; + +function TDireccionesContactoBusinessProcessorRules.GetFECHA_MODIFICACIONValue: DateTime; +begin + result := BusinessProcessor.CurrentChange.NewValueByName[fld_DireccionesContactoFECHA_MODIFICACION]; +end; + +function TDireccionesContactoBusinessProcessorRules.GetFECHA_MODIFICACIONIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_DireccionesContactoFECHA_MODIFICACION]); +end; + +function TDireccionesContactoBusinessProcessorRules.GetOldFECHA_MODIFICACIONValue: DateTime; +begin + result := BusinessProcessor.CurrentChange.OldValueByName[fld_DireccionesContactoFECHA_MODIFICACION]; +end; + +function TDireccionesContactoBusinessProcessorRules.GetOldFECHA_MODIFICACIONIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_DireccionesContactoFECHA_MODIFICACION]); +end; + +procedure TDireccionesContactoBusinessProcessorRules.SetFECHA_MODIFICACIONValue(const aValue: DateTime); +begin + BusinessProcessor.CurrentChange.NewValueByName[fld_DireccionesContactoFECHA_MODIFICACION] := aValue; +end; + +procedure TDireccionesContactoBusinessProcessorRules.SetFECHA_MODIFICACIONIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_DireccionesContactoFECHA_MODIFICACION] := Null; +end; + { TClientesDescuentosBusinessProcessorRules } constructor TClientesDescuentosBusinessProcessorRules.Create(aBusinessProcessor: TDABusinessProcessor); @@ -3418,76 +7014,156 @@ begin result := BusinessProcessor.CurrentChange.NewValueByName[fld_ClientesDescuentosID]; end; +function TClientesDescuentosBusinessProcessorRules.GetIDIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_ClientesDescuentosID]); +end; + function TClientesDescuentosBusinessProcessorRules.GetOldIDValue: Integer; begin result := BusinessProcessor.CurrentChange.OldValueByName[fld_ClientesDescuentosID]; end; +function TClientesDescuentosBusinessProcessorRules.GetOldIDIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_ClientesDescuentosID]); +end; + procedure TClientesDescuentosBusinessProcessorRules.SetIDValue(const aValue: Integer); begin BusinessProcessor.CurrentChange.NewValueByName[fld_ClientesDescuentosID] := aValue; end; +procedure TClientesDescuentosBusinessProcessorRules.SetIDIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_ClientesDescuentosID] := Null; +end; + function TClientesDescuentosBusinessProcessorRules.GetID_CLIENTEValue: Integer; begin result := BusinessProcessor.CurrentChange.NewValueByName[fld_ClientesDescuentosID_CLIENTE]; end; +function TClientesDescuentosBusinessProcessorRules.GetID_CLIENTEIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_ClientesDescuentosID_CLIENTE]); +end; + function TClientesDescuentosBusinessProcessorRules.GetOldID_CLIENTEValue: Integer; begin result := BusinessProcessor.CurrentChange.OldValueByName[fld_ClientesDescuentosID_CLIENTE]; end; +function TClientesDescuentosBusinessProcessorRules.GetOldID_CLIENTEIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_ClientesDescuentosID_CLIENTE]); +end; + procedure TClientesDescuentosBusinessProcessorRules.SetID_CLIENTEValue(const aValue: Integer); begin BusinessProcessor.CurrentChange.NewValueByName[fld_ClientesDescuentosID_CLIENTE] := aValue; end; +procedure TClientesDescuentosBusinessProcessorRules.SetID_CLIENTEIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_ClientesDescuentosID_CLIENTE] := Null; +end; + function TClientesDescuentosBusinessProcessorRules.GetID_PROVEEDORValue: Integer; begin result := BusinessProcessor.CurrentChange.NewValueByName[fld_ClientesDescuentosID_PROVEEDOR]; end; +function TClientesDescuentosBusinessProcessorRules.GetID_PROVEEDORIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_ClientesDescuentosID_PROVEEDOR]); +end; + function TClientesDescuentosBusinessProcessorRules.GetOldID_PROVEEDORValue: Integer; begin result := BusinessProcessor.CurrentChange.OldValueByName[fld_ClientesDescuentosID_PROVEEDOR]; end; +function TClientesDescuentosBusinessProcessorRules.GetOldID_PROVEEDORIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_ClientesDescuentosID_PROVEEDOR]); +end; + procedure TClientesDescuentosBusinessProcessorRules.SetID_PROVEEDORValue(const aValue: Integer); begin BusinessProcessor.CurrentChange.NewValueByName[fld_ClientesDescuentosID_PROVEEDOR] := aValue; end; +procedure TClientesDescuentosBusinessProcessorRules.SetID_PROVEEDORIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_ClientesDescuentosID_PROVEEDOR] := Null; +end; + function TClientesDescuentosBusinessProcessorRules.GetNOMBREValue: String; begin result := BusinessProcessor.CurrentChange.NewValueByName[fld_ClientesDescuentosNOMBRE]; end; +function TClientesDescuentosBusinessProcessorRules.GetNOMBREIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_ClientesDescuentosNOMBRE]); +end; + function TClientesDescuentosBusinessProcessorRules.GetOldNOMBREValue: String; begin result := BusinessProcessor.CurrentChange.OldValueByName[fld_ClientesDescuentosNOMBRE]; end; +function TClientesDescuentosBusinessProcessorRules.GetOldNOMBREIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_ClientesDescuentosNOMBRE]); +end; + procedure TClientesDescuentosBusinessProcessorRules.SetNOMBREValue(const aValue: String); begin BusinessProcessor.CurrentChange.NewValueByName[fld_ClientesDescuentosNOMBRE] := aValue; end; +procedure TClientesDescuentosBusinessProcessorRules.SetNOMBREIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_ClientesDescuentosNOMBRE] := Null; +end; + function TClientesDescuentosBusinessProcessorRules.GetDESCUENTOValue: Float; begin result := BusinessProcessor.CurrentChange.NewValueByName[fld_ClientesDescuentosDESCUENTO]; end; +function TClientesDescuentosBusinessProcessorRules.GetDESCUENTOIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_ClientesDescuentosDESCUENTO]); +end; + function TClientesDescuentosBusinessProcessorRules.GetOldDESCUENTOValue: Float; begin result := BusinessProcessor.CurrentChange.OldValueByName[fld_ClientesDescuentosDESCUENTO]; end; +function TClientesDescuentosBusinessProcessorRules.GetOldDESCUENTOIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_ClientesDescuentosDESCUENTO]); +end; + procedure TClientesDescuentosBusinessProcessorRules.SetDESCUENTOValue(const aValue: Float); begin BusinessProcessor.CurrentChange.NewValueByName[fld_ClientesDescuentosDESCUENTO] := aValue; end; +procedure TClientesDescuentosBusinessProcessorRules.SetDESCUENTOIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_ClientesDescuentosDESCUENTO] := Null; +end; + { TGruposProveedorBusinessProcessorRules } constructor TGruposProveedorBusinessProcessorRules.Create(aBusinessProcessor: TDABusinessProcessor); @@ -3505,16 +7181,32 @@ begin result := BusinessProcessor.CurrentChange.NewValueByName[fld_GruposProveedorDESCRIPCION]; end; +function TGruposProveedorBusinessProcessorRules.GetDESCRIPCIONIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_GruposProveedorDESCRIPCION]); +end; + function TGruposProveedorBusinessProcessorRules.GetOldDESCRIPCIONValue: String; begin result := BusinessProcessor.CurrentChange.OldValueByName[fld_GruposProveedorDESCRIPCION]; end; +function TGruposProveedorBusinessProcessorRules.GetOldDESCRIPCIONIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_GruposProveedorDESCRIPCION]); +end; + procedure TGruposProveedorBusinessProcessorRules.SetDESCRIPCIONValue(const aValue: String); begin BusinessProcessor.CurrentChange.NewValueByName[fld_GruposProveedorDESCRIPCION] := aValue; end; +procedure TGruposProveedorBusinessProcessorRules.SetDESCRIPCIONIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_GruposProveedorDESCRIPCION] := Null; +end; + { TGruposEmpleadoBusinessProcessorRules } constructor TGruposEmpleadoBusinessProcessorRules.Create(aBusinessProcessor: TDABusinessProcessor); @@ -3532,22 +7224,708 @@ begin result := BusinessProcessor.CurrentChange.NewValueByName[fld_GruposEmpleadoDESCRIPCION]; end; +function TGruposEmpleadoBusinessProcessorRules.GetDESCRIPCIONIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_GruposEmpleadoDESCRIPCION]); +end; + function TGruposEmpleadoBusinessProcessorRules.GetOldDESCRIPCIONValue: String; begin result := BusinessProcessor.CurrentChange.OldValueByName[fld_GruposEmpleadoDESCRIPCION]; end; +function TGruposEmpleadoBusinessProcessorRules.GetOldDESCRIPCIONIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_GruposEmpleadoDESCRIPCION]); +end; + procedure TGruposEmpleadoBusinessProcessorRules.SetDESCRIPCIONValue(const aValue: String); begin BusinessProcessor.CurrentChange.NewValueByName[fld_GruposEmpleadoDESCRIPCION] := aValue; end; +procedure TGruposEmpleadoBusinessProcessorRules.SetDESCRIPCIONIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_GruposEmpleadoDESCRIPCION] := Null; +end; + + +{ TContactos_RefreshBusinessProcessorRules } +constructor TContactos_RefreshBusinessProcessorRules.Create(aBusinessProcessor: TDABusinessProcessor); +var + StrList: TStringList; +begin + inherited; + + StrList := TStringList.Create; + StrList.OnChange := NOTAS_OnChange; + f_NOTAS := NewROStrings(StrList,True); +end; + +destructor TContactos_RefreshBusinessProcessorRules.Destroy; +begin + inherited; +end; + +procedure TContactos_RefreshBusinessProcessorRules.NOTAS_OnChange(Sender: TObject); +begin + BusinessProcessor.CurrentChange.NewValueByName[fld_Contactos_RefreshNOTAS] := TStringList(Sender).Text; +end; + +function TContactos_RefreshBusinessProcessorRules.GetIDValue: Integer; +begin + result := BusinessProcessor.CurrentChange.NewValueByName[fld_Contactos_RefreshID]; +end; + +function TContactos_RefreshBusinessProcessorRules.GetIDIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_Contactos_RefreshID]); +end; + +function TContactos_RefreshBusinessProcessorRules.GetOldIDValue: Integer; +begin + result := BusinessProcessor.CurrentChange.OldValueByName[fld_Contactos_RefreshID]; +end; + +function TContactos_RefreshBusinessProcessorRules.GetOldIDIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_Contactos_RefreshID]); +end; + +procedure TContactos_RefreshBusinessProcessorRules.SetIDValue(const aValue: Integer); +begin + BusinessProcessor.CurrentChange.NewValueByName[fld_Contactos_RefreshID] := aValue; +end; + +procedure TContactos_RefreshBusinessProcessorRules.SetIDIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_Contactos_RefreshID] := Null; +end; + +function TContactos_RefreshBusinessProcessorRules.GetNIF_CIFValue: String; +begin + result := BusinessProcessor.CurrentChange.NewValueByName[fld_Contactos_RefreshNIF_CIF]; +end; + +function TContactos_RefreshBusinessProcessorRules.GetNIF_CIFIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_Contactos_RefreshNIF_CIF]); +end; + +function TContactos_RefreshBusinessProcessorRules.GetOldNIF_CIFValue: String; +begin + result := BusinessProcessor.CurrentChange.OldValueByName[fld_Contactos_RefreshNIF_CIF]; +end; + +function TContactos_RefreshBusinessProcessorRules.GetOldNIF_CIFIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_Contactos_RefreshNIF_CIF]); +end; + +procedure TContactos_RefreshBusinessProcessorRules.SetNIF_CIFValue(const aValue: String); +begin + BusinessProcessor.CurrentChange.NewValueByName[fld_Contactos_RefreshNIF_CIF] := aValue; +end; + +procedure TContactos_RefreshBusinessProcessorRules.SetNIF_CIFIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_Contactos_RefreshNIF_CIF] := Null; +end; + +function TContactos_RefreshBusinessProcessorRules.GetNOMBREValue: String; +begin + result := BusinessProcessor.CurrentChange.NewValueByName[fld_Contactos_RefreshNOMBRE]; +end; + +function TContactos_RefreshBusinessProcessorRules.GetNOMBREIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_Contactos_RefreshNOMBRE]); +end; + +function TContactos_RefreshBusinessProcessorRules.GetOldNOMBREValue: String; +begin + result := BusinessProcessor.CurrentChange.OldValueByName[fld_Contactos_RefreshNOMBRE]; +end; + +function TContactos_RefreshBusinessProcessorRules.GetOldNOMBREIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_Contactos_RefreshNOMBRE]); +end; + +procedure TContactos_RefreshBusinessProcessorRules.SetNOMBREValue(const aValue: String); +begin + BusinessProcessor.CurrentChange.NewValueByName[fld_Contactos_RefreshNOMBRE] := aValue; +end; + +procedure TContactos_RefreshBusinessProcessorRules.SetNOMBREIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_Contactos_RefreshNOMBRE] := Null; +end; + +function TContactos_RefreshBusinessProcessorRules.GetCALLEValue: String; +begin + result := BusinessProcessor.CurrentChange.NewValueByName[fld_Contactos_RefreshCALLE]; +end; + +function TContactos_RefreshBusinessProcessorRules.GetCALLEIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_Contactos_RefreshCALLE]); +end; + +function TContactos_RefreshBusinessProcessorRules.GetOldCALLEValue: String; +begin + result := BusinessProcessor.CurrentChange.OldValueByName[fld_Contactos_RefreshCALLE]; +end; + +function TContactos_RefreshBusinessProcessorRules.GetOldCALLEIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_Contactos_RefreshCALLE]); +end; + +procedure TContactos_RefreshBusinessProcessorRules.SetCALLEValue(const aValue: String); +begin + BusinessProcessor.CurrentChange.NewValueByName[fld_Contactos_RefreshCALLE] := aValue; +end; + +procedure TContactos_RefreshBusinessProcessorRules.SetCALLEIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_Contactos_RefreshCALLE] := Null; +end; + +function TContactos_RefreshBusinessProcessorRules.GetPOBLACIONValue: String; +begin + result := BusinessProcessor.CurrentChange.NewValueByName[fld_Contactos_RefreshPOBLACION]; +end; + +function TContactos_RefreshBusinessProcessorRules.GetPOBLACIONIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_Contactos_RefreshPOBLACION]); +end; + +function TContactos_RefreshBusinessProcessorRules.GetOldPOBLACIONValue: String; +begin + result := BusinessProcessor.CurrentChange.OldValueByName[fld_Contactos_RefreshPOBLACION]; +end; + +function TContactos_RefreshBusinessProcessorRules.GetOldPOBLACIONIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_Contactos_RefreshPOBLACION]); +end; + +procedure TContactos_RefreshBusinessProcessorRules.SetPOBLACIONValue(const aValue: String); +begin + BusinessProcessor.CurrentChange.NewValueByName[fld_Contactos_RefreshPOBLACION] := aValue; +end; + +procedure TContactos_RefreshBusinessProcessorRules.SetPOBLACIONIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_Contactos_RefreshPOBLACION] := Null; +end; + +function TContactos_RefreshBusinessProcessorRules.GetPROVINCIAValue: String; +begin + result := BusinessProcessor.CurrentChange.NewValueByName[fld_Contactos_RefreshPROVINCIA]; +end; + +function TContactos_RefreshBusinessProcessorRules.GetPROVINCIAIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_Contactos_RefreshPROVINCIA]); +end; + +function TContactos_RefreshBusinessProcessorRules.GetOldPROVINCIAValue: String; +begin + result := BusinessProcessor.CurrentChange.OldValueByName[fld_Contactos_RefreshPROVINCIA]; +end; + +function TContactos_RefreshBusinessProcessorRules.GetOldPROVINCIAIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_Contactos_RefreshPROVINCIA]); +end; + +procedure TContactos_RefreshBusinessProcessorRules.SetPROVINCIAValue(const aValue: String); +begin + BusinessProcessor.CurrentChange.NewValueByName[fld_Contactos_RefreshPROVINCIA] := aValue; +end; + +procedure TContactos_RefreshBusinessProcessorRules.SetPROVINCIAIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_Contactos_RefreshPROVINCIA] := Null; +end; + +function TContactos_RefreshBusinessProcessorRules.GetCODIGO_POSTALValue: String; +begin + result := BusinessProcessor.CurrentChange.NewValueByName[fld_Contactos_RefreshCODIGO_POSTAL]; +end; + +function TContactos_RefreshBusinessProcessorRules.GetCODIGO_POSTALIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_Contactos_RefreshCODIGO_POSTAL]); +end; + +function TContactos_RefreshBusinessProcessorRules.GetOldCODIGO_POSTALValue: String; +begin + result := BusinessProcessor.CurrentChange.OldValueByName[fld_Contactos_RefreshCODIGO_POSTAL]; +end; + +function TContactos_RefreshBusinessProcessorRules.GetOldCODIGO_POSTALIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_Contactos_RefreshCODIGO_POSTAL]); +end; + +procedure TContactos_RefreshBusinessProcessorRules.SetCODIGO_POSTALValue(const aValue: String); +begin + BusinessProcessor.CurrentChange.NewValueByName[fld_Contactos_RefreshCODIGO_POSTAL] := aValue; +end; + +procedure TContactos_RefreshBusinessProcessorRules.SetCODIGO_POSTALIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_Contactos_RefreshCODIGO_POSTAL] := Null; +end; + +function TContactos_RefreshBusinessProcessorRules.GetTELEFONO_1Value: String; +begin + result := BusinessProcessor.CurrentChange.NewValueByName[fld_Contactos_RefreshTELEFONO_1]; +end; + +function TContactos_RefreshBusinessProcessorRules.GetTELEFONO_1IsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_Contactos_RefreshTELEFONO_1]); +end; + +function TContactos_RefreshBusinessProcessorRules.GetOldTELEFONO_1Value: String; +begin + result := BusinessProcessor.CurrentChange.OldValueByName[fld_Contactos_RefreshTELEFONO_1]; +end; + +function TContactos_RefreshBusinessProcessorRules.GetOldTELEFONO_1IsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_Contactos_RefreshTELEFONO_1]); +end; + +procedure TContactos_RefreshBusinessProcessorRules.SetTELEFONO_1Value(const aValue: String); +begin + BusinessProcessor.CurrentChange.NewValueByName[fld_Contactos_RefreshTELEFONO_1] := aValue; +end; + +procedure TContactos_RefreshBusinessProcessorRules.SetTELEFONO_1IsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_Contactos_RefreshTELEFONO_1] := Null; +end; + +function TContactos_RefreshBusinessProcessorRules.GetTELEFONO_2Value: String; +begin + result := BusinessProcessor.CurrentChange.NewValueByName[fld_Contactos_RefreshTELEFONO_2]; +end; + +function TContactos_RefreshBusinessProcessorRules.GetTELEFONO_2IsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_Contactos_RefreshTELEFONO_2]); +end; + +function TContactos_RefreshBusinessProcessorRules.GetOldTELEFONO_2Value: String; +begin + result := BusinessProcessor.CurrentChange.OldValueByName[fld_Contactos_RefreshTELEFONO_2]; +end; + +function TContactos_RefreshBusinessProcessorRules.GetOldTELEFONO_2IsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_Contactos_RefreshTELEFONO_2]); +end; + +procedure TContactos_RefreshBusinessProcessorRules.SetTELEFONO_2Value(const aValue: String); +begin + BusinessProcessor.CurrentChange.NewValueByName[fld_Contactos_RefreshTELEFONO_2] := aValue; +end; + +procedure TContactos_RefreshBusinessProcessorRules.SetTELEFONO_2IsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_Contactos_RefreshTELEFONO_2] := Null; +end; + +function TContactos_RefreshBusinessProcessorRules.GetMOVIL_1Value: String; +begin + result := BusinessProcessor.CurrentChange.NewValueByName[fld_Contactos_RefreshMOVIL_1]; +end; + +function TContactos_RefreshBusinessProcessorRules.GetMOVIL_1IsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_Contactos_RefreshMOVIL_1]); +end; + +function TContactos_RefreshBusinessProcessorRules.GetOldMOVIL_1Value: String; +begin + result := BusinessProcessor.CurrentChange.OldValueByName[fld_Contactos_RefreshMOVIL_1]; +end; + +function TContactos_RefreshBusinessProcessorRules.GetOldMOVIL_1IsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_Contactos_RefreshMOVIL_1]); +end; + +procedure TContactos_RefreshBusinessProcessorRules.SetMOVIL_1Value(const aValue: String); +begin + BusinessProcessor.CurrentChange.NewValueByName[fld_Contactos_RefreshMOVIL_1] := aValue; +end; + +procedure TContactos_RefreshBusinessProcessorRules.SetMOVIL_1IsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_Contactos_RefreshMOVIL_1] := Null; +end; + +function TContactos_RefreshBusinessProcessorRules.GetMOVIL_2Value: String; +begin + result := BusinessProcessor.CurrentChange.NewValueByName[fld_Contactos_RefreshMOVIL_2]; +end; + +function TContactos_RefreshBusinessProcessorRules.GetMOVIL_2IsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_Contactos_RefreshMOVIL_2]); +end; + +function TContactos_RefreshBusinessProcessorRules.GetOldMOVIL_2Value: String; +begin + result := BusinessProcessor.CurrentChange.OldValueByName[fld_Contactos_RefreshMOVIL_2]; +end; + +function TContactos_RefreshBusinessProcessorRules.GetOldMOVIL_2IsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_Contactos_RefreshMOVIL_2]); +end; + +procedure TContactos_RefreshBusinessProcessorRules.SetMOVIL_2Value(const aValue: String); +begin + BusinessProcessor.CurrentChange.NewValueByName[fld_Contactos_RefreshMOVIL_2] := aValue; +end; + +procedure TContactos_RefreshBusinessProcessorRules.SetMOVIL_2IsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_Contactos_RefreshMOVIL_2] := Null; +end; + +function TContactos_RefreshBusinessProcessorRules.GetFAXValue: String; +begin + result := BusinessProcessor.CurrentChange.NewValueByName[fld_Contactos_RefreshFAX]; +end; + +function TContactos_RefreshBusinessProcessorRules.GetFAXIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_Contactos_RefreshFAX]); +end; + +function TContactos_RefreshBusinessProcessorRules.GetOldFAXValue: String; +begin + result := BusinessProcessor.CurrentChange.OldValueByName[fld_Contactos_RefreshFAX]; +end; + +function TContactos_RefreshBusinessProcessorRules.GetOldFAXIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_Contactos_RefreshFAX]); +end; + +procedure TContactos_RefreshBusinessProcessorRules.SetFAXValue(const aValue: String); +begin + BusinessProcessor.CurrentChange.NewValueByName[fld_Contactos_RefreshFAX] := aValue; +end; + +procedure TContactos_RefreshBusinessProcessorRules.SetFAXIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_Contactos_RefreshFAX] := Null; +end; + +function TContactos_RefreshBusinessProcessorRules.GetEMAIL_1Value: String; +begin + result := BusinessProcessor.CurrentChange.NewValueByName[fld_Contactos_RefreshEMAIL_1]; +end; + +function TContactos_RefreshBusinessProcessorRules.GetEMAIL_1IsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_Contactos_RefreshEMAIL_1]); +end; + +function TContactos_RefreshBusinessProcessorRules.GetOldEMAIL_1Value: String; +begin + result := BusinessProcessor.CurrentChange.OldValueByName[fld_Contactos_RefreshEMAIL_1]; +end; + +function TContactos_RefreshBusinessProcessorRules.GetOldEMAIL_1IsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_Contactos_RefreshEMAIL_1]); +end; + +procedure TContactos_RefreshBusinessProcessorRules.SetEMAIL_1Value(const aValue: String); +begin + BusinessProcessor.CurrentChange.NewValueByName[fld_Contactos_RefreshEMAIL_1] := aValue; +end; + +procedure TContactos_RefreshBusinessProcessorRules.SetEMAIL_1IsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_Contactos_RefreshEMAIL_1] := Null; +end; + +function TContactos_RefreshBusinessProcessorRules.GetEMAIL_2Value: String; +begin + result := BusinessProcessor.CurrentChange.NewValueByName[fld_Contactos_RefreshEMAIL_2]; +end; + +function TContactos_RefreshBusinessProcessorRules.GetEMAIL_2IsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_Contactos_RefreshEMAIL_2]); +end; + +function TContactos_RefreshBusinessProcessorRules.GetOldEMAIL_2Value: String; +begin + result := BusinessProcessor.CurrentChange.OldValueByName[fld_Contactos_RefreshEMAIL_2]; +end; + +function TContactos_RefreshBusinessProcessorRules.GetOldEMAIL_2IsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_Contactos_RefreshEMAIL_2]); +end; + +procedure TContactos_RefreshBusinessProcessorRules.SetEMAIL_2Value(const aValue: String); +begin + BusinessProcessor.CurrentChange.NewValueByName[fld_Contactos_RefreshEMAIL_2] := aValue; +end; + +procedure TContactos_RefreshBusinessProcessorRules.SetEMAIL_2IsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_Contactos_RefreshEMAIL_2] := Null; +end; + +function TContactos_RefreshBusinessProcessorRules.GetPAGINA_WEBValue: String; +begin + result := BusinessProcessor.CurrentChange.NewValueByName[fld_Contactos_RefreshPAGINA_WEB]; +end; + +function TContactos_RefreshBusinessProcessorRules.GetPAGINA_WEBIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_Contactos_RefreshPAGINA_WEB]); +end; + +function TContactos_RefreshBusinessProcessorRules.GetOldPAGINA_WEBValue: String; +begin + result := BusinessProcessor.CurrentChange.OldValueByName[fld_Contactos_RefreshPAGINA_WEB]; +end; + +function TContactos_RefreshBusinessProcessorRules.GetOldPAGINA_WEBIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_Contactos_RefreshPAGINA_WEB]); +end; + +procedure TContactos_RefreshBusinessProcessorRules.SetPAGINA_WEBValue(const aValue: String); +begin + BusinessProcessor.CurrentChange.NewValueByName[fld_Contactos_RefreshPAGINA_WEB] := aValue; +end; + +procedure TContactos_RefreshBusinessProcessorRules.SetPAGINA_WEBIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_Contactos_RefreshPAGINA_WEB] := Null; +end; + +function TContactos_RefreshBusinessProcessorRules.GetNOTASValue: IROStrings; +begin + result := f_NOTAS; + result.Text := BusinessProcessor.CurrentChange.NewValueByName[fld_Contactos_RefreshNOTAS]; +end; + +function TContactos_RefreshBusinessProcessorRules.GetNOTASIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_Contactos_RefreshNOTAS]); +end; + +function TContactos_RefreshBusinessProcessorRules.GetOldNOTASValue: IROStrings; +begin + result := NewROStrings(); + result.Text := BusinessProcessor.CurrentChange.OldValueByName[fld_Contactos_RefreshNOTAS]; +end; + +function TContactos_RefreshBusinessProcessorRules.GetOldNOTASIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_Contactos_RefreshNOTAS]); +end; + +procedure TContactos_RefreshBusinessProcessorRules.SetNOTASIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_Contactos_RefreshNOTAS] := Null; +end; + +function TContactos_RefreshBusinessProcessorRules.GetFECHA_ALTAValue: DateTime; +begin + result := BusinessProcessor.CurrentChange.NewValueByName[fld_Contactos_RefreshFECHA_ALTA]; +end; + +function TContactos_RefreshBusinessProcessorRules.GetFECHA_ALTAIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_Contactos_RefreshFECHA_ALTA]); +end; + +function TContactos_RefreshBusinessProcessorRules.GetOldFECHA_ALTAValue: DateTime; +begin + result := BusinessProcessor.CurrentChange.OldValueByName[fld_Contactos_RefreshFECHA_ALTA]; +end; + +function TContactos_RefreshBusinessProcessorRules.GetOldFECHA_ALTAIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_Contactos_RefreshFECHA_ALTA]); +end; + +procedure TContactos_RefreshBusinessProcessorRules.SetFECHA_ALTAValue(const aValue: DateTime); +begin + BusinessProcessor.CurrentChange.NewValueByName[fld_Contactos_RefreshFECHA_ALTA] := aValue; +end; + +procedure TContactos_RefreshBusinessProcessorRules.SetFECHA_ALTAIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_Contactos_RefreshFECHA_ALTA] := Null; +end; + +function TContactos_RefreshBusinessProcessorRules.GetFECHA_MODIFICACIONValue: DateTime; +begin + result := BusinessProcessor.CurrentChange.NewValueByName[fld_Contactos_RefreshFECHA_MODIFICACION]; +end; + +function TContactos_RefreshBusinessProcessorRules.GetFECHA_MODIFICACIONIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_Contactos_RefreshFECHA_MODIFICACION]); +end; + +function TContactos_RefreshBusinessProcessorRules.GetOldFECHA_MODIFICACIONValue: DateTime; +begin + result := BusinessProcessor.CurrentChange.OldValueByName[fld_Contactos_RefreshFECHA_MODIFICACION]; +end; + +function TContactos_RefreshBusinessProcessorRules.GetOldFECHA_MODIFICACIONIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_Contactos_RefreshFECHA_MODIFICACION]); +end; + +procedure TContactos_RefreshBusinessProcessorRules.SetFECHA_MODIFICACIONValue(const aValue: DateTime); +begin + BusinessProcessor.CurrentChange.NewValueByName[fld_Contactos_RefreshFECHA_MODIFICACION] := aValue; +end; + +procedure TContactos_RefreshBusinessProcessorRules.SetFECHA_MODIFICACIONIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_Contactos_RefreshFECHA_MODIFICACION] := Null; +end; + +function TContactos_RefreshBusinessProcessorRules.GetUSUARIOValue: String; +begin + result := BusinessProcessor.CurrentChange.NewValueByName[fld_Contactos_RefreshUSUARIO]; +end; + +function TContactos_RefreshBusinessProcessorRules.GetUSUARIOIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_Contactos_RefreshUSUARIO]); +end; + +function TContactos_RefreshBusinessProcessorRules.GetOldUSUARIOValue: String; +begin + result := BusinessProcessor.CurrentChange.OldValueByName[fld_Contactos_RefreshUSUARIO]; +end; + +function TContactos_RefreshBusinessProcessorRules.GetOldUSUARIOIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_Contactos_RefreshUSUARIO]); +end; + +procedure TContactos_RefreshBusinessProcessorRules.SetUSUARIOValue(const aValue: String); +begin + BusinessProcessor.CurrentChange.NewValueByName[fld_Contactos_RefreshUSUARIO] := aValue; +end; + +procedure TContactos_RefreshBusinessProcessorRules.SetUSUARIOIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_Contactos_RefreshUSUARIO] := Null; +end; + +function TContactos_RefreshBusinessProcessorRules.GetREFERENCIAValue: String; +begin + result := BusinessProcessor.CurrentChange.NewValueByName[fld_Contactos_RefreshREFERENCIA]; +end; + +function TContactos_RefreshBusinessProcessorRules.GetREFERENCIAIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_Contactos_RefreshREFERENCIA]); +end; + +function TContactos_RefreshBusinessProcessorRules.GetOldREFERENCIAValue: String; +begin + result := BusinessProcessor.CurrentChange.OldValueByName[fld_Contactos_RefreshREFERENCIA]; +end; + +function TContactos_RefreshBusinessProcessorRules.GetOldREFERENCIAIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_Contactos_RefreshREFERENCIA]); +end; + +procedure TContactos_RefreshBusinessProcessorRules.SetREFERENCIAValue(const aValue: String); +begin + BusinessProcessor.CurrentChange.NewValueByName[fld_Contactos_RefreshREFERENCIA] := aValue; +end; + +procedure TContactos_RefreshBusinessProcessorRules.SetREFERENCIAIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_Contactos_RefreshREFERENCIA] := Null; +end; + +function TContactos_RefreshBusinessProcessorRules.GetPERSONA_CONTACTOValue: String; +begin + result := BusinessProcessor.CurrentChange.NewValueByName[fld_Contactos_RefreshPERSONA_CONTACTO]; +end; + +function TContactos_RefreshBusinessProcessorRules.GetPERSONA_CONTACTOIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_Contactos_RefreshPERSONA_CONTACTO]); +end; + +function TContactos_RefreshBusinessProcessorRules.GetOldPERSONA_CONTACTOValue: String; +begin + result := BusinessProcessor.CurrentChange.OldValueByName[fld_Contactos_RefreshPERSONA_CONTACTO]; +end; + +function TContactos_RefreshBusinessProcessorRules.GetOldPERSONA_CONTACTOIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_Contactos_RefreshPERSONA_CONTACTO]); +end; + +procedure TContactos_RefreshBusinessProcessorRules.SetPERSONA_CONTACTOValue(const aValue: String); +begin + BusinessProcessor.CurrentChange.NewValueByName[fld_Contactos_RefreshPERSONA_CONTACTO] := aValue; +end; + +procedure TContactos_RefreshBusinessProcessorRules.SetPERSONA_CONTACTOIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_Contactos_RefreshPERSONA_CONTACTO] := Null; +end; + initialization RegisterBusinessProcessorRules(RID_ContactosDelta, TContactosBusinessProcessorRules); RegisterBusinessProcessorRules(RID_GruposClienteDelta, TGruposClienteBusinessProcessorRules); RegisterBusinessProcessorRules(RID_DatosBancariosDelta, TDatosBancariosBusinessProcessorRules); - RegisterBusinessProcessorRules(RID_ContactosCategoriasDelta, TContactosCategoriasBusinessProcessorRules); RegisterBusinessProcessorRules(RID_ClientesDelta, TClientesBusinessProcessorRules); RegisterBusinessProcessorRules(RID_ProveedoresDelta, TProveedoresBusinessProcessorRules); RegisterBusinessProcessorRules(RID_EmpleadosDelta, TEmpleadosBusinessProcessorRules); @@ -3555,5 +7933,6 @@ initialization RegisterBusinessProcessorRules(RID_ClientesDescuentosDelta, TClientesDescuentosBusinessProcessorRules); RegisterBusinessProcessorRules(RID_GruposProveedorDelta, TGruposProveedorBusinessProcessorRules); RegisterBusinessProcessorRules(RID_GruposEmpleadoDelta, TGruposEmpleadoBusinessProcessorRules); + RegisterBusinessProcessorRules(RID_Contactos_RefreshDelta, TContactos_RefreshBusinessProcessorRules); end. diff --git a/Source/Modulos/Contactos/Model/uBizCategoriasContacto.pas b/Source/Modulos/Contactos/Model/uBizCategoriasContacto.pas deleted file mode 100644 index a54eda33..00000000 --- a/Source/Modulos/Contactos/Model/uBizCategoriasContacto.pas +++ /dev/null @@ -1,27 +0,0 @@ -unit uBizCategoriasContacto; - -interface - -uses - uDAInterfaces, uDADataTable, - schContactosClient_Intf; - -const - BIZ_CLIENT_CATEGORIAS_CONTACTO = 'Client.CategoriasContacto'; - -type - IBizCategoriasContacto = interface(IContactosCategorias) - ['{C056E958-69BE-4819-A6A7-CB7FD6DA0BCB}'] - end; - - TBizCategoriasContacto = class(TContactosCategoriasDataTableRules, IBizCategoriasContacto) - end; - -implementation - - -initialization - RegisterDataTableRules(BIZ_CLIENT_CATEGORIAS_CONTACTO, TBizCategoriasContacto); - - -end. diff --git a/Source/Modulos/Contactos/Model/uBizClientesDescuentos.pas b/Source/Modulos/Contactos/Model/uBizClientesDescuentos.pas index d5e75abf..24870f88 100644 --- a/Source/Modulos/Contactos/Model/uBizClientesDescuentos.pas +++ b/Source/Modulos/Contactos/Model/uBizClientesDescuentos.pas @@ -19,6 +19,7 @@ type ContIdAux: Integer; protected procedure OnNewRecord(Sender: TDADataTable); override; + procedure BeforeInsert(Sender: TDADataTable); override; public constructor Create(aDataTable: TDADataTable); override; end; @@ -27,6 +28,19 @@ implementation { TBizClienteDescuentos } +uses + DB; + +procedure TBizClienteDescuentos.BeforeInsert(Sender: TDADataTable); +var + AMasterTable : TDADataTable; +begin + inherited; + AMasterTable := DataTable.GetMasterDataTable; + if Assigned(AMasterTable) and (AMasterTable.State in dsEditModes) then + AMasterTable.Post; +end; + constructor TBizClienteDescuentos.Create(aDataTable: TDADataTable); begin inherited; diff --git a/Source/Modulos/Contactos/Model/uBizClientesServer.pas b/Source/Modulos/Contactos/Model/uBizClientesServer.pas index a75eabe7..e08b4e33 100644 --- a/Source/Modulos/Contactos/Model/uBizClientesServer.pas +++ b/Source/Modulos/Contactos/Model/uBizClientesServer.pas @@ -3,7 +3,7 @@ unit uBizClientesServer; interface uses - schContactosServer_Intf, uDAInterfaces, + schContactosServer_Intf, uDAInterfaces, uDADelta, uDADataTable, uDABusinessProcessor, uBizContactosServer; const @@ -20,7 +20,7 @@ type implementation uses - uDataModuleServer, uDAClasses, DARemoteService_Impl, + uDataModuleServer, uDAClasses, schContactosClient_Intf, uBusinessUtils; { TBizClienteServer } diff --git a/Source/Modulos/Contactos/Model/uBizContactos.pas b/Source/Modulos/Contactos/Model/uBizContactos.pas index dfe8b09a..44815220 100644 --- a/Source/Modulos/Contactos/Model/uBizContactos.pas +++ b/Source/Modulos/Contactos/Model/uBizContactos.pas @@ -4,7 +4,7 @@ interface uses uDAInterfaces, uDADataTable, uROClasses, - schContactosClient_Intf, uBizContactosDatosBancarios, uBizCategoriasContacto, + schContactosClient_Intf, uBizContactosDatosBancarios, uDBSelectionListUtils, uBizDireccionesContacto, uBizClientesDescuentos; const @@ -33,11 +33,6 @@ type function GetCategoria : String; property Categoria : String read GetCategoria; - function _GetCategorias: IBizCategoriasContacto; - procedure _SetCategorias(const Value: IBizCategoriasContacto); - property _Categorias : IBizCategoriasContacto read _GetCategorias - write _SetCategorias; - function GetDirecciones: IBizDireccionesContacto; procedure SetDirecciones(const Value: IBizDireccionesContacto); property Direcciones : IBizDireccionesContacto read GetDirecciones @@ -180,16 +175,11 @@ type protected FDatosBancarios : IBizContactosDatosBancarios; FDatosBancariosLink : TDADataSource; - FCategorias : IBizCategoriasContacto; - FCategoriasLink : TDADataSource; FDirecciones : IBizDireccionesContacto; FDireccionesLink : TDADataSource; FSeleccionableInterface : ISeleccionable; - function _GetCategorias: IBizCategoriasContacto; - procedure _SetCategorias(const Value: IBizCategoriasContacto); - procedure SetDatosBancarios(AValue : IBizContactosDatosBancarios); function GetDatosBancarios : IBizContactosDatosBancarios; @@ -206,9 +196,6 @@ type destructor Destroy; override; property Categoria : String read GetCategoria; - property _Categorias : IBizCategoriasContacto read _GetCategorias - write _SetCategorias; - property DatosBancarios : IBizContactosDatosBancarios read GetDatosBancarios write SetDatosBancarios; @@ -361,16 +348,13 @@ type implementation uses - uDataTableUtils, Classes, DateUtils, SysUtils, uDataModuleUsuarios; + uDataTableUtils, Classes, DateUtils, SysUtils; { TBizContacto } constructor TBizContacto.Create(aDataTable: TDADataTable); begin inherited; - FCategoriasLink := TDADataSource.Create(NIL); - FCategoriasLink.DataTable := aDataTable; - FDatosBancariosLink := TDADataSource.Create(NIL); FDatosBancariosLink.DataTable := aDataTable; @@ -382,9 +366,6 @@ end; destructor TBizContacto.Destroy; begin - FCategorias := NIL; - FCategoriasLink.Free; - FDatosBancarios := NIL; FDatosBancariosLink.Free; @@ -422,7 +403,7 @@ end; procedure TBizContacto.IniciarValoresContactoNuevo; begin // - USUARIO := dmUsuarios.LoginInfo.Usuario; + //USUARIO := dmUsuarios.LoginInfo.Usuario; end; procedure TBizContacto.OnNewRecord(Sender: TDADataTable); @@ -444,16 +425,6 @@ begin EnlazarMaestroDetalle(FDireccionesLink, FDirecciones); end; -function TBizContacto._GetCategorias: IBizCategoriasContacto; -begin - Result := FCategorias; -end; - -procedure TBizContacto._SetCategorias(const Value: IBizCategoriasContacto); -begin - FCategorias := Value; - EnlazarMaestroDetalle(FCategoriasLink, FCategorias); -end; { TBizCliente } diff --git a/Source/Modulos/Contactos/Model/uBizContactosDatosBancarios.pas b/Source/Modulos/Contactos/Model/uBizContactosDatosBancarios.pas index 91394223..e236311c 100644 --- a/Source/Modulos/Contactos/Model/uBizContactosDatosBancarios.pas +++ b/Source/Modulos/Contactos/Model/uBizContactosDatosBancarios.pas @@ -36,7 +36,7 @@ var begin inherited; AMasterTable := DataTable.GetMasterDataTable; - if Assigned(AMasterTable) and (AMasterTable.State = dsInsert) then + if Assigned(AMasterTable) and (AMasterTable.State in dsEditModes) then AMasterTable.Post; end; diff --git a/Source/Modulos/Contactos/Model/uBizContactosServer.pas b/Source/Modulos/Contactos/Model/uBizContactosServer.pas index a5289bbb..e339a702 100644 --- a/Source/Modulos/Contactos/Model/uBizContactosServer.pas +++ b/Source/Modulos/Contactos/Model/uBizContactosServer.pas @@ -4,7 +4,7 @@ interface uses SysUtils, schContactosServer_Intf, uDAInterfaces, - uDADataTable, uDABusinessProcessor; + uDADataTable, uDABusinessProcessor, uDADelta; const BIZ_SERVER_CONTACTO = 'Server.Contacto'; @@ -16,6 +16,10 @@ type procedure Update_Datos_Contacto(aChange: TDADeltaChange); virtual; procedure Delete_Datos_Contacto(aChange: TDADeltaChange); virtual; + procedure Insert_Categoria_Contacto(aChange: TDADeltaChange); virtual; + procedure Update_Categoria_Contacto(aChange: TDADeltaChange); virtual; + procedure Delete_Categoria_Contacto(aChange: TDADeltaChange); virtual; + procedure AfterProcessChange(Sender: TDABusinessProcessor; aChange: TDADeltaChange; Processed: Boolean; var CanRemoveFromDelta: Boolean); override; @@ -25,13 +29,12 @@ type const aCommand: IDASQLCommand; var CanRemoveFromDelta: Boolean; Error: Exception); override; - end; implementation uses - Dialogs, uDataModuleServer, uDAClasses, DARemoteService_Impl, + Dialogs, uDataModuleServer, uDAClasses, schContactosClient_Intf, uBusinessUtils; { TBizContactosServer } @@ -42,14 +45,46 @@ begin inherited; case aChange.ChangeType of - ctInsert: Insert_Datos_Contacto(aChange); - ctUpdate: Update_Datos_Contacto(aChange); - ctDelete: Delete_Datos_Contacto(aChange); + ctInsert: begin + Insert_Categoria_Contacto(aChange); + Insert_Datos_Contacto(aChange); + end; + ctUpdate: begin + Update_Categoria_Contacto(aChange); + Update_Datos_Contacto(aChange); + end; + ctDelete: begin + Delete_Categoria_Contacto(aChange); + Delete_Datos_Contacto(aChange); + end; end; CanRemoveFromDelta := True; end; +procedure TBizContactosServer.Delete_Categoria_Contacto( + aChange: TDADeltaChange); +var + ASchema : TDASchema; + ACurrentConn : IDAConnection; + ACommand : IDASQLCommand; +begin + ASchema := BusinessProcessor.Schema; + ACurrentConn := GetBusinessProcessorConnection(BusinessProcessor); + + ACommand := ASchema.NewCommand(ACurrentConn, 'Delete_ContactosCategorias'); + try + with ACommand do + begin + ParamByName('OLD_ID_CONTACTO').Value := aChange.OldValueByName[fld_ContactosID]; + ParamByName('OLD_ID_CATEGORIA').Value := aChange.OldValueByName[fld_ContactosID_CATEGORIA]; + Execute; + end; + finally + ACommand := NIL; + end; +end; + procedure TBizContactosServer.Delete_Datos_Contacto(aChange: TDADeltaChange); var ASchema : TDASchema; @@ -75,6 +110,29 @@ begin end; end; +procedure TBizContactosServer.Insert_Categoria_Contacto( + aChange: TDADeltaChange); +var + ASchema : TDASchema; + ACurrentConn : IDAConnection; + ACommand : IDASQLCommand; +begin + ASchema := BusinessProcessor.Schema; + ACurrentConn := GetBusinessProcessorConnection(BusinessProcessor); + + ACommand := ASchema.NewCommand(ACurrentConn, 'Insert_ContactosCategorias'); + try + with ACommand do + begin + ParamByName('ID_CONTACTO').Value := aChange.NewValueByName[fld_ContactosID]; + ParamByName('ID_CATEGORIA').Value := aChange.NewValueByName[fld_ContactosID_CATEGORIA]; + Execute; + end; + finally + ACommand := NIL; + end; +end; + procedure TBizContactosServer.Insert_Datos_Contacto(aChange: TDADeltaChange); var ASchema : TDASchema; @@ -112,6 +170,33 @@ begin raise Exception.Create(Error.Message); end; +procedure TBizContactosServer.Update_Categoria_Contacto( + aChange: TDADeltaChange); +var + ASchema : TDASchema; + ACurrentConn : IDAConnection; + ACommand : IDASQLCommand; +begin + ASchema := BusinessProcessor.Schema; + ACurrentConn := GetBusinessProcessorConnection(BusinessProcessor); + +//En el caso update nos da igual lo que se quiera modificar así que se queda igual + ACommand := ASchema.NewCommand(ACurrentConn, 'Update_ContactosCategorias'); + try + with ACommand do + begin + ParamByName('ID_CONTACTO').Value := aChange.NewValueByName[fld_ContactosID]; + ParamByName('OLD_ID_CONTACTO').Value := aChange.OldValueByName[fld_ContactosID]; + + ParamByName('ID_CATEGORIA').Value := aChange.NewValueByName[fld_ContactosID_CATEGORIA]; + ParamByName('OLD_ID_CATEGORIA').Value := aChange.OldValueByName[fld_ContactosID_CATEGORIA]; + Execute; + end; + finally + ACommand := NIL; + end; +end; + procedure TBizContactosServer.Update_Datos_Contacto(aChange: TDADeltaChange); var ASchema : TDASchema; diff --git a/Source/Modulos/Contactos/Model/uBizDireccionesContacto.pas b/Source/Modulos/Contactos/Model/uBizDireccionesContacto.pas index a1f7a5bf..686b0565 100644 --- a/Source/Modulos/Contactos/Model/uBizDireccionesContacto.pas +++ b/Source/Modulos/Contactos/Model/uBizDireccionesContacto.pas @@ -36,7 +36,7 @@ var begin inherited; AMasterTable := DataTable.GetMasterDataTable; - if Assigned(AMasterTable) and (AMasterTable.State = dsInsert) then + if Assigned(AMasterTable) and (AMasterTable.State in dsEditModes) then AMasterTable.Post; end; diff --git a/Source/Modulos/Contactos/Model/uBizEmpleadosServer.pas b/Source/Modulos/Contactos/Model/uBizEmpleadosServer.pas index 957d3e4c..191fc2a6 100644 --- a/Source/Modulos/Contactos/Model/uBizEmpleadosServer.pas +++ b/Source/Modulos/Contactos/Model/uBizEmpleadosServer.pas @@ -3,7 +3,7 @@ unit uBizEmpleadosServer; interface uses - schContactosServer_Intf, uDAInterfaces, + schContactosServer_Intf, uDAInterfaces, uDADelta, uDADataTable, uDABusinessProcessor, uBizContactosServer; const @@ -20,7 +20,7 @@ type implementation uses - uDataModuleServer, uDAClasses, DARemoteService_Impl, + uDataModuleServer, uDAClasses, schContactosClient_Intf, uBusinessUtils; { TBizEmpleadoServer } diff --git a/Source/Modulos/Contactos/Model/uBizProveedoresServer.pas b/Source/Modulos/Contactos/Model/uBizProveedoresServer.pas index 2db60369..f91c580b 100644 --- a/Source/Modulos/Contactos/Model/uBizProveedoresServer.pas +++ b/Source/Modulos/Contactos/Model/uBizProveedoresServer.pas @@ -3,7 +3,7 @@ unit uBizProveedoresServer; interface uses - schContactosServer_Intf, uDAInterfaces, + schContactosServer_Intf, uDAInterfaces, uDADelta, uDADataTable, uDABusinessProcessor, uBizContactosServer; const @@ -20,7 +20,7 @@ type implementation uses - uDataModuleServer, uDAClasses, DARemoteService_Impl, + uDataModuleServer, uDAClasses, schContactosClient_Intf, uBusinessUtils; { TBizProveedorServer } diff --git a/Source/Modulos/Contactos/Plugin/Contactos_plugin.dpk b/Source/Modulos/Contactos/Plugin/Contactos_plugin.dpk index 0b99147d..629a42ee 100644 --- a/Source/Modulos/Contactos/Plugin/Contactos_plugin.dpk +++ b/Source/Modulos/Contactos/Plugin/Contactos_plugin.dpk @@ -22,27 +22,13 @@ package Contactos_plugin; {$WRITEABLECONST OFF} {$MINENUMSIZE 1} {$IMAGEBASE $400000} -{$IMPLICITBUILD OFF} +{$IMPLICITBUILD ON} requires rtl, vcl, - GUISDK_D10, - ccpack10, - designide, - xmlrtl, - vclactnband, - vclx, - cfpack_d10, - JvAppFrmD10R, - vcljpg, - JclVcl, - Jcl, - JvSystemD10R, - JvCoreD10R, PluginSDK_D10R, - PngComponentsD10, - PNG_D10, + Base, Contactos_model, Contactos_data, Contactos_controller, diff --git a/Source/Modulos/Contactos/Plugin/Contactos_plugin.dpk.bak b/Source/Modulos/Contactos/Plugin/Contactos_plugin.dpk.bak new file mode 100644 index 00000000..bf5c124f --- /dev/null +++ b/Source/Modulos/Contactos/Plugin/Contactos_plugin.dpk.bak @@ -0,0 +1,40 @@ +package Contactos_plugin; + +{$R *.res} +{$ALIGN 8} +{$ASSERTIONS ON} +{$BOOLEVAL OFF} +{$DEBUGINFO ON} +{$EXTENDEDSYNTAX ON} +{$IMPORTEDDATA ON} +{$IOCHECKS ON} +{$LOCALSYMBOLS ON} +{$LONGSTRINGS ON} +{$OPENSTRINGS ON} +{$OPTIMIZATION ON} +{$OVERFLOWCHECKS OFF} +{$RANGECHECKS OFF} +{$REFERENCEINFO ON} +{$SAFEDIVIDE OFF} +{$STACKFRAMES OFF} +{$TYPEDADDRESS OFF} +{$VARSTRINGCHECKS ON} +{$WRITEABLECONST OFF} +{$MINENUMSIZE 1} +{$IMAGEBASE $400000} +{$IMPLICITBUILD OFF} + +requires + rtl, + vcl, + PluginSDK_D10R, + Base, + Contactos_model, + Contactos_data, + Contactos_controller, + Contactos_view; + +contains + uPluginContactos in 'uPluginContactos.pas' {PluginContactos: TDataModule}; + +end. diff --git a/Source/Modulos/Contactos/Plugin/Contactos_plugin.dproj b/Source/Modulos/Contactos/Plugin/Contactos_plugin.dproj new file mode 100644 index 00000000..d3c4ac0c --- /dev/null +++ b/Source/Modulos/Contactos/Plugin/Contactos_plugin.dproj @@ -0,0 +1,538 @@ + + + {cafb4b38-ab55-40a5-8d2e-c54895b98402} + Contactos_plugin.dpk + Debug + AnyCPU + DCC32 + ..\..\..\..\Output\Debug\Cliente\Contactos_plugin.bpl + + + 7.0 + False + False + 0 + 3 + .\ + .\ + .\ + ..\..\..\..\Output\Debug\Cliente + ..\..\Lib + ..\..\..\Lib;..\..\Lib + ..\..\..\Lib;..\..\Lib + ..\..\..\Lib;..\..\Lib + ..\..\..\Lib;..\..\Lib + RELEASE + + + 7.0 + 3 + .\ + .\ + .\ + ..\..\..\..\Output\Debug\Cliente + ..\..\Lib + ..\..\..\Lib;..\..\Lib + ..\..\..\Lib;..\..\Lib + ..\..\..\Lib;..\..\Lib + ..\..\..\Lib;..\..\Lib + + + Delphi.Personality + Package + +FalseTrueFalseFalseFalseFalseTrueFalse1000FalseFalseFalseFalseFalse308212521.0.0.01.0.0.0Contactos_plugin.dpk + + + + + MainSource + + +
PluginContactos
+
+
+
+ diff --git a/Source/Modulos/Contactos/Plugin/Contactos_plugin.drc b/Source/Modulos/Contactos/Plugin/Contactos_plugin.drc index 7642ac97..20dc7e87 100644 --- a/Source/Modulos/Contactos/Plugin/Contactos_plugin.drc +++ b/Source/Modulos/Contactos/Plugin/Contactos_plugin.drc @@ -1,5 +1,5 @@ -/* VER180 - Generated by the Borland Delphi Pascal Compiler +/* VER185 + Generated by the CodeGear Delphi Pascal Compiler because -GD or --drc was supplied to the compiler. This file contains compiler-generated resources that @@ -12,3 +12,6 @@ STRINGTABLE BEGIN END +/* C:\Codigo Tecsitel\Source\Modulos\Contactos\Plugin\uPluginContactos.dfm */ +/* C:\Codigo Tecsitel\Source\Modulos\Contactos\Plugin\Contactos_plugin.res */ +/* C:\Codigo Tecsitel\Source\Modulos\Contactos\Plugin\Contactos_plugin.drf */ diff --git a/Source/Modulos/Contactos/Plugin/Contactos_plugin.identcache b/Source/Modulos/Contactos/Plugin/Contactos_plugin.identcache new file mode 100644 index 00000000..ccd9f143 Binary files /dev/null and b/Source/Modulos/Contactos/Plugin/Contactos_plugin.identcache differ diff --git a/Source/Modulos/Contactos/Plugin/Contactos_plugin.rc b/Source/Modulos/Contactos/Plugin/Contactos_plugin.rc index e69de29b..153736af 100644 --- a/Source/Modulos/Contactos/Plugin/Contactos_plugin.rc +++ b/Source/Modulos/Contactos/Plugin/Contactos_plugin.rc @@ -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 diff --git a/Source/Modulos/Contactos/Plugin/Contactos_plugin.res b/Source/Modulos/Contactos/Plugin/Contactos_plugin.res index 36f26e23..8b251f31 100644 Binary files a/Source/Modulos/Contactos/Plugin/Contactos_plugin.res and b/Source/Modulos/Contactos/Plugin/Contactos_plugin.res differ diff --git a/Source/Modulos/Contactos/Servidor/srvContactos_Impl.dfm b/Source/Modulos/Contactos/Servidor/srvContactos_Impl.dfm index c12e13c5..8f195024 100644 --- a/Source/Modulos/Contactos/Servidor/srvContactos_Impl.dfm +++ b/Source/Modulos/Contactos/Servidor/srvContactos_Impl.dfm @@ -1,13 +1,12 @@ object srvContactos: TsrvContactos OldCreateOrder = True OnCreate = DARemoteServiceCreate - RequiresSession = True - AcquireConnection = True + SessionManager = dmServer.SessionManager ConnectionName = 'IBX' ServiceSchema = schContactos - ServiceAdapter = BINAdapter - OnBeforeAcquireConnection = DARemoteServiceBeforeAcquireConnection - OnBeforeGetDatasetData = DARemoteServiceBeforeGetDatasetData + ServiceDataStreamer = Bin2DataStreamer + ExportedDataTables = <> + BeforeAcquireConnection = DataAbstractServiceBeforeAcquireConnection Height = 347 Width = 444 object schContactos: TDASchema @@ -16,30 +15,21 @@ object srvContactos: TsrvContactos Diagrams = Diagrams Datasets = < item - Params = < - item - Name = 'ID_CATEGORIA' - DataType = datInteger - BlobType = dabtUnknown - Value = '22' - ParamType = daptInput - end> + Params = <> Statements = < item Connection = 'IBX' - TargetTable = 'CONTACTOS' - SQL = - 'SELECT '#10' ID, ID_CATEGORIA, NIF_CIF, NOMBRE, PERSONA_CONTACTO,' + - ' CALLE, POBLACION,'#10' PROVINCIA, CODIGO_POSTAL, TELEFONO_1, TEL' + - 'EFONO_2, MOVIL_1, '#10' MOVIL_2, FAX, EMAIL_1, EMAIL_2, PAGINA_WE' + - 'B, NOTAS, '#10' USUARIO, ID_EMPRESA, REFERENCIA'#10' FROM'#10' V_CONT' + - 'ACTOS'#10' WHERE'#10' ID_CATEGORIA = :ID_CATEGORIA' - StatementType = stSQL + TargetTable = 'V_CONTACTOS' + StatementType = stAutoSQL ColumnMappings = < item DatasetField = 'ID' TableField = 'ID' end + item + DatasetField = 'ID_CATEGORIA' + TableField = 'ID_CATEGORIA' + end item DatasetField = 'NIF_CIF' TableField = 'NIF_CIF' @@ -48,6 +38,10 @@ object srvContactos: TsrvContactos DatasetField = 'NOMBRE' TableField = 'NOMBRE' end + item + DatasetField = 'PERSONA_CONTACTO' + TableField = 'PERSONA_CONTACTO' + end item DatasetField = 'CALLE' TableField = 'CALLE' @@ -100,27 +94,25 @@ object srvContactos: TsrvContactos DatasetField = 'NOTAS' TableField = 'NOTAS' end + item + DatasetField = 'FECHA_ALTA' + TableField = 'FECHA_ALTA' + end + item + DatasetField = 'FECHA_MODIFICACION' + TableField = 'FECHA_MODIFICACION' + end item DatasetField = 'USUARIO' TableField = 'USUARIO' end - item - DatasetField = 'ID_CATEGORIA' - TableField = 'ID_CATEGORIA' - SQLOrigin = 'CONTACTOS_CATEGORIAS.ID_CATEGORIA' - end item DatasetField = 'ID_EMPRESA' TableField = 'ID_EMPRESA' - SQLOrigin = 'EMPRESAS_CONTACTOS.ID_EMPRESA' end item DatasetField = 'REFERENCIA' TableField = 'REFERENCIA' - end - item - DatasetField = 'PERSONA_CONTACTO' - TableField = 'PERSONA_CONTACTO' end> end> Name = 'Contactos' @@ -128,232 +120,137 @@ object srvContactos: TsrvContactos item Name = 'ID' DataType = datAutoInc - BlobType = dabtUnknown + GeneratorName = 'GEN_CONTACTOS_ID' + ServerAutoRefresh = True DictionaryEntry = 'Contactos_ID' InPrimaryKey = True - Calculated = False - Lookup = False - LookupCache = False end item Name = 'ID_CATEGORIA' DataType = datInteger - BlobType = dabtUnknown - DictionaryEntry = 'Contactos_ID_CATEGORIA' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False end item Name = 'NIF_CIF' DataType = datString Size = 15 - BlobType = dabtUnknown DictionaryEntry = 'Contactos_NIF_CIF' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False end item Name = 'NOMBRE' DataType = datString Size = 255 - BlobType = dabtUnknown DictionaryEntry = 'Contactos_NOMBRE' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False end item Name = 'PERSONA_CONTACTO' DataType = datString Size = 255 - BlobType = dabtUnknown DictionaryEntry = 'Contactos_PERSONA_CONTACTO' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False end item Name = 'CALLE' DataType = datString Size = 255 - BlobType = dabtUnknown DictionaryEntry = 'Contactos_CALLE' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False end item Name = 'POBLACION' DataType = datString Size = 255 - BlobType = dabtUnknown DictionaryEntry = 'Contactos_POBLACION' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False end item Name = 'PROVINCIA' DataType = datString Size = 255 - BlobType = dabtUnknown DictionaryEntry = 'Contactos_PROVINCIA' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False end item Name = 'CODIGO_POSTAL' DataType = datString Size = 10 - BlobType = dabtUnknown DictionaryEntry = 'Contactos_CODIGO_POSTAL' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False end item Name = 'TELEFONO_1' DataType = datString Size = 25 - BlobType = dabtUnknown DictionaryEntry = 'Contactos_TELEFONO_1' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False end item Name = 'TELEFONO_2' DataType = datString Size = 25 - BlobType = dabtUnknown DictionaryEntry = 'Contactos_TELEFONO_2' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False end item Name = 'MOVIL_1' DataType = datString Size = 25 - BlobType = dabtUnknown DictionaryEntry = 'Contactos_MOVIL_1' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False end item Name = 'MOVIL_2' DataType = datString Size = 25 - BlobType = dabtUnknown DictionaryEntry = 'Contactos_MOVIL_2' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False end item Name = 'FAX' DataType = datString Size = 25 - BlobType = dabtUnknown DictionaryEntry = 'Contactos_FAX' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False end item Name = 'EMAIL_1' DataType = datString Size = 255 - BlobType = dabtUnknown DictionaryEntry = 'Contactos_EMAIL_1' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False end item Name = 'EMAIL_2' DataType = datString Size = 255 - BlobType = dabtUnknown DictionaryEntry = 'Contactos_EMAIL_2' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False end item Name = 'PAGINA_WEB' DataType = datString Size = 255 - BlobType = dabtUnknown DictionaryEntry = 'Contactos_PAGINA_WEB' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False end item Name = 'NOTAS' DataType = datMemo BlobType = dabtMemo DictionaryEntry = 'Contactos_NOTAS' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False + end + item + Name = 'FECHA_ALTA' + DataType = datDateTime + DictionaryEntry = 'Contactos_FECHA_ALTA' + end + item + Name = 'FECHA_MODIFICACION' + DataType = datDateTime + DictionaryEntry = 'Contactos_FECHA_MODIFICACION' end item Name = 'USUARIO' DataType = datString Size = 20 - BlobType = dabtUnknown DictionaryEntry = 'Contactos_USUARIO' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False end item Name = 'ID_EMPRESA' DataType = datInteger - BlobType = dabtUnknown - DictionaryEntry = 'Contactos_ID_EMPRESA' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False end item Name = 'REFERENCIA' DataType = datString Size = 255 - BlobType = dabtUnknown DictionaryEntry = 'Contactos_REFERENCIA' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False end> - BusinessRulesClient.ScriptLanguage = rslPascalScript - BusinessRulesServer.ScriptLanguage = rslPascalScript end item Params = <> @@ -361,8 +258,7 @@ object srvContactos: TsrvContactos item Connection = 'IBX' TargetTable = 'CLIENTES_GRUPOS' - SQL = 'SELECT DESCRIPCION'#10'FROM CLIENTES_GRUPOS' - StatementType = stSQL + StatementType = stAutoSQL ColumnMappings = < item DatasetField = 'DESCRIPCION' @@ -375,35 +271,16 @@ object srvContactos: TsrvContactos Name = 'DESCRIPCION' DataType = datString Size = 255 - BlobType = dabtUnknown - DisplayWidth = 0 - Alignment = taLeftJustify - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False + DisplayLabel = 'Descripci'#243'n' end> - BusinessRulesClient.ScriptLanguage = rslPascalScript - BusinessRulesServer.ScriptLanguage = rslPascalScript end item - Params = < - item - Name = 'ID_CONTACTO' - DataType = datInteger - BlobType = dabtUnknown - Value = '' - ParamType = daptInput - end> + Params = <> Statements = < item Connection = 'IBX' TargetTable = 'CONTACTOS_DATOS_BANCO' - SQL = - 'SELECT'#10' ID, ID_CONTACTO, TITULAR, ENTIDAD, SUCURSAL, DC, CUEN' + - 'TA'#10' FROM'#10' CONTACTOS_DATOS_BANCO'#10' WHERE ID_CONTACTO = :ID_CO' + - 'NTACTO' - StatementType = stSQL + StatementType = stAutoSQL ColumnMappings = < item DatasetField = 'ID' @@ -432,6 +309,14 @@ object srvContactos: TsrvContactos item DatasetField = 'CUENTA' TableField = 'CUENTA' + end + item + DatasetField = 'FECHA_ALTA' + TableField = 'FECHA_ALTA' + end + item + DatasetField = 'FECHA_MODIFICACION' + TableField = 'FECHA_MODIFICACION' end> end> Name = 'DatosBancarios' @@ -439,134 +324,54 @@ object srvContactos: TsrvContactos item Name = 'ID' DataType = datAutoInc - BlobType = dabtUnknown + GeneratorName = 'GEN_CONTACTOS_DATOS_BANCO_ID' + ServerAutoRefresh = True DictionaryEntry = 'DatosBancarios_ID' InPrimaryKey = True - Calculated = False - Lookup = False - LookupCache = False end item Name = 'ID_CONTACTO' DataType = datInteger - BlobType = dabtUnknown DictionaryEntry = 'DatosBancarios_ID_CONTACTO' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False end item Name = 'TITULAR' DataType = datString Size = 255 - BlobType = dabtUnknown DictionaryEntry = 'DatosBancarios_TITULAR' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False end item Name = 'ENTIDAD' DataType = datString Size = 15 - BlobType = dabtUnknown DictionaryEntry = 'DatosBancarios_ENTIDAD' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False end item Name = 'SUCURSAL' DataType = datString Size = 15 - BlobType = dabtUnknown DictionaryEntry = 'DatosBancarios_SUCURSAL' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False end item Name = 'DC' DataType = datString Size = 15 - BlobType = dabtUnknown DictionaryEntry = 'DatosBancarios_DC' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False end item Name = 'CUENTA' DataType = datString Size = 15 - BlobType = dabtUnknown DictionaryEntry = 'DatosBancarios_CUENTA' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False - end> - BusinessRulesClient.ScriptLanguage = rslPascalScript - BusinessRulesServer.ScriptLanguage = rslPascalScript - end - item - Params = < - item - Name = 'ID_CONTACTO' - DataType = datInteger - BlobType = dabtUnknown - Value = '444' - ParamType = daptInput - end> - Statements = < - item - Connection = 'IBX' - TargetTable = 'CONTACTOS_CATEGORIAS' - SQL = - 'SELECT '#10' ID_CONTACTO, ID_CATEGORIA'#10' FROM'#10' CONTACTOS_CATEG' + - 'ORIAS'#10' WHERE'#10' ID_CONTACTO = :ID_CONTACTO' - StatementType = stSQL - ColumnMappings = < - item - DatasetField = 'ID_CONTACTO' - TableField = 'ID_CONTACTO' - end - item - DatasetField = 'ID_CATEGORIA' - TableField = 'ID_CATEGORIA' - end> - end> - Name = 'ContactosCategorias' - Fields = < - item - Name = 'ID_CONTACTO' - DataType = datInteger - BlobType = dabtUnknown - DisplayWidth = 0 - Alignment = taLeftJustify - InPrimaryKey = True - Calculated = False - Lookup = False - LookupCache = False end item - Name = 'ID_CATEGORIA' - DataType = datInteger - BlobType = dabtUnknown - DisplayWidth = 0 - Alignment = taLeftJustify - InPrimaryKey = True - Calculated = False - Lookup = False - LookupCache = False + Name = 'FECHA_ALTA' + DataType = datDateTime + end + item + Name = 'FECHA_MODIFICACION' + DataType = datDateTime end> - BusinessRulesClient.ScriptLanguage = rslPascalScript - BusinessRulesServer.ScriptLanguage = rslPascalScript end item Params = <> @@ -574,15 +379,7 @@ object srvContactos: TsrvContactos item Connection = 'IBX' TargetTable = 'V_CLIENTES' - SQL = - 'SELECT '#10' ID, ID_CATEGORIA, REFERENCIA, NIF_CIF, NOMBRE, PERSO' + - 'NA_CONTACTO, CALLE,'#10' POBLACION, PROVINCIA, CODIGO_POSTAL, TEL' + - 'EFONO_1, TELEFONO_2, '#10' MOVIL_1, MOVIL_2, FAX, EMAIL_1, EMAIL_' + - '2, PAGINA_WEB, '#10' NOTAS, USUARIO, ID_EMPRESA,'#10#10' GRUPO_CLIEN' + - 'TE, NOMBRE_COMERCIAL, VENCIMIENTO_FACTURAS, BLOQUEADO,'#10' MOTIV' + - 'O_BLOQUEO, RECARGO_EQUIVALENCIA, REGIMEN_IVA, ID_TIPO_IVA,'#10' I' + - 'D_FORMA_PAGO, TIENDA_WEB'#10' FROM'#10' V_CLIENTES' - StatementType = stSQL + StatementType = stAutoSQL ColumnMappings = < item DatasetField = 'ID' @@ -600,14 +397,14 @@ object srvContactos: TsrvContactos DatasetField = 'NOMBRE' TableField = 'NOMBRE' end - item - DatasetField = 'CALLE' - TableField = 'CALLE' - end item DatasetField = 'PERSONA_CONTACTO' TableField = 'PERSONA_CONTACTO' end + item + DatasetField = 'CALLE' + TableField = 'CALLE' + end item DatasetField = 'POBLACION' TableField = 'POBLACION' @@ -656,6 +453,14 @@ object srvContactos: TsrvContactos DatasetField = 'NOTAS' TableField = 'NOTAS' end + item + DatasetField = 'FECHA_ALTA' + TableField = 'FECHA_ALTA' + end + item + DatasetField = 'FECHA_MODIFICACION' + TableField = 'FECHA_MODIFICACION' + end item DatasetField = 'USUARIO' TableField = 'USUARIO' @@ -668,26 +473,6 @@ object srvContactos: TsrvContactos DatasetField = 'REFERENCIA' TableField = 'REFERENCIA' end - item - DatasetField = 'ID_TIPO_IVA' - TableField = 'ID_TIPO_IVA' - end - item - DatasetField = 'REGIMEN_IVA' - TableField = 'REGIMEN_IVA' - end - item - DatasetField = 'ID_FORMA_PAGO' - TableField = 'ID_FORMA_PAGO' - end - item - DatasetField = 'TIENDA_WEB' - TableField = 'TIENDA_WEB' - end - item - DatasetField = 'RECARGO_EQUIVALENCIA' - TableField = 'RECARGO_EQUIVALENCIA' - end item DatasetField = 'GRUPO_CLIENTE' TableField = 'GRUPO_CLIENTE' @@ -704,9 +489,29 @@ object srvContactos: TsrvContactos DatasetField = 'BLOQUEADO' TableField = 'BLOQUEADO' end + item + DatasetField = 'REGIMEN_IVA' + TableField = 'REGIMEN_IVA' + end item DatasetField = 'MOTIVO_BLOQUEO' TableField = 'MOTIVO_BLOQUEO' + end + item + DatasetField = 'RECARGO_EQUIVALENCIA' + TableField = 'RECARGO_EQUIVALENCIA' + end + item + DatasetField = 'ID_TIPO_IVA' + TableField = 'ID_TIPO_IVA' + end + item + DatasetField = 'ID_FORMA_PAGO' + TableField = 'ID_FORMA_PAGO' + end + item + DatasetField = 'TIENDA_WEB' + TableField = 'TIENDA_WEB' end> end> Name = 'Clientes' @@ -714,336 +519,191 @@ object srvContactos: TsrvContactos item Name = 'ID' DataType = datAutoInc - BlobType = dabtUnknown + GeneratorName = 'GEN_CONTACTOS_ID' + ServerAutoRefresh = True DictionaryEntry = 'Contactos_ID' InPrimaryKey = True - Calculated = False - Lookup = False - LookupCache = False end item Name = 'ID_CATEGORIA' DataType = datInteger - BlobType = dabtUnknown DictionaryEntry = 'Contactos_ID_CATEGORIA' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False end item Name = 'NIF_CIF' DataType = datString Size = 15 - BlobType = dabtUnknown DictionaryEntry = 'Contactos_NIF_CIF' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False end item Name = 'NOMBRE' DataType = datString Size = 255 - BlobType = dabtUnknown DictionaryEntry = 'Contactos_NOMBRE' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False - end - item - Name = 'CALLE' - DataType = datString - Size = 255 - BlobType = dabtUnknown - DictionaryEntry = 'Contactos_CALLE' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False end item Name = 'PERSONA_CONTACTO' DataType = datString Size = 255 - BlobType = dabtUnknown DictionaryEntry = 'Contactos_PERSONA_CONTACTO' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False + end + item + Name = 'CALLE' + DataType = datString + Size = 255 + DictionaryEntry = 'Contactos_CALLE' end item Name = 'POBLACION' DataType = datString Size = 255 - BlobType = dabtUnknown DictionaryEntry = 'Contactos_POBLACION' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False end item Name = 'PROVINCIA' DataType = datString Size = 255 - BlobType = dabtUnknown DictionaryEntry = 'Contactos_PROVINCIA' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False end item Name = 'CODIGO_POSTAL' DataType = datString Size = 10 - BlobType = dabtUnknown DictionaryEntry = 'Contactos_CODIGO_POSTAL' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False end item Name = 'TELEFONO_1' DataType = datString Size = 25 - BlobType = dabtUnknown DictionaryEntry = 'Contactos_TELEFONO_1' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False end item Name = 'TELEFONO_2' DataType = datString Size = 25 - BlobType = dabtUnknown DictionaryEntry = 'Contactos_TELEFONO_2' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False end item Name = 'MOVIL_1' DataType = datString Size = 25 - BlobType = dabtUnknown DictionaryEntry = 'Contactos_MOVIL_1' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False end item Name = 'MOVIL_2' DataType = datString Size = 25 - BlobType = dabtUnknown DictionaryEntry = 'Contactos_MOVIL_2' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False end item Name = 'FAX' DataType = datString Size = 25 - BlobType = dabtUnknown DictionaryEntry = 'Contactos_FAX' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False end item Name = 'EMAIL_1' DataType = datString Size = 255 - BlobType = dabtUnknown DictionaryEntry = 'Contactos_EMAIL_1' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False end item Name = 'EMAIL_2' DataType = datString Size = 255 - BlobType = dabtUnknown DictionaryEntry = 'Contactos_EMAIL_2' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False end item Name = 'PAGINA_WEB' DataType = datString Size = 255 - BlobType = dabtUnknown DictionaryEntry = 'Contactos_PAGINA_WEB' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False end item Name = 'NOTAS' DataType = datMemo BlobType = dabtMemo DictionaryEntry = 'Contactos_NOTAS' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False + end + item + Name = 'FECHA_ALTA' + DataType = datDateTime + end + item + Name = 'FECHA_MODIFICACION' + DataType = datDateTime end item Name = 'USUARIO' DataType = datString Size = 20 - BlobType = dabtUnknown DictionaryEntry = 'Contactos_USUARIO' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False end item Name = 'ID_EMPRESA' DataType = datInteger - BlobType = dabtUnknown DictionaryEntry = 'Contactos_ID_EMPRESA' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False end item Name = 'REFERENCIA' DataType = datString Size = 255 - BlobType = dabtUnknown DictionaryEntry = 'Clientes_REFERENCIA' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False - end - item - Name = 'ID_TIPO_IVA' - DataType = datInteger - BlobType = dabtUnknown - DictionaryEntry = 'Clientes_ID_TIPO_IVA' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False - end - item - Name = 'REGIMEN_IVA' - DataType = datString - Size = 255 - BlobType = dabtUnknown - DictionaryEntry = 'Clientes_REGIMEN_IVA' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False - end - item - Name = 'ID_FORMA_PAGO' - DataType = datInteger - BlobType = dabtUnknown - DictionaryEntry = 'Clientes_ID_FORMA_PAGO' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False - end - item - Name = 'TIENDA_WEB' - DataType = datInteger - BlobType = dabtUnknown - DictionaryEntry = 'Clientes_TIENDA_WEB' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False - end - item - Name = 'RECARGO_EQUIVALENCIA' - DataType = datInteger - BlobType = dabtUnknown - DictionaryEntry = 'Clientes_RECARGO_EQUIVALENCIA' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False end item Name = 'GRUPO_CLIENTE' DataType = datString Size = 255 - BlobType = dabtUnknown DictionaryEntry = 'Clientes_GRUPO_CLIENTE' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False end item Name = 'NOMBRE_COMERCIAL' DataType = datString Size = 255 - BlobType = dabtUnknown DictionaryEntry = 'Clientes_NOMBRE_COMERCIAL' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False end item Name = 'VENCIMIENTO_FACTURAS' DataType = datInteger - BlobType = dabtUnknown DictionaryEntry = 'Clientes_VENCIMIENTO_FACTURAS' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False end item Name = 'BLOQUEADO' - DataType = datInteger - BlobType = dabtUnknown + DataType = datSmallInt DictionaryEntry = 'Clientes_BLOQUEADO' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False + end + item + Name = 'REGIMEN_IVA' + DataType = datString + Size = 255 + DictionaryEntry = 'Clientes_REGIMEN_IVA' end item Name = 'MOTIVO_BLOQUEO' DataType = datString Size = 255 - BlobType = dabtUnknown DictionaryEntry = 'Clientes_MOTIVO_BLOQUEO' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False + end + item + Name = 'RECARGO_EQUIVALENCIA' + DataType = datInteger + DictionaryEntry = 'Clientes_RECARGO_EQUIVALENCIA' + end + item + Name = 'ID_TIPO_IVA' + DataType = datInteger + DictionaryEntry = 'Clientes_ID_TIPO_IVA' + end + item + Name = 'ID_FORMA_PAGO' + DataType = datInteger + DictionaryEntry = 'Clientes_ID_FORMA_PAGO' + end + item + Name = 'TIENDA_WEB' + DataType = datSmallInt + DictionaryEntry = 'Clientes_TIENDA_WEB' end> - BusinessRulesClient.ScriptLanguage = rslPascalScript - BusinessRulesServer.ScriptLanguage = rslPascalScript end item Params = <> @@ -1051,15 +711,7 @@ object srvContactos: TsrvContactos item Connection = 'IBX' TargetTable = 'V_PROVEEDORES' - SQL = - 'SELECT '#10' ID, ID_CATEGORIA, REFERENCIA, NIF_CIF, NOMBRE, PERSO' + - 'NA_CONTACTO, CALLE,'#10' POBLACION, PROVINCIA, CODIGO_POSTAL, TEL' + - 'EFONO_1, TELEFONO_2, '#10' MOVIL_1, MOVIL_2, FAX, EMAIL_1, EMAIL_' + - '2, PAGINA_WEB,'#10' NOTAS, USUARIO, ID_EMPRESA,'#10#10#10' REGIMEN_IVA' + - ', DESCUENTO, DESCRIPCION_PROVEEDOR,'#10' CODIGO_ASIGNADO, ID_TIPO' + - '_IVA, ID_FORMA_PAGO, TIENDA_WEB, HOMOLOGADO, CERTIFICACION,'#10' ' + - 'GRUPO_PROVEEDOR'#10#10' FROM'#10' V_PROVEEDORES' - StatementType = stSQL + StatementType = stAutoSQL ColumnMappings = < item DatasetField = 'ID' @@ -1077,14 +729,14 @@ object srvContactos: TsrvContactos DatasetField = 'NOMBRE' TableField = 'NOMBRE' end - item - DatasetField = 'CALLE' - TableField = 'CALLE' - end item DatasetField = 'PERSONA_CONTACTO' TableField = 'PERSONA_CONTACTO' end + item + DatasetField = 'CALLE' + TableField = 'CALLE' + end item DatasetField = 'POBLACION' TableField = 'POBLACION' @@ -1133,6 +785,14 @@ object srvContactos: TsrvContactos DatasetField = 'NOTAS' TableField = 'NOTAS' end + item + DatasetField = 'FECHA_ALTA' + TableField = 'FECHA_ALTA' + end + item + DatasetField = 'FECHA_MODIFICACION' + TableField = 'FECHA_MODIFICACION' + end item DatasetField = 'USUARIO' TableField = 'USUARIO' @@ -1145,22 +805,6 @@ object srvContactos: TsrvContactos DatasetField = 'REFERENCIA' TableField = 'REFERENCIA' end - item - DatasetField = 'ID_TIPO_IVA' - TableField = 'ID_TIPO_IVA' - end - item - DatasetField = 'REGIMEN_IVA' - TableField = 'REGIMEN_IVA' - end - item - DatasetField = 'ID_FORMA_PAGO' - TableField = 'ID_FORMA_PAGO' - end - item - DatasetField = 'TIENDA_WEB' - TableField = 'TIENDA_WEB' - end item DatasetField = 'DESCUENTO' TableField = 'DESCUENTO' @@ -1173,6 +817,26 @@ object srvContactos: TsrvContactos DatasetField = 'CODIGO_ASIGNADO' TableField = 'CODIGO_ASIGNADO' end + item + DatasetField = 'GRUPO_PROVEEDOR' + TableField = 'GRUPO_PROVEEDOR' + end + item + DatasetField = 'REGIMEN_IVA' + TableField = 'REGIMEN_IVA' + end + item + DatasetField = 'ID_TIPO_IVA' + TableField = 'ID_TIPO_IVA' + end + item + DatasetField = 'ID_FORMA_PAGO' + TableField = 'ID_FORMA_PAGO' + end + item + DatasetField = 'TIENDA_WEB' + TableField = 'TIENDA_WEB' + end item DatasetField = 'HOMOLOGADO' TableField = 'HOMOLOGADO' @@ -1180,10 +844,6 @@ object srvContactos: TsrvContactos item DatasetField = 'CERTIFICACION' TableField = 'CERTIFICACION' - end - item - DatasetField = 'GRUPO_PROVEEDOR' - TableField = 'GRUPO_PROVEEDOR' end> end> Name = 'Proveedores' @@ -1191,338 +851,191 @@ object srvContactos: TsrvContactos item Name = 'ID' DataType = datAutoInc - BlobType = dabtUnknown + GeneratorName = 'GEN_CONTACTOS_ID' + ServerAutoRefresh = True DictionaryEntry = 'Contactos_ID' InPrimaryKey = True - Calculated = False - Lookup = False - LookupCache = False end item Name = 'ID_CATEGORIA' DataType = datInteger - BlobType = dabtUnknown DictionaryEntry = 'Contactos_ID_CATEGORIA' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False end item Name = 'NIF_CIF' DataType = datString Size = 15 - BlobType = dabtUnknown DictionaryEntry = 'Contactos_NIF_CIF' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False end item Name = 'NOMBRE' DataType = datString Size = 255 - BlobType = dabtUnknown DictionaryEntry = 'Contactos_NOMBRE' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False - end - item - Name = 'CALLE' - DataType = datString - Size = 255 - BlobType = dabtUnknown - DictionaryEntry = 'Contactos_CALLE' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False end item Name = 'PERSONA_CONTACTO' DataType = datString Size = 255 - BlobType = dabtUnknown DictionaryEntry = 'Contactos_PERSONA_CONTACTO' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False + end + item + Name = 'CALLE' + DataType = datString + Size = 255 + DictionaryEntry = 'Contactos_CALLE' end item Name = 'POBLACION' DataType = datString Size = 255 - BlobType = dabtUnknown DictionaryEntry = 'Contactos_POBLACION' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False end item Name = 'PROVINCIA' DataType = datString Size = 255 - BlobType = dabtUnknown DictionaryEntry = 'Contactos_PROVINCIA' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False end item Name = 'CODIGO_POSTAL' DataType = datString Size = 10 - BlobType = dabtUnknown DictionaryEntry = 'Contactos_CODIGO_POSTAL' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False end item Name = 'TELEFONO_1' DataType = datString Size = 25 - BlobType = dabtUnknown DictionaryEntry = 'Contactos_TELEFONO_1' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False end item Name = 'TELEFONO_2' DataType = datString Size = 25 - BlobType = dabtUnknown DictionaryEntry = 'Contactos_TELEFONO_2' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False end item Name = 'MOVIL_1' DataType = datString Size = 25 - BlobType = dabtUnknown DictionaryEntry = 'Contactos_MOVIL_1' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False end item Name = 'MOVIL_2' DataType = datString Size = 25 - BlobType = dabtUnknown DictionaryEntry = 'Contactos_MOVIL_2' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False end item Name = 'FAX' DataType = datString Size = 25 - BlobType = dabtUnknown DictionaryEntry = 'Contactos_FAX' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False end item Name = 'EMAIL_1' DataType = datString Size = 255 - BlobType = dabtUnknown DictionaryEntry = 'Contactos_EMAIL_1' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False end item Name = 'EMAIL_2' DataType = datString Size = 255 - BlobType = dabtUnknown DictionaryEntry = 'Contactos_EMAIL_2' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False end item Name = 'PAGINA_WEB' DataType = datString Size = 255 - BlobType = dabtUnknown DictionaryEntry = 'Contactos_PAGINA_WEB' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False end item Name = 'NOTAS' DataType = datMemo BlobType = dabtMemo DictionaryEntry = 'Contactos_NOTAS' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False + end + item + Name = 'FECHA_ALTA' + DataType = datDateTime + end + item + Name = 'FECHA_MODIFICACION' + DataType = datDateTime end item Name = 'USUARIO' DataType = datString Size = 20 - BlobType = dabtUnknown DictionaryEntry = 'Contactos_USUARIO' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False end item Name = 'ID_EMPRESA' DataType = datInteger - BlobType = dabtUnknown DictionaryEntry = 'Contactos_ID_EMPRESA' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False end item Name = 'REFERENCIA' DataType = datString Size = 255 - BlobType = dabtUnknown DictionaryEntry = 'Proveedores_REFERENCIA' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False - end - item - Name = 'ID_TIPO_IVA' - DataType = datInteger - BlobType = dabtUnknown - DictionaryEntry = 'Proveedores_ID_TIPO_IVA' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False - end - item - Name = 'REGIMEN_IVA' - DataType = datString - Size = 255 - BlobType = dabtUnknown - DictionaryEntry = 'Proveedores_REGIMEN_IVA' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False - end - item - Name = 'ID_FORMA_PAGO' - DataType = datInteger - BlobType = dabtUnknown - DictionaryEntry = 'Proveedores_ID_FORMA_PAGO' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False - end - item - Name = 'TIENDA_WEB' - DataType = datInteger - BlobType = dabtUnknown - DictionaryEntry = 'Proveedores_TIENDA_WEB' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False end item Name = 'DESCUENTO' DataType = datFloat - BlobType = dabtUnknown DictionaryEntry = 'Proveedores_DESCUENTO' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False end item Name = 'DESCRIPCION_PROVEEDOR' DataType = datString Size = 255 - BlobType = dabtUnknown DictionaryEntry = 'Proveedores_DESCRIPCION_PROVEEDOR' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False end item Name = 'CODIGO_ASIGNADO' DataType = datString Size = 255 - BlobType = dabtUnknown DictionaryEntry = 'Proveedores_CODIGO_ASIGNADO' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False - end - item - Name = 'HOMOLOGADO' - DataType = datInteger - BlobType = dabtUnknown - DictionaryEntry = 'Proveedores_HOMOLOGADO' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False - end - item - Name = 'CERTIFICACION' - DataType = datString - Size = 255 - BlobType = dabtUnknown - DictionaryEntry = 'Proveedores_CERTIFICACION' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False end item Name = 'GRUPO_PROVEEDOR' DataType = datString Size = 255 - BlobType = dabtUnknown - DisplayWidth = 0 - Alignment = taLeftJustify - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False + end + item + Name = 'REGIMEN_IVA' + DataType = datString + Size = 255 + DictionaryEntry = 'Proveedores_REGIMEN_IVA' + end + item + Name = 'ID_TIPO_IVA' + DataType = datInteger + DictionaryEntry = 'Proveedores_ID_TIPO_IVA' + end + item + Name = 'ID_FORMA_PAGO' + DataType = datInteger + DictionaryEntry = 'Proveedores_ID_FORMA_PAGO' + end + item + Name = 'TIENDA_WEB' + DataType = datSmallInt + DictionaryEntry = 'Proveedores_TIENDA_WEB' + end + item + Name = 'HOMOLOGADO' + DataType = datSmallInt + DictionaryEntry = 'Proveedores_HOMOLOGADO' + end + item + Name = 'CERTIFICACION' + DataType = datString + Size = 255 + DictionaryEntry = 'Proveedores_CERTIFICACION' end> - BusinessRulesClient.ScriptLanguage = rslPascalScript - BusinessRulesServer.ScriptLanguage = rslPascalScript end item Params = <> @@ -1530,15 +1043,7 @@ object srvContactos: TsrvContactos item Connection = 'IBX' TargetTable = 'V_EMPLEADOS' - SQL = - 'SELECT '#10' ID, ID_CATEGORIA, REFERENCIA, NIF_CIF, NOMBRE, PERSO' + - 'NA_CONTACTO, CALLE,'#10' POBLACION, PROVINCIA, CODIGO_POSTAL, TEL' + - 'EFONO_1, TELEFONO_2,'#10' MOVIL_1, MOVIL_2, FAX, EMAIL_1, EMAIL_2' + - ', PAGINA_WEB,'#10' NOTAS, USUARIO, ID_EMPRESA,'#10' '#10' '#10' CATE' + - 'GORIA, FECHA_NACIMIENTO, FECHA_ALTA_EMPRESA, FORMACION_BASE,'#10' ' + - ' FORMACION_COMPLE, FORMACION_RECIBIDA, EXPERIENCIA'#10' '#10'FROM V_E' + - 'MPLEADOS' - StatementType = stSQL + StatementType = stAutoSQL ColumnMappings = < item DatasetField = 'ID' @@ -1651,6 +1156,14 @@ object srvContactos: TsrvContactos item DatasetField = 'EXPERIENCIA' TableField = 'EXPERIENCIA' + end + item + DatasetField = 'FECHA_ALTA' + TableField = 'FECHA_ALTA' + end + item + DatasetField = 'FECHA_MODIFICACION' + TableField = 'FECHA_MODIFICACION' end> end> Name = 'Empleados' @@ -1658,323 +1171,181 @@ object srvContactos: TsrvContactos item Name = 'ID' DataType = datAutoInc - BlobType = dabtUnknown + GeneratorName = 'GEN_CONTACTOS_ID' + ServerAutoRefresh = True DictionaryEntry = 'Contactos_ID' InPrimaryKey = True - Calculated = False - Lookup = False - LookupCache = False end item Name = 'ID_CATEGORIA' DataType = datInteger - BlobType = dabtUnknown DictionaryEntry = 'Contactos_ID_CATEGORIA' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False end item Name = 'NIF_CIF' DataType = datString Size = 15 - BlobType = dabtUnknown DictionaryEntry = 'Contactos_NIF_CIF' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False end item Name = 'NOMBRE' DataType = datString Size = 255 - BlobType = dabtUnknown DictionaryEntry = 'Contactos_NOMBRE' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False - end - item - Name = 'CALLE' - DataType = datString - Size = 255 - BlobType = dabtUnknown - DictionaryEntry = 'Contactos_CALLE' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False end item Name = 'PERSONA_CONTACTO' DataType = datString Size = 255 - BlobType = dabtUnknown DictionaryEntry = 'Contactos_PERSONA_CONTACTO' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False + end + item + Name = 'CALLE' + DataType = datString + Size = 255 + DictionaryEntry = 'Contactos_CALLE' end item Name = 'POBLACION' DataType = datString Size = 255 - BlobType = dabtUnknown DictionaryEntry = 'Contactos_POBLACION' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False end item Name = 'PROVINCIA' DataType = datString Size = 255 - BlobType = dabtUnknown DictionaryEntry = 'Contactos_PROVINCIA' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False end item Name = 'CODIGO_POSTAL' DataType = datString Size = 10 - BlobType = dabtUnknown DictionaryEntry = 'Contactos_CODIGO_POSTAL' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False end item Name = 'TELEFONO_1' DataType = datString Size = 25 - BlobType = dabtUnknown DictionaryEntry = 'Contactos_TELEFONO_1' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False end item Name = 'TELEFONO_2' DataType = datString Size = 25 - BlobType = dabtUnknown DictionaryEntry = 'Contactos_TELEFONO_2' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False end item Name = 'MOVIL_1' DataType = datString Size = 25 - BlobType = dabtUnknown DictionaryEntry = 'Contactos_MOVIL_1' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False end item Name = 'MOVIL_2' DataType = datString Size = 25 - BlobType = dabtUnknown DictionaryEntry = 'Contactos_MOVIL_2' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False end item Name = 'FAX' DataType = datString Size = 25 - BlobType = dabtUnknown DictionaryEntry = 'Contactos_FAX' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False end item Name = 'EMAIL_1' DataType = datString Size = 255 - BlobType = dabtUnknown DictionaryEntry = 'Contactos_EMAIL_1' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False end item Name = 'EMAIL_2' DataType = datString Size = 255 - BlobType = dabtUnknown DictionaryEntry = 'Contactos_EMAIL_2' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False end item Name = 'PAGINA_WEB' DataType = datString Size = 255 - BlobType = dabtUnknown DictionaryEntry = 'Contactos_PAGINA_WEB' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False end item Name = 'NOTAS' DataType = datMemo BlobType = dabtMemo DictionaryEntry = 'Contactos_NOTAS' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False + end + item + Name = 'FECHA_ALTA' + DataType = datDateTime + end + item + Name = 'FECHA_MODIFICACION' + DataType = datDateTime end item Name = 'USUARIO' DataType = datString Size = 20 - BlobType = dabtUnknown DictionaryEntry = 'Contactos_USUARIO' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False end item Name = 'ID_EMPRESA' DataType = datInteger - BlobType = dabtUnknown DictionaryEntry = 'Contactos_ID_EMPRESA' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False end item Name = 'REFERENCIA' DataType = datString Size = 255 - BlobType = dabtUnknown DictionaryEntry = 'Agentes_REFERENCIA' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False + end + item + Name = 'FECHA_NACIMIENTO' + DataType = datDateTime + DictionaryEntry = 'Empleados_FECHA_NACIMIENTO' end item Name = 'CATEGORIA' DataType = datString Size = 255 - BlobType = dabtUnknown DictionaryEntry = 'Empleados_CATEGORIA' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False - end - item - Name = 'FECHA_NACIMIENTO' - DataType = datDateTime - BlobType = dabtUnknown - DictionaryEntry = 'Empleados_FECHA_NACIMIENTO' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False end item Name = 'FECHA_ALTA_EMPRESA' DataType = datDateTime - BlobType = dabtUnknown DictionaryEntry = 'Empleados_FECHA_ALTA_EMPRESA' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False end item Name = 'FORMACION_BASE' DataType = datMemo - BlobType = dabtUnknown DictionaryEntry = 'Empleados_FORMACION_BASE' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False end item Name = 'FORMACION_COMPLE' DataType = datMemo - BlobType = dabtUnknown DictionaryEntry = 'Empleados_FORMACION_COMPLE' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False end item Name = 'FORMACION_RECIBIDA' DataType = datMemo - BlobType = dabtUnknown DictionaryEntry = 'Empleados_FORMACION_RECIBIDA' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False end item Name = 'EXPERIENCIA' DataType = datMemo - BlobType = dabtUnknown DictionaryEntry = 'Empleados_EXPERIENCIA' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False end> - BusinessRulesClient.ScriptLanguage = rslPascalScript - BusinessRulesServer.ScriptLanguage = rslPascalScript end item - Params = < - item - Name = 'ID_CONTACTO' - DataType = datInteger - BlobType = dabtUnknown - Value = '9' - ParamType = daptInput - end> + Params = <> Statements = < item Connection = 'IBX' TargetTable = 'CONTACTOS_DIRECCIONES' - SQL = - 'SELECT'#10' ID, ID_CONTACTO, NOMBRE, CALLE, POBLACION, PROVINCIA,' + - ' CODIGO_POSTAL, PERSONA_CONTACTO,'#10' TELEFONO, MOVIL, FAX, EMAI' + - 'L, NOTAS, PORTE'#10' FROM'#10' CONTACTOS_DIRECCIONES'#10' WHERE ID_CONT' + - 'ACTO = :ID_CONTACTO' - StatementType = stSQL + StatementType = stAutoSQL ColumnMappings = < item DatasetField = 'ID' @@ -2012,6 +1383,14 @@ object srvContactos: TsrvContactos DatasetField = 'TELEFONO' TableField = 'TELEFONO' end + item + DatasetField = 'MOVIL' + TableField = 'MOVIL' + end + item + DatasetField = 'FAX' + TableField = 'FAX' + end item DatasetField = 'EMAIL' TableField = 'EMAIL' @@ -2025,12 +1404,12 @@ object srvContactos: TsrvContactos TableField = 'PORTE' end item - DatasetField = 'MOVIL' - TableField = 'MOVIL' + DatasetField = 'FECHA_ALTA' + TableField = 'FECHA_ALTA' end item - DatasetField = 'FAX' - TableField = 'FAX' + DatasetField = 'FECHA_MODIFICACION' + TableField = 'FECHA_MODIFICACION' end> end> Name = 'DireccionesContacto' @@ -2038,176 +1417,107 @@ object srvContactos: TsrvContactos item Name = 'ID' DataType = datAutoInc - BlobType = dabtUnknown + GeneratorName = 'GEN_CONTACTOS_DIR_ID' + ServerAutoRefresh = True DictionaryEntry = 'DireccionesContacto_ID' InPrimaryKey = True - Calculated = False - Lookup = False - LookupCache = False end item Name = 'ID_CONTACTO' DataType = datInteger - BlobType = dabtUnknown DictionaryEntry = 'DireccionesContacto_ID_CONTACTO' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False - end - item - Name = 'NOMBRE' - DataType = datString - Size = 255 - BlobType = dabtUnknown - DictionaryEntry = 'DireccionesContacto_NOMBRE' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False end item Name = 'CALLE' DataType = datString Size = 255 - BlobType = dabtUnknown DictionaryEntry = 'DireccionesContacto_CALLE' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False end item Name = 'POBLACION' DataType = datString Size = 255 - BlobType = dabtUnknown DictionaryEntry = 'DireccionesContacto_POBLACION' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False end item Name = 'PROVINCIA' DataType = datString Size = 255 - BlobType = dabtUnknown DictionaryEntry = 'DireccionesContacto_PROVINCIA' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False end item Name = 'CODIGO_POSTAL' DataType = datString Size = 10 - BlobType = dabtUnknown DictionaryEntry = 'DireccionesContacto_CODIGO_POSTAL' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False end item Name = 'PERSONA_CONTACTO' DataType = datString Size = 255 - BlobType = dabtUnknown DictionaryEntry = 'DireccionesContacto_PERSONA_CONTACTO' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False + end + item + Name = 'NOMBRE' + DataType = datString + Size = 255 + DictionaryEntry = 'DireccionesContacto_NOMBRE' end item Name = 'TELEFONO' DataType = datString Size = 25 - BlobType = dabtUnknown DictionaryEntry = 'DireccionesContacto_TELEFONO' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False end item Name = 'MOVIL' DataType = datString Size = 25 - BlobType = dabtUnknown DictionaryEntry = 'Contactos_MOVIL_1' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False end item Name = 'FAX' DataType = datString Size = 25 - BlobType = dabtUnknown DictionaryEntry = 'Contactos_FAX' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False end item Name = 'EMAIL' DataType = datString Size = 255 - BlobType = dabtUnknown DictionaryEntry = 'DireccionesContacto_EMAIL' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False end item Name = 'NOTAS' DataType = datMemo - BlobType = dabtUnknown DictionaryEntry = 'DireccionesContacto_NOTAS' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False end item Name = 'PORTE' DataType = datFloat - BlobType = dabtUnknown DictionaryEntry = 'DireccionesContacto_PORTE' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False + end + item + Name = 'FECHA_ALTA' + DataType = datDateTime + end + item + Name = 'FECHA_MODIFICACION' + DataType = datDateTime end> - BusinessRulesClient.ScriptLanguage = rslPascalScript - BusinessRulesServer.ScriptLanguage = rslPascalScript end item - Params = < - item - Name = 'ID_CLIENTE' - DataType = datInteger - BlobType = dabtUnknown - Value = '' - ParamType = daptInput - end> + Params = <> Statements = < item Connection = 'IBX' - TargetTable = 'CLIENTES_DTOS_PROVEEDORES' SQL = 'SELECT '#10' CLIENTES_DTOS_PROVEEDORES.ID,'#10' CLIENTES_DTOS_PROV' + 'EEDORES.ID_CLIENTE,'#10' CLIENTES_DTOS_PROVEEDORES.ID_PROVEEDOR,'#10 + ' CONTACTOS.NOMBRE,'#10' CLIENTES_DTOS_PROVEEDORES.DESCUENTO'#10' ' + 'FROM'#10' CLIENTES_DTOS_PROVEEDORES'#10' LEFT JOIN CONTACTOS ON (CON' + - 'TACTOS.ID = CLIENTES_DTOS_PROVEEDORES.ID_PROVEEDOR)'#10'WHERE CLIENT' + - 'ES_DTOS_PROVEEDORES.ID_CLIENTE = :ID_CLIENTE' + 'TACTOS.ID = CLIENTES_DTOS_PROVEEDORES.ID_PROVEEDOR)'#10'WHERE {Where' + + '}'#10 StatementType = stSQL ColumnMappings = < item @@ -2222,73 +1532,47 @@ object srvContactos: TsrvContactos DatasetField = 'ID_PROVEEDOR' TableField = 'ID_PROVEEDOR' end - item - DatasetField = 'DESCUENTO' - TableField = 'DESCUENTO' - end item DatasetField = 'NOMBRE' TableField = 'NOMBRE' + end + item + DatasetField = 'DESCUENTO' + TableField = 'DESCUENTO' end> end> Name = 'ClientesDescuentos' Fields = < item Name = 'ID' - DataType = datInteger - BlobType = dabtUnknown + DataType = datAutoInc + GeneratorName = 'GEN_CLIENTES_DTOS_PROV_ID' + ServerAutoRefresh = True DictionaryEntry = 'ClientesDescuentos_ID' InPrimaryKey = True - Calculated = False - Lookup = False - LookupCache = False end item Name = 'ID_CLIENTE' DataType = datInteger - BlobType = dabtUnknown DictionaryEntry = 'ClientesDescuentos_ID_CLIENTE' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False end item Name = 'ID_PROVEEDOR' DataType = datInteger - BlobType = dabtUnknown DictionaryEntry = 'ClientesDescuentos_ID_PROVEEDOR' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False end item Name = 'NOMBRE' DataType = datString Size = 255 - BlobType = dabtUnknown - DisplayWidth = 0 DisplayLabel = 'ClientesDescuentos_NOMBRE' - Alignment = taLeftJustify ServerAutoRefresh = True - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False end item Name = 'DESCUENTO' DataType = datFloat - BlobType = dabtUnknown DictionaryEntry = 'ClientesDescuentos_DESCUENTO' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False end> - BusinessRulesClient.ScriptLanguage = rslPascalScript - BusinessRulesServer.ScriptLanguage = rslPascalScript end item Params = <> @@ -2296,8 +1580,7 @@ object srvContactos: TsrvContactos item Connection = 'IBX' TargetTable = 'PROVEEDORES_GRUPOS' - SQL = 'SELECT DESCRIPCION'#10'FROM PROVEEDORES_GRUPOS' - StatementType = stSQL + StatementType = stAutoSQL ColumnMappings = < item DatasetField = 'DESCRIPCION' @@ -2310,16 +1593,8 @@ object srvContactos: TsrvContactos Name = 'DESCRIPCION' DataType = datString Size = 255 - BlobType = dabtUnknown - DisplayWidth = 0 - Alignment = taLeftJustify - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False + DisplayLabel = 'Descripci'#243'n' end> - BusinessRulesClient.ScriptLanguage = rslPascalScript - BusinessRulesServer.ScriptLanguage = rslPascalScript end item Params = <> @@ -2327,8 +1602,7 @@ object srvContactos: TsrvContactos item Connection = 'IBX' TargetTable = 'EMPLEADOS_GRUPOS' - SQL = 'SELECT DESCRIPCION'#10'FROM EMPLEADOS_GRUPOS' - StatementType = stSQL + StatementType = stAutoSQL ColumnMappings = < item DatasetField = 'DESCRIPCION' @@ -2341,24 +1615,234 @@ object srvContactos: TsrvContactos Name = 'DESCRIPCION' DataType = datString Size = 255 - BlobType = dabtUnknown - DisplayWidth = 0 - Alignment = taLeftJustify - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False + DisplayLabel = 'Descripci'#243'n' + end> + end + item + IsPublic = False + Params = < + item + Name = 'ID' + DataType = datAutoInc + GeneratorName = 'GEN_CONTACTOS_ID' + Value = '2' + ParamType = daptInput + end> + Statements = < + item + ConnectionType = 'Interbase' + Default = True + TargetTable = 'CONTACTOS' + SQL = + 'SELECT '#10' ID, NIF_CIF, NOMBRE, CALLE, POBLACION, PROVINCIA, CO' + + 'DIGO_POSTAL, '#10' TELEFONO_1, TELEFONO_2, MOVIL_1, MOVIL_2, FAX,' + + ' EMAIL_1, '#10' EMAIL_2, PAGINA_WEB, NOTAS, FECHA_ALTA, FECHA_MOD' + + 'IFICACION, '#10' USUARIO, REFERENCIA, PERSONA_CONTACTO'#10' FROM'#10' ' + + ' CONTACTOS'#10' WHERE ID = :ID'#10 + StatementType = stSQL + ColumnMappings = < + item + DatasetField = 'ID' + TableField = 'ID' + end + item + DatasetField = 'NIF_CIF' + TableField = 'NIF_CIF' + end + item + DatasetField = 'NOMBRE' + TableField = 'NOMBRE' + end + item + DatasetField = 'CALLE' + TableField = 'CALLE' + end + item + DatasetField = 'POBLACION' + TableField = 'POBLACION' + end + item + DatasetField = 'PROVINCIA' + TableField = 'PROVINCIA' + end + item + DatasetField = 'CODIGO_POSTAL' + TableField = 'CODIGO_POSTAL' + end + item + DatasetField = 'TELEFONO_1' + TableField = 'TELEFONO_1' + end + item + DatasetField = 'TELEFONO_2' + TableField = 'TELEFONO_2' + end + item + DatasetField = 'MOVIL_1' + TableField = 'MOVIL_1' + end + item + DatasetField = 'MOVIL_2' + TableField = 'MOVIL_2' + end + item + DatasetField = 'FAX' + TableField = 'FAX' + end + item + DatasetField = 'EMAIL_1' + TableField = 'EMAIL_1' + end + item + DatasetField = 'EMAIL_2' + TableField = 'EMAIL_2' + end + item + DatasetField = 'PAGINA_WEB' + TableField = 'PAGINA_WEB' + end + item + DatasetField = 'NOTAS' + TableField = 'NOTAS' + end + item + DatasetField = 'FECHA_ALTA' + TableField = 'FECHA_ALTA' + end + item + DatasetField = 'FECHA_MODIFICACION' + TableField = 'FECHA_MODIFICACION' + end + item + DatasetField = 'USUARIO' + TableField = 'USUARIO' + end + item + DatasetField = 'REFERENCIA' + TableField = 'REFERENCIA' + end + item + DatasetField = 'PERSONA_CONTACTO' + TableField = 'PERSONA_CONTACTO' + end> + end> + Name = 'Contactos_Refresh' + Fields = < + item + Name = 'ID' + DataType = datAutoInc + GeneratorName = 'GEN_CONTACTOS_ID' + DictionaryEntry = 'Contactos_ID' + InPrimaryKey = True + end + item + Name = 'NIF_CIF' + DataType = datString + Size = 15 + end + item + Name = 'NOMBRE' + DataType = datString + Size = 255 + Required = True + end + item + Name = 'CALLE' + DataType = datString + Size = 255 + end + item + Name = 'POBLACION' + DataType = datString + Size = 255 + end + item + Name = 'PROVINCIA' + DataType = datString + Size = 255 + end + item + Name = 'CODIGO_POSTAL' + DataType = datString + Size = 10 + end + item + Name = 'TELEFONO_1' + DataType = datString + Size = 25 + end + item + Name = 'TELEFONO_2' + DataType = datString + Size = 25 + end + item + Name = 'MOVIL_1' + DataType = datString + Size = 25 + end + item + Name = 'MOVIL_2' + DataType = datString + Size = 25 + end + item + Name = 'FAX' + DataType = datString + Size = 25 + end + item + Name = 'EMAIL_1' + DataType = datString + Size = 255 + end + item + Name = 'EMAIL_2' + DataType = datString + Size = 255 + end + item + Name = 'PAGINA_WEB' + DataType = datString + Size = 255 + end + item + Name = 'NOTAS' + DataType = datMemo + end + item + Name = 'FECHA_ALTA' + DataType = datDateTime + end + item + Name = 'FECHA_MODIFICACION' + DataType = datDateTime + end + item + Name = 'USUARIO' + DataType = datString + Size = 30 + end + item + Name = 'REFERENCIA' + DataType = datString + Size = 255 + end + item + Name = 'PERSONA_CONTACTO' + DataType = datString + Size = 255 end> - BusinessRulesClient.ScriptLanguage = rslPascalScript - BusinessRulesServer.ScriptLanguage = rslPascalScript end> + JoinDataTables = <> + UnionDataTables = <> Commands = < item Params = < item Name = 'ID' - DataType = datInteger - BlobType = dabtUnknown + DataType = datAutoInc + GeneratorName = 'GEN_CONTACTOS_ID' Value = '' ParamType = daptInput end @@ -2366,7 +1850,6 @@ object srvContactos: TsrvContactos Name = 'NIF_CIF' DataType = datString Size = 15 - BlobType = dabtUnknown Value = '' ParamType = daptInput end @@ -2374,7 +1857,6 @@ object srvContactos: TsrvContactos Name = 'NOMBRE' DataType = datString Size = 255 - BlobType = dabtUnknown Value = '' ParamType = daptInput end @@ -2382,7 +1864,6 @@ object srvContactos: TsrvContactos Name = 'PERSONA_CONTACTO' DataType = datString Size = 255 - BlobType = dabtUnknown Value = '' ParamType = daptInput end @@ -2390,7 +1871,6 @@ object srvContactos: TsrvContactos Name = 'CALLE' DataType = datString Size = 255 - BlobType = dabtUnknown Value = '' ParamType = daptInput end @@ -2398,7 +1878,6 @@ object srvContactos: TsrvContactos Name = 'POBLACION' DataType = datString Size = 255 - BlobType = dabtUnknown Value = '' ParamType = daptInput end @@ -2406,7 +1885,6 @@ object srvContactos: TsrvContactos Name = 'PROVINCIA' DataType = datString Size = 255 - BlobType = dabtUnknown Value = '' ParamType = daptInput end @@ -2414,7 +1892,6 @@ object srvContactos: TsrvContactos Name = 'CODIGO_POSTAL' DataType = datString Size = 10 - BlobType = dabtUnknown Value = '' ParamType = daptInput end @@ -2422,7 +1899,6 @@ object srvContactos: TsrvContactos Name = 'TELEFONO_1' DataType = datString Size = 25 - BlobType = dabtUnknown Value = '' ParamType = daptInput end @@ -2430,7 +1906,6 @@ object srvContactos: TsrvContactos Name = 'TELEFONO_2' DataType = datString Size = 25 - BlobType = dabtUnknown Value = '' ParamType = daptInput end @@ -2438,7 +1913,6 @@ object srvContactos: TsrvContactos Name = 'MOVIL_1' DataType = datString Size = 25 - BlobType = dabtUnknown Value = '' ParamType = daptInput end @@ -2446,7 +1920,6 @@ object srvContactos: TsrvContactos Name = 'MOVIL_2' DataType = datString Size = 25 - BlobType = dabtUnknown Value = '' ParamType = daptInput end @@ -2454,7 +1927,6 @@ object srvContactos: TsrvContactos Name = 'FAX' DataType = datString Size = 25 - BlobType = dabtUnknown Value = '' ParamType = daptInput end @@ -2462,7 +1934,6 @@ object srvContactos: TsrvContactos Name = 'EMAIL_1' DataType = datString Size = 255 - BlobType = dabtUnknown Value = '' ParamType = daptInput end @@ -2470,7 +1941,6 @@ object srvContactos: TsrvContactos Name = 'EMAIL_2' DataType = datString Size = 255 - BlobType = dabtUnknown Value = '' ParamType = daptInput end @@ -2478,14 +1948,12 @@ object srvContactos: TsrvContactos Name = 'PAGINA_WEB' DataType = datString Size = 255 - BlobType = dabtUnknown Value = '' ParamType = daptInput end item Name = 'NOTAS' DataType = datMemo - BlobType = dabtUnknown Value = '' ParamType = daptInput end @@ -2493,7 +1961,6 @@ object srvContactos: TsrvContactos Name = 'USUARIO' DataType = datString Size = 20 - BlobType = dabtUnknown Value = '' ParamType = daptInput end @@ -2501,7 +1968,6 @@ object srvContactos: TsrvContactos Name = 'REFERENCIA' DataType = datString Size = 255 - BlobType = dabtUnknown Value = '' ParamType = daptInput end> @@ -2528,7 +1994,6 @@ object srvContactos: TsrvContactos item Name = 'OLD_ID' DataType = datInteger - BlobType = dabtUnknown Value = '' ParamType = daptInput end> @@ -2547,7 +2012,6 @@ object srvContactos: TsrvContactos item Name = 'ID' DataType = datInteger - BlobType = dabtUnknown Value = '' ParamType = daptInput end @@ -2555,7 +2019,6 @@ object srvContactos: TsrvContactos Name = 'NIF_CIF' DataType = datString Size = 15 - BlobType = dabtUnknown Value = '' ParamType = daptInput end @@ -2563,7 +2026,6 @@ object srvContactos: TsrvContactos Name = 'NOMBRE' DataType = datString Size = 255 - BlobType = dabtUnknown Value = '' ParamType = daptInput end @@ -2571,7 +2033,6 @@ object srvContactos: TsrvContactos Name = 'PERSONA_CONTACTO' DataType = datString Size = 255 - BlobType = dabtUnknown Value = '' ParamType = daptInput end @@ -2579,7 +2040,6 @@ object srvContactos: TsrvContactos Name = 'CALLE' DataType = datString Size = 255 - BlobType = dabtUnknown Value = '' ParamType = daptInput end @@ -2587,7 +2047,6 @@ object srvContactos: TsrvContactos Name = 'POBLACION' DataType = datString Size = 255 - BlobType = dabtUnknown Value = '' ParamType = daptInput end @@ -2595,7 +2054,6 @@ object srvContactos: TsrvContactos Name = 'PROVINCIA' DataType = datString Size = 255 - BlobType = dabtUnknown Value = '' ParamType = daptInput end @@ -2603,7 +2061,6 @@ object srvContactos: TsrvContactos Name = 'CODIGO_POSTAL' DataType = datString Size = 10 - BlobType = dabtUnknown Value = '' ParamType = daptInput end @@ -2611,7 +2068,6 @@ object srvContactos: TsrvContactos Name = 'TELEFONO_1' DataType = datString Size = 25 - BlobType = dabtUnknown Value = '' ParamType = daptInput end @@ -2619,7 +2075,6 @@ object srvContactos: TsrvContactos Name = 'TELEFONO_2' DataType = datString Size = 25 - BlobType = dabtUnknown Value = '' ParamType = daptInput end @@ -2627,7 +2082,6 @@ object srvContactos: TsrvContactos Name = 'MOVIL_1' DataType = datString Size = 25 - BlobType = dabtUnknown Value = '' ParamType = daptInput end @@ -2635,7 +2089,6 @@ object srvContactos: TsrvContactos Name = 'MOVIL_2' DataType = datString Size = 25 - BlobType = dabtUnknown Value = '' ParamType = daptInput end @@ -2643,7 +2096,6 @@ object srvContactos: TsrvContactos Name = 'FAX' DataType = datString Size = 25 - BlobType = dabtUnknown Value = '' ParamType = daptInput end @@ -2651,7 +2103,6 @@ object srvContactos: TsrvContactos Name = 'EMAIL_1' DataType = datString Size = 255 - BlobType = dabtUnknown Value = '' ParamType = daptInput end @@ -2659,7 +2110,6 @@ object srvContactos: TsrvContactos Name = 'EMAIL_2' DataType = datString Size = 255 - BlobType = dabtUnknown Value = '' ParamType = daptInput end @@ -2667,14 +2117,12 @@ object srvContactos: TsrvContactos Name = 'PAGINA_WEB' DataType = datString Size = 255 - BlobType = dabtUnknown Value = '' ParamType = daptInput end item Name = 'NOTAS' DataType = datMemo - BlobType = dabtUnknown Value = '' ParamType = daptInput end @@ -2682,7 +2130,6 @@ object srvContactos: TsrvContactos Name = 'USUARIO' DataType = datString Size = 20 - BlobType = dabtUnknown Value = '' ParamType = daptInput end @@ -2690,14 +2137,12 @@ object srvContactos: TsrvContactos Name = 'REFERENCIA' DataType = datString Size = 255 - BlobType = dabtUnknown Value = '' ParamType = daptInput end item Name = 'OLD_ID' DataType = datInteger - BlobType = dabtUnknown Value = '' ParamType = daptInput end> @@ -2724,15 +2169,14 @@ object srvContactos: TsrvContactos Params = < item Name = 'ID' - DataType = datInteger - BlobType = dabtUnknown + DataType = datAutoInc + GeneratorName = 'GEN_CONTACTOS_DATOS_BANCO_ID' Value = '' ParamType = daptInput end item Name = 'ID_CONTACTO' DataType = datInteger - BlobType = dabtUnknown Value = '' ParamType = daptInput end @@ -2740,7 +2184,6 @@ object srvContactos: TsrvContactos Name = 'TITULAR' DataType = datString Size = 255 - BlobType = dabtUnknown Value = '' ParamType = daptInput end @@ -2748,7 +2191,6 @@ object srvContactos: TsrvContactos Name = 'ENTIDAD' DataType = datString Size = 15 - BlobType = dabtUnknown Value = '' ParamType = daptInput end @@ -2756,7 +2198,6 @@ object srvContactos: TsrvContactos Name = 'SUCURSAL' DataType = datString Size = 15 - BlobType = dabtUnknown Value = '' ParamType = daptInput end @@ -2764,7 +2205,6 @@ object srvContactos: TsrvContactos Name = 'DC' DataType = datString Size = 15 - BlobType = dabtUnknown Value = '' ParamType = daptInput end @@ -2772,7 +2212,6 @@ object srvContactos: TsrvContactos Name = 'CUENTA' DataType = datString Size = 15 - BlobType = dabtUnknown Value = '' ParamType = daptInput end> @@ -2794,7 +2233,6 @@ object srvContactos: TsrvContactos item Name = 'OLD_ID' DataType = datInteger - BlobType = dabtUnknown Value = '' ParamType = daptInput end> @@ -2815,7 +2253,6 @@ object srvContactos: TsrvContactos item Name = 'ID_CONTACTO' DataType = datInteger - BlobType = dabtUnknown Value = '' ParamType = daptInput end @@ -2823,7 +2260,6 @@ object srvContactos: TsrvContactos Name = 'TITULAR' DataType = datString Size = 255 - BlobType = dabtUnknown Value = '' ParamType = daptInput end @@ -2831,7 +2267,6 @@ object srvContactos: TsrvContactos Name = 'ENTIDAD' DataType = datString Size = 15 - BlobType = dabtUnknown Value = '' ParamType = daptInput end @@ -2839,7 +2274,6 @@ object srvContactos: TsrvContactos Name = 'SUCURSAL' DataType = datString Size = 15 - BlobType = dabtUnknown Value = '' ParamType = daptInput end @@ -2847,7 +2281,6 @@ object srvContactos: TsrvContactos Name = 'DC' DataType = datString Size = 15 - BlobType = dabtUnknown Value = '' ParamType = daptInput end @@ -2855,14 +2288,12 @@ object srvContactos: TsrvContactos Name = 'CUENTA' DataType = datString Size = 15 - BlobType = dabtUnknown Value = '' ParamType = daptInput end item Name = 'OLD_ID' DataType = datInteger - BlobType = dabtUnknown Value = '' ParamType = daptInput end> @@ -2885,14 +2316,12 @@ object srvContactos: TsrvContactos item Name = 'ID_CONTACTO' DataType = datInteger - BlobType = dabtUnknown Value = '' ParamType = daptInput end item Name = 'ID_CATEGORIA' DataType = datInteger - BlobType = dabtUnknown Value = '' ParamType = daptInput end> @@ -2913,14 +2342,12 @@ object srvContactos: TsrvContactos item Name = 'OLD_ID_CONTACTO' DataType = datInteger - BlobType = dabtUnknown Value = '' ParamType = daptInput end item Name = 'OLD_ID_CATEGORIA' DataType = datInteger - BlobType = dabtUnknown Value = '' ParamType = daptInput end> @@ -2941,28 +2368,24 @@ object srvContactos: TsrvContactos item Name = 'ID_CONTACTO' DataType = datInteger - BlobType = dabtUnknown Value = '' ParamType = daptInput end item Name = 'ID_CATEGORIA' DataType = datInteger - BlobType = dabtUnknown Value = '' ParamType = daptInput end item Name = 'OLD_ID_CONTACTO' DataType = datInteger - BlobType = dabtUnknown Value = '' ParamType = daptInput end item Name = 'OLD_ID_CATEGORIA' DataType = datInteger - BlobType = dabtUnknown Value = '' ParamType = daptInput end> @@ -2984,7 +2407,6 @@ object srvContactos: TsrvContactos item Name = 'ID_CONTACTO' DataType = datInteger - BlobType = dabtUnknown Value = '' ParamType = daptInput end> @@ -3005,7 +2427,6 @@ object srvContactos: TsrvContactos item Name = 'OLD_ID_CONTACTO' DataType = datInteger - BlobType = dabtUnknown Value = '' ParamType = daptInput end> @@ -3026,28 +2447,24 @@ object srvContactos: TsrvContactos item Name = 'ID_EMPRESA' DataType = datInteger - BlobType = dabtUnknown Value = '' ParamType = daptInput end item Name = 'ID_CONTACTO' DataType = datInteger - BlobType = dabtUnknown Value = '' ParamType = daptInput end item Name = 'OLD_ID_EMPRESA' DataType = datInteger - BlobType = dabtUnknown Value = '' ParamType = daptInput end item Name = 'OLD_ID_CONTACTO' DataType = datInteger - BlobType = dabtUnknown Value = '' ParamType = daptInput end> @@ -3069,7 +2486,6 @@ object srvContactos: TsrvContactos item Name = 'ID_CLIENTE' DataType = datInteger - BlobType = dabtUnknown Value = '' ParamType = daptInput end @@ -3077,14 +2493,12 @@ object srvContactos: TsrvContactos Name = 'GRUPO_CLIENTE' DataType = datString Size = 255 - BlobType = dabtUnknown Value = '' ParamType = daptInput end item Name = 'RECARGO_EQUIVALENCIA' DataType = datInteger - BlobType = dabtUnknown Value = '' ParamType = daptInput end @@ -3092,21 +2506,18 @@ object srvContactos: TsrvContactos Name = 'NOMBRE_COMERCIAL' DataType = datString Size = 255 - BlobType = dabtUnknown Value = '' ParamType = daptInput end item Name = 'VENCIMIENTO_FACTURAS' DataType = datInteger - BlobType = dabtUnknown Value = '' ParamType = daptInput end item Name = 'BLOQUEADO' DataType = datInteger - BlobType = dabtUnknown Value = '' ParamType = daptInput end @@ -3114,7 +2525,6 @@ object srvContactos: TsrvContactos Name = 'MOTIVO_BLOQUEO' DataType = datString Size = 255 - BlobType = dabtUnknown Value = '' ParamType = daptInput end @@ -3122,28 +2532,24 @@ object srvContactos: TsrvContactos Name = 'REGIMEN_IVA' DataType = datString Size = 255 - BlobType = dabtUnknown Value = '' ParamType = daptInput end item Name = 'ID_TIPO_IVA' DataType = datInteger - BlobType = dabtUnknown Value = '' ParamType = daptInput end item Name = 'ID_FORMA_PAGO' DataType = datInteger - BlobType = dabtUnknown Value = '' ParamType = daptInput end item Name = 'TIENDA_WEB' DataType = datInteger - BlobType = dabtUnknown Value = '' ParamType = daptInput end> @@ -3169,7 +2575,6 @@ object srvContactos: TsrvContactos item Name = 'OLD_ID_CLIENTE' DataType = datInteger - BlobType = dabtUnknown Value = '' ParamType = daptInput end> @@ -3190,7 +2595,6 @@ object srvContactos: TsrvContactos item Name = 'ID_CLIENTE' DataType = datInteger - BlobType = dabtUnknown Value = '' ParamType = daptInput end @@ -3198,7 +2602,6 @@ object srvContactos: TsrvContactos Name = 'GRUPO_CLIENTE' DataType = datString Size = 255 - BlobType = dabtUnknown Value = '' ParamType = daptInput end @@ -3206,14 +2609,12 @@ object srvContactos: TsrvContactos Name = 'MOTIVO_BLOQUEO' DataType = datString Size = 255 - BlobType = dabtUnknown Value = '' ParamType = daptInput end item Name = 'RECARGO_EQUIVALENCIA' DataType = datInteger - BlobType = dabtUnknown Value = '' ParamType = daptInput end @@ -3221,21 +2622,18 @@ object srvContactos: TsrvContactos Name = 'NOMBRE_COMERCIAL' DataType = datString Size = 255 - BlobType = dabtUnknown Value = '' ParamType = daptInput end item Name = 'VENCIMIENTO_FACTURAS' DataType = datInteger - BlobType = dabtUnknown Value = '' ParamType = daptInput end item Name = 'BLOQUEADO' DataType = datInteger - BlobType = dabtUnknown Value = '' ParamType = daptInput end @@ -3243,35 +2641,30 @@ object srvContactos: TsrvContactos Name = 'REGIMEN_IVA' DataType = datString Size = 255 - BlobType = dabtUnknown Value = '' ParamType = daptInput end item Name = 'ID_TIPO_IVA' DataType = datInteger - BlobType = dabtUnknown Value = '' ParamType = daptInput end item Name = 'ID_FORMA_PAGO' DataType = datInteger - BlobType = dabtUnknown Value = '' ParamType = daptInput end item Name = 'TIENDA_WEB' DataType = datInteger - BlobType = dabtUnknown Value = '' ParamType = daptInput end item Name = 'OLD_ID_CLIENTE' DataType = datInteger - BlobType = dabtUnknown Value = '' ParamType = daptInput end> @@ -3298,7 +2691,6 @@ object srvContactos: TsrvContactos item Name = 'ID_PROVEEDOR' DataType = datInteger - BlobType = dabtUnknown Value = '' ParamType = daptInput end @@ -3306,14 +2698,12 @@ object srvContactos: TsrvContactos Name = 'REGIMEN_IVA' DataType = datString Size = 255 - BlobType = dabtUnknown Value = '' ParamType = daptInput end item Name = 'DESCUENTO' DataType = datFloat - BlobType = dabtUnknown Value = '' ParamType = daptInput end @@ -3321,7 +2711,6 @@ object srvContactos: TsrvContactos Name = 'DESCRIPCION_PROVEEDOR' DataType = datString Size = 255 - BlobType = dabtUnknown Value = '' ParamType = daptInput end @@ -3329,35 +2718,30 @@ object srvContactos: TsrvContactos Name = 'CODIGO_ASIGNADO' DataType = datString Size = 255 - BlobType = dabtUnknown Value = '' ParamType = daptInput end item Name = 'ID_TIPO_IVA' DataType = datInteger - BlobType = dabtUnknown Value = '' ParamType = daptInput end item Name = 'ID_FORMA_PAGO' DataType = datInteger - BlobType = dabtUnknown Value = '' ParamType = daptInput end item Name = 'TIENDA_WEB' DataType = datInteger - BlobType = dabtUnknown Value = '' ParamType = daptInput end item Name = 'HOMOLOGADO' DataType = datInteger - BlobType = dabtUnknown Value = '' ParamType = daptInput end @@ -3365,7 +2749,6 @@ object srvContactos: TsrvContactos Name = 'CERTIFICACION' DataType = datString Size = 255 - BlobType = dabtUnknown Value = '' ParamType = daptInput end @@ -3373,7 +2756,6 @@ object srvContactos: TsrvContactos Name = 'GRUPO_PROVEEDOR' DataType = datString Size = 255 - BlobType = dabtUnknown Value = '' ParamType = daptInput end> @@ -3399,7 +2781,6 @@ object srvContactos: TsrvContactos item Name = 'OLD_ID_PROVEEDOR' DataType = datInteger - BlobType = dabtUnknown Value = '' ParamType = daptInput end> @@ -3420,7 +2801,6 @@ object srvContactos: TsrvContactos item Name = 'ID_PROVEEDOR' DataType = datInteger - BlobType = dabtUnknown Value = '' ParamType = daptInput end @@ -3428,14 +2808,12 @@ object srvContactos: TsrvContactos Name = 'REGIMEN_IVA' DataType = datString Size = 255 - BlobType = dabtUnknown Value = '' ParamType = daptInput end item Name = 'DESCUENTO' DataType = datFloat - BlobType = dabtUnknown Value = '' ParamType = daptInput end @@ -3443,7 +2821,6 @@ object srvContactos: TsrvContactos Name = 'DESCRIPCION_PROVEEDOR' DataType = datString Size = 255 - BlobType = dabtUnknown Value = '' ParamType = daptInput end @@ -3451,35 +2828,30 @@ object srvContactos: TsrvContactos Name = 'CODIGO_ASIGNADO' DataType = datString Size = 255 - BlobType = dabtUnknown Value = '' ParamType = daptInput end item Name = 'ID_TIPO_IVA' DataType = datInteger - BlobType = dabtUnknown Value = '' ParamType = daptInput end item Name = 'ID_FORMA_PAGO' DataType = datInteger - BlobType = dabtUnknown Value = '' ParamType = daptInput end item Name = 'TIENDA_WEB' DataType = datInteger - BlobType = dabtUnknown Value = '' ParamType = daptInput end item Name = 'HOMOLOGADO' DataType = datInteger - BlobType = dabtUnknown Value = '' ParamType = daptInput end @@ -3487,7 +2859,6 @@ object srvContactos: TsrvContactos Name = 'CERTIFICACION' DataType = datString Size = 255 - BlobType = dabtUnknown Value = '' ParamType = daptInput end @@ -3495,14 +2866,12 @@ object srvContactos: TsrvContactos Name = 'GRUPO_PROVEEDOR' DataType = datString Size = 255 - BlobType = dabtUnknown Value = '' ParamType = daptInput end item Name = 'OLD_ID_PROVEEDOR' DataType = datInteger - BlobType = dabtUnknown Value = '' ParamType = daptInput end> @@ -3528,15 +2897,14 @@ object srvContactos: TsrvContactos Params = < item Name = 'ID' - DataType = datInteger - BlobType = dabtUnknown + DataType = datAutoInc + GeneratorName = 'GEN_CONTACTOS_DIR_ID' Value = '' ParamType = daptInput end item Name = 'ID_CONTACTO' DataType = datInteger - BlobType = dabtUnknown Value = '' ParamType = daptInput end @@ -3544,7 +2912,6 @@ object srvContactos: TsrvContactos Name = 'NOMBRE' DataType = datString Size = 255 - BlobType = dabtUnknown Value = '' ParamType = daptInput end @@ -3552,7 +2919,6 @@ object srvContactos: TsrvContactos Name = 'CALLE' DataType = datString Size = 255 - BlobType = dabtUnknown Value = '' ParamType = daptInput end @@ -3560,7 +2926,6 @@ object srvContactos: TsrvContactos Name = 'POBLACION' DataType = datString Size = 255 - BlobType = dabtUnknown Value = '' ParamType = daptInput end @@ -3568,7 +2933,6 @@ object srvContactos: TsrvContactos Name = 'PROVINCIA' DataType = datString Size = 255 - BlobType = dabtUnknown Value = '' ParamType = daptInput end @@ -3576,7 +2940,6 @@ object srvContactos: TsrvContactos Name = 'CODIGO_POSTAL' DataType = datString Size = 10 - BlobType = dabtUnknown Value = '' ParamType = daptInput end @@ -3584,7 +2947,6 @@ object srvContactos: TsrvContactos Name = 'PERSONA_CONTACTO' DataType = datString Size = 255 - BlobType = dabtUnknown Value = '' ParamType = daptInput end @@ -3592,7 +2954,6 @@ object srvContactos: TsrvContactos Name = 'TELEFONO' DataType = datString Size = 25 - BlobType = dabtUnknown Value = '' ParamType = daptInput end @@ -3600,7 +2961,6 @@ object srvContactos: TsrvContactos Name = 'MOVIL' DataType = datString Size = 25 - BlobType = dabtUnknown Value = '' ParamType = daptInput end @@ -3608,7 +2968,6 @@ object srvContactos: TsrvContactos Name = 'FAX' DataType = datString Size = 25 - BlobType = dabtUnknown Value = '' ParamType = daptInput end @@ -3616,21 +2975,18 @@ object srvContactos: TsrvContactos Name = 'EMAIL' DataType = datString Size = 255 - BlobType = dabtUnknown Value = '' ParamType = daptInput end item Name = 'NOTAS' DataType = datMemo - BlobType = dabtUnknown Value = '' ParamType = daptInput end item Name = 'PORTE' DataType = datFloat - BlobType = dabtUnknown Value = '' ParamType = daptInput end> @@ -3655,7 +3011,6 @@ object srvContactos: TsrvContactos item Name = 'OLD_ID' DataType = datInteger - BlobType = dabtUnknown Value = '' ParamType = daptInput end> @@ -3676,7 +3031,6 @@ object srvContactos: TsrvContactos item Name = 'ID_CONTACTO' DataType = datInteger - BlobType = dabtUnknown Value = '' ParamType = daptInput end @@ -3684,7 +3038,6 @@ object srvContactos: TsrvContactos Name = 'NOMBRE' DataType = datString Size = 255 - BlobType = dabtUnknown Value = '' ParamType = daptInput end @@ -3692,7 +3045,6 @@ object srvContactos: TsrvContactos Name = 'CALLE' DataType = datString Size = 255 - BlobType = dabtUnknown Value = '' ParamType = daptInput end @@ -3700,7 +3052,6 @@ object srvContactos: TsrvContactos Name = 'POBLACION' DataType = datString Size = 255 - BlobType = dabtUnknown Value = '' ParamType = daptInput end @@ -3708,7 +3059,6 @@ object srvContactos: TsrvContactos Name = 'PROVINCIA' DataType = datString Size = 255 - BlobType = dabtUnknown Value = '' ParamType = daptInput end @@ -3716,7 +3066,6 @@ object srvContactos: TsrvContactos Name = 'CODIGO_POSTAL' DataType = datString Size = 10 - BlobType = dabtUnknown Value = '' ParamType = daptInput end @@ -3724,7 +3073,6 @@ object srvContactos: TsrvContactos Name = 'PERSONA_CONTACTO' DataType = datString Size = 255 - BlobType = dabtUnknown Value = '' ParamType = daptInput end @@ -3732,7 +3080,6 @@ object srvContactos: TsrvContactos Name = 'TELEFONO' DataType = datString Size = 25 - BlobType = dabtUnknown Value = '' ParamType = daptInput end @@ -3740,7 +3087,6 @@ object srvContactos: TsrvContactos Name = 'MOVIL' DataType = datString Size = 25 - BlobType = dabtUnknown Value = '' ParamType = daptInput end @@ -3748,7 +3094,6 @@ object srvContactos: TsrvContactos Name = 'FAX' DataType = datString Size = 25 - BlobType = dabtUnknown Value = '' ParamType = daptInput end @@ -3756,28 +3101,24 @@ object srvContactos: TsrvContactos Name = 'EMAIL' DataType = datString Size = 255 - BlobType = dabtUnknown Value = '' ParamType = daptInput end item Name = 'NOTAS' DataType = datMemo - BlobType = dabtUnknown Value = '' ParamType = daptInput end item Name = 'PORTE' DataType = datFloat - BlobType = dabtUnknown Value = '' ParamType = daptInput end item Name = 'OLD_ID' DataType = datInteger - BlobType = dabtUnknown Value = '' ParamType = daptInput end> @@ -3802,29 +3143,26 @@ object srvContactos: TsrvContactos Params = < item Name = 'ID' - DataType = datInteger - BlobType = dabtUnknown + DataType = datAutoInc + GeneratorName = 'GEN_CLIENTES_DTOS_PROV_ID' Value = '' ParamType = daptInput end item Name = 'ID_CLIENTE' DataType = datInteger - BlobType = dabtUnknown Value = '' ParamType = daptInput end item Name = 'ID_PROVEEDOR' DataType = datInteger - BlobType = dabtUnknown Value = '' ParamType = daptInput end item Name = 'DESCUENTO' DataType = datFloat - BlobType = dabtUnknown Value = '' ParamType = daptInput end> @@ -3846,7 +3184,6 @@ object srvContactos: TsrvContactos item Name = 'OLD_ID' DataType = datInteger - BlobType = dabtUnknown Value = '' ParamType = daptInput end> @@ -3867,28 +3204,24 @@ object srvContactos: TsrvContactos item Name = 'ID_CLIENTE' DataType = datInteger - BlobType = dabtUnknown Value = '' ParamType = daptInput end item Name = 'ID_PROVEEDOR' DataType = datInteger - BlobType = dabtUnknown Value = '' ParamType = daptInput end item Name = 'DESCUENTO' DataType = datFloat - BlobType = dabtUnknown Value = '' ParamType = daptInput end item Name = 'OLD_ID' DataType = datInteger - BlobType = dabtUnknown Value = '' ParamType = daptInput end> @@ -3910,7 +3243,6 @@ object srvContactos: TsrvContactos item Name = 'OLD_ID_EMPLEADO' DataType = datInteger - BlobType = dabtUnknown Value = '' ParamType = daptInput end> @@ -3931,14 +3263,12 @@ object srvContactos: TsrvContactos item Name = 'ID_EMPLEADO' DataType = datInteger - BlobType = dabtUnknown Value = '' ParamType = daptInput end item Name = 'FECHA_NACIMIENTO' DataType = datDateTime - BlobType = dabtUnknown Value = '' ParamType = daptInput end @@ -3946,42 +3276,36 @@ object srvContactos: TsrvContactos Name = 'CATEGORIA' DataType = datString Size = 255 - BlobType = dabtUnknown Value = '' ParamType = daptInput end item Name = 'FECHA_ALTA_EMPRESA' DataType = datDateTime - BlobType = dabtUnknown Value = '' ParamType = daptInput end item Name = 'FORMACION_BASE' DataType = datMemo - BlobType = dabtUnknown Value = '' ParamType = daptInput end item Name = 'FORMACION_COMPLE' DataType = datMemo - BlobType = dabtUnknown Value = '' ParamType = daptInput end item Name = 'FORMACION_RECIBIDA' DataType = datMemo - BlobType = dabtUnknown Value = '' ParamType = daptInput end item Name = 'EXPERIENCIA' DataType = datMemo - BlobType = dabtUnknown Value = '' ParamType = daptInput end> @@ -4005,51 +3329,35 @@ object srvContactos: TsrvContactos Params = < item Name = 'FECHA_NACIMIENTO' - BlobType = dabtUnknown Value = '' - ParamType = daptUnknown end item Name = 'CATEGORIA' - BlobType = dabtUnknown Value = '' - ParamType = daptUnknown end item Name = 'FECHA_ALTA_EMPRESA' - BlobType = dabtUnknown Value = '' - ParamType = daptUnknown end item Name = 'FORMACION_BASE' - BlobType = dabtUnknown Value = '' - ParamType = daptUnknown end item Name = 'FORMACION_COMPLE' - BlobType = dabtUnknown Value = '' - ParamType = daptUnknown end item Name = 'FORMACION_RECIBIDA' - BlobType = dabtUnknown Value = '' - ParamType = daptUnknown end item Name = 'EXPERIENCIA' - BlobType = dabtUnknown Value = '' - ParamType = daptUnknown end item Name = 'OLD_ID_EMPLEADO' - BlobType = dabtUnknown Value = '' - ParamType = daptUnknown end> Statements = < item @@ -4072,14 +3380,12 @@ object srvContactos: TsrvContactos item Name = 'ID_EMPRESA' DataType = datInteger - BlobType = dabtUnknown Value = '' ParamType = daptInput end item Name = 'ID_CONTACTO' DataType = datInteger - BlobType = dabtUnknown Value = '' ParamType = daptInput end> @@ -4100,14 +3406,12 @@ object srvContactos: TsrvContactos item Name = 'OLD_ID_EMPRESA' DataType = datInteger - BlobType = dabtUnknown Value = '' ParamType = daptInput end item Name = 'OLD_ID_CONTACTO' DataType = datInteger - BlobType = dabtUnknown Value = '' ParamType = daptInput end> @@ -4123,615 +3427,484 @@ object srvContactos: TsrvContactos end> Name = 'Delete_ContactoEmpresa' end> - RelationShips = <> + RelationShips = < + item + Name = 'FK_ClientesDescuentos_Clientes' + MasterDatasetName = 'Clientes' + MasterFields = 'ID' + DetailDatasetName = 'ClientesDescuentos' + DetailFields = 'ID_CLIENTE' + RelationshipType = rtForeignKey + end + item + Name = 'FK_DireccionesContacto_Contactos' + MasterDatasetName = 'Contactos' + MasterFields = 'ID' + DetailDatasetName = 'DireccionesContacto' + DetailFields = 'ID_CONTACTO' + RelationshipType = rtForeignKey + end + item + Name = 'FK_DatosBancarios_Contactos' + MasterDatasetName = 'Contactos' + MasterFields = 'ID' + DetailDatasetName = 'DatosBancarios' + DetailFields = 'ID_CONTACTO' + RelationshipType = rtForeignKey + end + item + Name = 'FK_DatosBancarios_Clientes' + MasterDatasetName = 'Clientes' + MasterFields = 'ID' + DetailDatasetName = 'DatosBancarios' + DetailFields = 'ID_CONTACTO' + RelationshipType = rtForeignKey + end + item + Name = 'FK_DireccionesContacto_Clientes' + MasterDatasetName = 'Clientes' + MasterFields = 'ID' + DetailDatasetName = 'DireccionesContacto' + DetailFields = 'ID_CONTACTO' + RelationshipType = rtForeignKey + end + item + Name = 'FK_DireccionesContacto_Empleados' + MasterDatasetName = 'Empleados' + MasterFields = 'ID' + DetailDatasetName = 'DireccionesContacto' + DetailFields = 'ID_CONTACTO' + RelationshipType = rtForeignKey + end + item + Name = 'FK_DatosBancarios_Empleados' + MasterDatasetName = 'Empleados' + MasterFields = 'ID' + DetailDatasetName = 'DatosBancarios' + DetailFields = 'ID_CONTACTO' + RelationshipType = rtForeignKey + end + item + Name = 'FK_DireccionesContacto_Proveedores' + MasterDatasetName = 'Proveedores' + MasterFields = 'ID' + DetailDatasetName = 'DireccionesContacto' + DetailFields = 'ID_CONTACTO' + RelationshipType = rtForeignKey + end + item + Name = 'FK_DatosBancarios_Proveedores' + MasterDatasetName = 'Proveedores' + MasterFields = 'ID' + DetailDatasetName = 'DatosBancarios' + DetailFields = 'ID_CONTACTO' + RelationshipType = rtForeignKey + end> UpdateRules = < item Name = 'Insert Contactos' DoUpdate = False - DoInsert = True DoDelete = False DatasetName = 'Contactos' - FailureBehaviour = fbRaiseException + FailureBehavior = fbRaiseException end item Name = 'Update Contactos' - DoUpdate = True DoInsert = False DoDelete = False DatasetName = 'Contactos' - FailureBehaviour = fbRaiseException + FailureBehavior = fbRaiseException end item Name = 'Insert DatosBancarios' DoUpdate = False - DoInsert = True DoDelete = False DatasetName = 'DatosBancarios' - FailureBehaviour = fbRaiseException + FailureBehavior = fbRaiseException end item Name = 'Update DatosBancarios' - DoUpdate = True DoInsert = False DoDelete = False DatasetName = 'DatosBancarios' - FailureBehaviour = fbRaiseException + FailureBehavior = fbRaiseException end item Name = 'Insert DireccionesContacto' DoUpdate = False - DoInsert = True DoDelete = False DatasetName = 'DireccionesContacto' - FailureBehaviour = fbRaiseException + FailureBehavior = fbRaiseException end item Name = 'Update DireccionesContacto' - DoUpdate = True DoInsert = False DoDelete = False DatasetName = 'DireccionesContacto' - FailureBehaviour = fbRaiseException - end - item - Name = 'Insert ContactosCategorias' - DoUpdate = False - DoInsert = True - DoDelete = False - DatasetName = 'ContactosCategorias' - FailureBehaviour = fbRaiseException - end - item - Name = 'Update ContactosCategorias' - DoUpdate = True - DoInsert = False - DoDelete = False - DatasetName = 'ContactosCategorias' - FailureBehaviour = fbRaiseException + FailureBehavior = fbRaiseException end item Name = 'Insert AgentesComisiones' DoUpdate = False - DoInsert = True DoDelete = False DatasetName = 'AgentesComisiones' - FailureBehaviour = fbRaiseException + FailureBehavior = fbRaiseException end item Name = 'Update AgentesComisiones' - DoUpdate = True DoInsert = False DoDelete = False DatasetName = 'AgentesComisiones' - FailureBehaviour = fbRaiseException + FailureBehavior = fbRaiseException end item Name = 'Insert ClientesDescuentos' DoUpdate = False - DoInsert = True DoDelete = False DatasetName = 'ClientesDescuentos' - FailureBehaviour = fbRaiseException + FailureBehavior = fbRaiseException end item Name = 'Update ClientesDescuentos' - DoUpdate = True DoInsert = False DoDelete = False DatasetName = 'ClientesDescuentos' - FailureBehaviour = fbRaiseException + FailureBehavior = fbRaiseException end item Name = 'Delete DatosBancarios' DoUpdate = False DoInsert = False - DoDelete = True DatasetName = 'DatosBancarios' - FailureBehaviour = fbRaiseException + FailureBehavior = fbRaiseException end item Name = 'Delete ClientesDescuentos' DoUpdate = False DoInsert = False - DoDelete = True DatasetName = 'ClientesDescuentos' - FailureBehaviour = fbRaiseException + FailureBehavior = fbRaiseException end item Name = 'Delete AgentesComisiones' DoUpdate = False DoInsert = False - DoDelete = True DatasetName = 'AgentesComisiones' - FailureBehaviour = fbRaiseException + FailureBehavior = fbRaiseException end item Name = 'Delete DireccionesContacto' DoUpdate = False DoInsert = False - DoDelete = True DatasetName = 'DireccionesContacto' - FailureBehaviour = fbRaiseException - end - item - Name = 'Delete ContactosCategorias' - DoUpdate = False - DoInsert = False - DoDelete = True - DatasetName = 'ContactosCategorias' - FailureBehaviour = fbRaiseException + FailureBehavior = fbRaiseException end item Name = 'Delete Contactos' DoUpdate = False DoInsert = False - DoDelete = True DatasetName = 'Contactos' - FailureBehaviour = fbRaiseException + FailureBehavior = fbRaiseException end> + Version = 0 Left = 30 Top = 14 end - object BINAdapter: TDABINAdapter - Left = 30 - Top = 82 - end object DataDictionary: TDADataDictionary Fields = < item Name = 'DatosBancarios_ID' DataType = datAutoInc - BlobType = dabtUnknown - DisplayWidth = 0 + GeneratorName = 'GEN_CONTACTOS_DATOS_BANCO_ID' DisplayLabel = 'ID' - Alignment = taLeftJustify end item Name = 'DatosBancarios_ID_CONTACTO' DataType = datInteger - BlobType = dabtUnknown - DisplayWidth = 0 DisplayLabel = 'ID_CONTACTO' - Alignment = taLeftJustify end item Name = 'DatosBancarios_TITULAR' DataType = datString Size = 255 - BlobType = dabtUnknown - DisplayWidth = 0 DisplayLabel = 'Titular' - Alignment = taLeftJustify end item Name = 'DatosBancarios_ENTIDAD' DataType = datString Size = 15 - BlobType = dabtUnknown - DisplayWidth = 0 DisplayLabel = 'C'#243'digo de entidad' - Alignment = taLeftJustify end item Name = 'DatosBancarios_SUCURSAL' DataType = datString Size = 15 - BlobType = dabtUnknown - DisplayWidth = 0 DisplayLabel = 'C'#243'digo de sucursal' - Alignment = taLeftJustify end item Name = 'DatosBancarios_DC' DataType = datString Size = 15 - BlobType = dabtUnknown - DisplayWidth = 0 DisplayLabel = 'D'#237'gito de control' - Alignment = taLeftJustify end item Name = 'DatosBancarios_CUENTA' DataType = datString Size = 15 - BlobType = dabtUnknown - DisplayWidth = 0 DisplayLabel = 'C'#243'digo de cuenta' - Alignment = taLeftJustify end item Name = 'Contactos_ID' DataType = datAutoInc - BlobType = dabtUnknown - DisplayWidth = 0 + GeneratorName = 'GEN_CONTACTOS_ID' DisplayLabel = 'ID' - Alignment = taLeftJustify end item Name = 'Contactos_NIF_CIF' DataType = datString Size = 15 - BlobType = dabtUnknown - DisplayWidth = 0 DisplayLabel = 'NIF/CIF' - Alignment = taLeftJustify - end - item - Name = 'Contactos_NOMBRE' - DataType = datString - Size = 255 - BlobType = dabtUnknown - DisplayWidth = 0 - DisplayLabel = 'Nombre' - Alignment = taLeftJustify end item Name = 'Contactos_CALLE' DataType = datString Size = 255 - BlobType = dabtUnknown - DisplayWidth = 0 DisplayLabel = 'Direcci'#243'n' - Alignment = taLeftJustify end item Name = 'Contactos_POBLACION' DataType = datString Size = 255 - BlobType = dabtUnknown - DisplayWidth = 0 DisplayLabel = 'Poblaci'#243'n' - Alignment = taLeftJustify end item Name = 'Contactos_PROVINCIA' DataType = datString Size = 255 - BlobType = dabtUnknown - DisplayWidth = 0 DisplayLabel = 'Provincia' - Alignment = taLeftJustify end item Name = 'Contactos_CODIGO_POSTAL' DataType = datString Size = 10 - BlobType = dabtUnknown - DisplayWidth = 0 DisplayLabel = 'C'#243'digo postal' - Alignment = taLeftJustify end item Name = 'Contactos_TELEFONO_1' DataType = datString Size = 25 - BlobType = dabtUnknown - DisplayWidth = 0 DisplayLabel = 'Tlf. trabajo' - Alignment = taLeftJustify end item Name = 'Contactos_TELEFONO_2' DataType = datString Size = 25 - BlobType = dabtUnknown - DisplayWidth = 0 DisplayLabel = 'Tlf. particular' - Alignment = taLeftJustify end item Name = 'Contactos_MOVIL_1' DataType = datString Size = 25 - BlobType = dabtUnknown - DisplayWidth = 0 DisplayLabel = 'M'#243'vil' - Alignment = taLeftJustify end item Name = 'Contactos_MOVIL_2' DataType = datString Size = 25 - BlobType = dabtUnknown - DisplayWidth = 0 DisplayLabel = 'MOVIL_2' - Alignment = taLeftJustify end item Name = 'Contactos_FAX' DataType = datString Size = 25 - BlobType = dabtUnknown - DisplayWidth = 0 DisplayLabel = 'Fax' - Alignment = taLeftJustify end item Name = 'Contactos_EMAIL_1' DataType = datString Size = 255 - BlobType = dabtUnknown - DisplayWidth = 0 DisplayLabel = 'E-mail trabajo' - Alignment = taLeftJustify end item Name = 'Contactos_EMAIL_2' DataType = datString Size = 255 - BlobType = dabtUnknown - DisplayWidth = 0 DisplayLabel = 'E-mail particular' - Alignment = taLeftJustify end item Name = 'Contactos_PAGINA_WEB' DataType = datString Size = 255 - BlobType = dabtUnknown - DisplayWidth = 0 DisplayLabel = 'Web' - Alignment = taLeftJustify end item Name = 'Contactos_NOTAS' DataType = datMemo BlobType = dabtMemo - DisplayWidth = 0 DisplayLabel = 'Observaciones' - Alignment = taLeftJustify end item Name = 'Contactos_FECHA_ALTA' DataType = datDateTime - BlobType = dabtUnknown - DisplayWidth = 0 DisplayLabel = 'Fecha de alta' - Alignment = taLeftJustify end item Name = 'Contactos_FECHA_MODIFICACION' DataType = datDateTime - BlobType = dabtUnknown - DisplayWidth = 0 DisplayLabel = 'Fecha de modificaci'#243'n' - Alignment = taLeftJustify end item Name = 'Contactos_USUARIO' DataType = datString Size = 20 - BlobType = dabtUnknown - DisplayWidth = 0 DisplayLabel = 'Usuario' - Alignment = taLeftJustify end item Name = 'Contactos_ID_CATEGORIA' DataType = datInteger - BlobType = dabtUnknown - DisplayWidth = 0 - Alignment = taLeftJustify end item Name = 'Contactos_ID_EMPRESA' DataType = datInteger - BlobType = dabtUnknown - DisplayWidth = 0 DisplayLabel = 'ID_EMPRESA' - Alignment = taLeftJustify end item Name = 'Proveedores_DISTRIBUYE' DataType = datString Size = 2000 - BlobType = dabtUnknown - DisplayWidth = 0 DisplayLabel = 'Distribuye' - Alignment = taLeftJustify end item Name = 'Proveedores_DESCUENTO' DataType = datFloat - BlobType = dabtUnknown - DisplayWidth = 0 DisplayLabel = 'Descuento (%)' - Alignment = taLeftJustify end item Name = 'Clientes_ID_AGENTE' DataType = datInteger - BlobType = dabtUnknown - DisplayWidth = 0 DisplayLabel = 'ID_AGENTE' - Alignment = taLeftJustify end item Name = 'Clientes_GRUPO_CLIENTE' DataType = datString Size = 255 - BlobType = dabtUnknown - DisplayWidth = 0 DisplayLabel = 'Grupo de cliente' - Alignment = taLeftJustify end item Name = 'DatosBancarios_PERSONA_CONTACTO' DataType = datString Size = 255 - BlobType = dabtUnknown - DisplayWidth = 0 - Alignment = taLeftJustify end item Name = 'DireccionesContacto_CALLE' DataType = datString Size = 255 - BlobType = dabtUnknown - DisplayWidth = 0 DisplayLabel = 'Calle' - Alignment = taLeftJustify end item Name = 'DireccionesContacto_POBLACION' DataType = datString Size = 255 - BlobType = dabtUnknown - DisplayWidth = 0 DisplayLabel = 'Poblaci'#243'n' - Alignment = taLeftJustify end item Name = 'DireccionesContacto_PROVINCIA' DataType = datString Size = 255 - BlobType = dabtUnknown - DisplayWidth = 0 DisplayLabel = 'Provincia' - Alignment = taLeftJustify end item Name = 'DireccionesContacto_CODIGO_POSTAL' DataType = datString Size = 10 - BlobType = dabtUnknown - DisplayWidth = 0 DisplayLabel = 'C'#243'digo postal' - Alignment = taLeftJustify end item Name = 'DireccionesContacto_PERSONA_CONTACTO' DataType = datString Size = 255 - BlobType = dabtUnknown - DisplayWidth = 0 DisplayLabel = 'Persona de contacto' - Alignment = taLeftJustify end item Name = 'DireccionesContacto_ID' DataType = datAutoInc - BlobType = dabtUnknown - DisplayWidth = 0 + GeneratorName = 'GEN_CONTACTOS_DIR_ID' DisplayLabel = 'ID' - Alignment = taLeftJustify end item Name = 'DireccionesContacto_ID_CONTACTO' DataType = datInteger - BlobType = dabtUnknown - DisplayWidth = 0 DisplayLabel = 'ID_CONTACTO' - Alignment = taLeftJustify end item Name = 'Clientes_NOMBRE_COMERCIAL' DataType = datString Size = 255 - BlobType = dabtUnknown - DisplayWidth = 0 DisplayLabel = 'Nombre comercial' - Alignment = taLeftJustify end item Name = 'Clientes_VENCIMIENTO_FACTURAS' DataType = datInteger - BlobType = dabtUnknown - DisplayWidth = 0 DisplayLabel = 'Vencimiento' - Alignment = taLeftJustify end item Name = 'Clientes_BLOQUEADO' - DataType = datInteger - BlobType = dabtUnknown - DisplayWidth = 0 + DataType = datSmallInt DisplayLabel = #191'Bloqueado?' - Alignment = taLeftJustify end item Name = 'Contactos_REFERENCIA' DataType = datString Size = 255 - BlobType = dabtUnknown - DisplayWidth = 0 DisplayLabel = 'Referencia' - Alignment = taLeftJustify end item Name = 'Proveedores_REFERENCIA' DataType = datString Size = 255 - BlobType = dabtUnknown - DisplayWidth = 0 DisplayLabel = 'Referencia' - Alignment = taLeftJustify end item Name = 'Agentes_REFERENCIA' DataType = datString Size = 255 - BlobType = dabtUnknown - DisplayWidth = 0 DisplayLabel = 'Referencia' - Alignment = taLeftJustify end item Name = 'AgentesComisiones_ID' DataType = datInteger - BlobType = dabtUnknown - DisplayWidth = 0 - Alignment = taLeftJustify end item Name = 'AgentesComisiones_ID_AGENTE' DataType = datInteger - BlobType = dabtUnknown - DisplayWidth = 0 - Alignment = taLeftJustify end item Name = 'AgentesComisiones_ID_PROVEEDOR' DataType = datInteger - BlobType = dabtUnknown - DisplayWidth = 0 - Alignment = taLeftJustify end item Name = 'AgentesComisiones_COMISION' DataType = datFloat - BlobType = dabtUnknown - DisplayWidth = 0 DisplayLabel = 'Comisi'#243'n (%)' Alignment = taRightJustify end item Name = 'ClientesDescuentos_ID' - DataType = datInteger - BlobType = dabtUnknown - DisplayWidth = 0 + DataType = datAutoInc + GeneratorName = 'GEN_CLIENTES_DTOS_PROV_ID' DisplayLabel = 'ID' - Alignment = taLeftJustify end item Name = 'ClientesDescuentos_ID_CLIENTE' DataType = datInteger - BlobType = dabtUnknown - DisplayWidth = 0 - Alignment = taLeftJustify end item Name = 'ClientesDescuentos_ID_PROVEEDOR' DataType = datInteger - BlobType = dabtUnknown - DisplayWidth = 0 - Alignment = taLeftJustify end item Name = 'ClientesDescuentos_DESCUENTO' DataType = datFloat - BlobType = dabtUnknown - DisplayWidth = 0 DisplayLabel = 'Descuento (%)' Alignment = taRightJustify end @@ -4739,252 +3912,169 @@ object srvContactos: TsrvContactos Name = 'Clientes_REFERENCIA' DataType = datString Size = 255 - BlobType = dabtUnknown - DisplayWidth = 0 DisplayLabel = 'REFERENCIA' - Alignment = taLeftJustify end item Name = 'Clientes_MOTIVO_BLOQUEO' DataType = datString Size = 255 - BlobType = dabtUnknown - DisplayWidth = 0 DisplayLabel = 'Motivo del bloqueo' - Alignment = taLeftJustify end item Name = 'DireccionesContacto_NOMBRE' DataType = datString Size = 255 - BlobType = dabtUnknown - DisplayWidth = 0 - Alignment = taLeftJustify end item Name = 'DireccionesContacto_TELEFONO' DataType = datString Size = 25 - BlobType = dabtUnknown - DisplayWidth = 0 DisplayLabel = 'Tel'#233'fono' - Alignment = taLeftJustify end item Name = 'DireccionesContacto_EMAIL' DataType = datString Size = 255 - BlobType = dabtUnknown - DisplayWidth = 0 DisplayLabel = 'E-mail' - Alignment = taLeftJustify end item Name = 'DireccionesContacto_NOTAS' DataType = datMemo - BlobType = dabtUnknown - DisplayWidth = 0 DisplayLabel = 'Notas' - Alignment = taLeftJustify end item Name = 'DireccionesContacto_PORTE' DataType = datFloat - BlobType = dabtUnknown - DisplayWidth = 0 DisplayLabel = 'Coste del porte' - Alignment = taLeftJustify end item Name = 'Clientes_RECARGO_EQUIVALENCIA' DataType = datInteger - BlobType = dabtUnknown - DisplayWidth = 0 DisplayLabel = 'Rec. equiv.' - Alignment = taLeftJustify end item Name = 'Clientes_REGIMEN_IVA' DataType = datString Size = 255 - BlobType = dabtUnknown - DisplayWidth = 0 DisplayLabel = 'R'#233'gimen de IVA' - Alignment = taLeftJustify end item Name = 'Clientes_ID_TIPO_IVA' DataType = datInteger - BlobType = dabtUnknown - DisplayWidth = 0 DisplayLabel = 'ID_TIPO_IVA' - Alignment = taLeftJustify end item Name = 'Clientes_ID_FORMA_PAGO' DataType = datInteger - BlobType = dabtUnknown - DisplayWidth = 0 DisplayLabel = 'ID_FORMA_PAGO' - Alignment = taLeftJustify end item Name = 'Proveedores_REGIMEN_IVA' DataType = datString Size = 255 - BlobType = dabtUnknown - DisplayWidth = 0 DisplayLabel = 'R'#233'gimen de IVA' - Alignment = taLeftJustify end item Name = 'Proveedores_ID_TIPO_IVA' DataType = datInteger - BlobType = dabtUnknown - DisplayWidth = 0 DisplayLabel = 'ID_TIPO_IVA' - Alignment = taLeftJustify end item Name = 'Proveedores_ID_FORMA_PAGO' DataType = datInteger - BlobType = dabtUnknown - DisplayWidth = 0 DisplayLabel = 'ID_FORMA_PAGO' - Alignment = taLeftJustify end item Name = 'Clientes_TIENDA_WEB' - DataType = datInteger - BlobType = dabtUnknown - DisplayWidth = 0 + DataType = datSmallInt DisplayLabel = 'TIENDA_WEB' - Alignment = taLeftJustify end item Name = 'Clientes_AGENTE' DataType = datString Size = 255 - BlobType = dabtUnknown - DisplayWidth = 0 - Alignment = taLeftJustify end item Name = 'Contactos_PERSONA_CONTACTO' DataType = datString Size = 255 - BlobType = dabtUnknown - DisplayWidth = 0 DisplayLabel = 'Persona de contacto' - Alignment = taLeftJustify end item Name = 'Proveedores_GRUPO_PROVEEDOR' DataType = datString - BlobType = dabtUnknown - DisplayWidth = 0 DisplayLabel = 'Grupo proveedor' - Alignment = taLeftJustify end item Name = 'Proveedores_TIENDA_WEB' - DataType = datInteger - BlobType = dabtUnknown - DisplayWidth = 0 + DataType = datSmallInt DisplayLabel = 'TIENDA_WEB' - Alignment = taLeftJustify end item Name = 'Proveedores_HOMOLOGADO' - DataType = datInteger - BlobType = dabtUnknown - DisplayWidth = 0 + DataType = datSmallInt DisplayLabel = 'Homologado' - Alignment = taLeftJustify end item Name = 'Proveedores_CERTIFICACION' DataType = datString Size = 255 - BlobType = dabtUnknown - DisplayWidth = 0 DisplayLabel = 'Certificaciones' - Alignment = taLeftJustify end item Name = 'Proveedores_DESCRIPCION_PROVEEDOR' DataType = datString Size = 255 - BlobType = dabtUnknown - DisplayWidth = 0 DisplayLabel = 'Proveedor de...' - Alignment = taLeftJustify end item Name = 'Proveedores_CODIGO_ASIGNADO' DataType = datString Size = 255 - BlobType = dabtUnknown - DisplayWidth = 0 DisplayLabel = 'C'#243'digo asignado' - Alignment = taLeftJustify end item Name = 'Empleados_FECHA_NACIMIENTO' DataType = datDateTime - BlobType = dabtUnknown - DisplayWidth = 0 DisplayLabel = 'Fecha nacimiento' - Alignment = taLeftJustify end item Name = 'Empleados_CATEGORIA' DataType = datString Size = 255 - BlobType = dabtUnknown - DisplayWidth = 0 DisplayLabel = 'Categor'#237'a' - Alignment = taLeftJustify end item Name = 'Empleados_FECHA_ALTA_EMPRESA' DataType = datDateTime - BlobType = dabtUnknown - DisplayWidth = 0 DisplayLabel = 'Fecha de alta' - Alignment = taLeftJustify end item Name = 'Empleados_FORMACION_BASE' DataType = datMemo - BlobType = dabtUnknown - DisplayWidth = 0 DisplayLabel = 'Formaci'#243'n base' - Alignment = taLeftJustify end item Name = 'Empleados_FORMACION_COMPLE' DataType = datMemo - BlobType = dabtUnknown - DisplayWidth = 0 DisplayLabel = 'Formaci'#243'n complementaria' - Alignment = taLeftJustify end item Name = 'Empleados_FORMACION_RECIBIDA' DataType = datMemo - BlobType = dabtUnknown - DisplayWidth = 0 DisplayLabel = 'Formaci'#243'n recibida' - Alignment = taLeftJustify end item Name = 'Empleados_EXPERIENCIA' DataType = datMemo - BlobType = dabtUnknown - DisplayWidth = 0 DisplayLabel = 'Experiencia' - Alignment = taLeftJustify + end + item + Name = 'Contactos_NOMBRE' + DataType = datString + Size = 255 + Required = True + DisplayLabel = 'Nombre' end> Left = 126 Top = 14 @@ -4993,19 +4083,35 @@ object srvContactos: TsrvContactos Left = 126 Top = 82 DiagramData = - ''#13#10' '#13#10' '#13#10' '#13#10' '#13#10' '#13#10''#13#10 + ''#13#10' '#13#10' '#13#10' '#13#10' '#13#10' '#13#10' '#13#10' '#13#10' '#13#10' '#13#10' '#13#10' '#13#10' ' + + ' '#13#10' '#13#10' '#13#10' '#13#10' '#13#10' '#13#10' '#13#10' '#13#10' '#13#10' '#13#10''#13 + + #10 end object bpContactos: TDABusinessProcessor Schema = schContactos InsertCommandName = 'Insert_Contactos' DeleteCommandName = 'Delete_Contactos' UpdateCommandName = 'Update_Contactos' + RefreshDatasetName = 'Contactos_Refresh' ReferencedDataset = 'Contactos' - ProcessorOptions = [poAutoGenerateRefreshDataset, poPrepareCommands] + ProcessorOptions = [poPrepareCommands] UpdateMode = updWhereKeyOnly Left = 224 Top = 15 @@ -5021,22 +4127,12 @@ object srvContactos: TsrvContactos Left = 224 Top = 79 end - object bpCategoriasContactos: TDABusinessProcessor - Schema = schContactos - InsertCommandName = 'Insert_ContactosCategorias' - DeleteCommandName = 'Delete_ContactosCategorias' - UpdateCommandName = 'Update_ContactosCategorias' - ReferencedDataset = 'ContactosCategorias' - ProcessorOptions = [poAutoGenerateRefreshDataset, poPrepareCommands] - UpdateMode = updWhereKeyOnly - Left = 224 - Top = 143 - end object bpEmpleados: TDABusinessProcessor Schema = schContactos InsertCommandName = 'Insert_Contactos' DeleteCommandName = 'Delete_Contactos' UpdateCommandName = 'Update_Contactos' + RefreshDatasetName = 'Contactos_Refresh' ReferencedDataset = 'Empleados' ProcessorOptions = [poAutoGenerateRefreshDataset, poPrepareCommands] UpdateMode = updWhereKeyOnly @@ -5048,6 +4144,7 @@ object srvContactos: TsrvContactos InsertCommandName = 'Insert_Contactos' DeleteCommandName = 'Delete_Contactos' UpdateCommandName = 'Update_Contactos' + RefreshDatasetName = 'Contactos_Refresh' ReferencedDataset = 'Clientes' ProcessorOptions = [poAutoGenerateRefreshDataset, poPrepareCommands] UpdateMode = updWhereKeyOnly @@ -5059,6 +4156,7 @@ object srvContactos: TsrvContactos InsertCommandName = 'Insert_Contactos' DeleteCommandName = 'Delete_Contactos' UpdateCommandName = 'Update_Contactos' + RefreshDatasetName = 'Contactos_Refresh' ReferencedDataset = 'Proveedores' ProcessorOptions = [poAutoGenerateRefreshDataset, poPrepareCommands] UpdateMode = updWhereKeyOnly @@ -5087,4 +4185,8 @@ object srvContactos: TsrvContactos Left = 344 Top = 207 end + object Bin2DataStreamer: TDABin2DataStreamer + Left = 32 + Top = 80 + end end diff --git a/Source/Modulos/Contactos/Servidor/srvContactos_Impl.pas b/Source/Modulos/Contactos/Servidor/srvContactos_Impl.pas index b96a987a..4babb806 100644 --- a/Source/Modulos/Contactos/Servidor/srvContactos_Impl.pas +++ b/Source/Modulos/Contactos/Servidor/srvContactos_Impl.pas @@ -11,35 +11,34 @@ interface uses {vcl:} Classes, SysUtils, - {RemObjects:} uROClientIntf, uROTypes, uROServer, uROServerIntf, uROSessions, - {Ancestor Implementation:} DARemoteService_Impl, - {Used RODLs:} DataAbstract_Intf, + {RemObjects:} uROXMLIntf, uROClientIntf, uROTypes, uROServer, uROServerIntf, uROSessions, + {Required:} uRORemoteDataModule, + {Ancestor Implementation:} DataAbstractService_Impl, + {Used RODLs:} DataAbstract4_Intf, {Generated:} FactuGES_Intf, uDADataTable, uDABINAdapter, uDAClasses, uDAInterfaces, uDAScriptingProvider, - uDABusinessProcessor; + uDABusinessProcessor, uDADataStreamer, uDABin2DataStreamer; type { TsrvContactos } - TsrvContactos = class(TDARemoteService, IsrvContactos) - BINAdapter: TDABINAdapter; + TsrvContactos = class(TDataAbstractService, IsrvContactos) Diagrams: TDADiagrams; bpContactos: TDABusinessProcessor; bpDatosBancarios: TDABusinessProcessor; - bpCategoriasContactos: TDABusinessProcessor; bpEmpleados: TDABusinessProcessor; bpClientes: TDABusinessProcessor; bpProveedores: TDABusinessProcessor; bpDireccionesContacto: TDABusinessProcessor; bpClientesDescuentos: TDABusinessProcessor; + Bin2DataStreamer: TDABin2DataStreamer; schContactos: TDASchema; DataDictionary: TDADataDictionary; - procedure DARemoteServiceBeforeAcquireConnection(Sender: TDARemoteService; - var ConnectionName: string); procedure DARemoteServiceBeforeGetDatasetData(const Dataset: IDADataset; const IncludeSchema: Boolean; const MaxRecords: Integer); procedure DARemoteServiceCreate(Sender: TObject); + procedure DataAbstractServiceBeforeAcquireConnection(aSender: TObject; + var aConnectionName: string); public - function GetNextAutoInc(const GeneratorName: string): Integer; function GenerateFichaEmpleadoReport(const EmpleadoID: String): Binary; function GenerateEtiquetasReport(const ContactosID: String): Binary; end; @@ -50,9 +49,9 @@ implementation uses {Generated:} FactuGES_Invk, Dialogs, uBizContactosServer, uDataModuleServer, uDatabaseUtils, uUsersManager, - schContactosClient_Intf, uRORemoteDataModule, uBizEmpleadosServer, - uBizClientesServer, uBizProveedoresServer, uRestriccionesUsuarioUtils, - uRptFichasEmpleado_Server, uRptEtiquetasContacto_Server; + schContactosClient_Intf, uBizEmpleadosServer, + uBizClientesServer, uBizProveedoresServer, uRestriccionesUsuarioUtils; +// uRptFichasEmpleado_Server, uRptEtiquetasContacto_Server; procedure Create_srvContactos(out anInstance : IUnknown); begin @@ -61,12 +60,6 @@ end; { TsrvContactos } -procedure TsrvContactos.DARemoteServiceBeforeAcquireConnection( - Sender: TDARemoteService; var ConnectionName: string); -begin - ConnectionName := dmServer.ConnectionName; -end; - procedure TsrvContactos.DARemoteServiceBeforeGetDatasetData( const Dataset: IDADataset; const IncludeSchema: Boolean; const MaxRecords: Integer); @@ -76,8 +69,7 @@ begin (DataSet.Name <> nme_GruposCliente) and (DataSet.Name <> nme_GruposProveedor) and (DataSet.Name <> nme_GruposEmpleado) and - (DataSet.Name <> nme_ClientesDescuentos) and - (DataSet.Name <> nme_ContactosCategorias) then + (DataSet.Name <> nme_ClientesDescuentos) then begin { Aquí se asegura que el usuario sólo accede a contactos de las empresas a las que tiene permiso para acceder @@ -96,33 +88,37 @@ begin bpProveedores.BusinessRulesID := BIZ_SERVER_PROVEEDOR; end; -function TsrvContactos.GenerateEtiquetasReport(const ContactosID: String): Binary; -var - AReportGenerator : TRptEtiquetasContacto; +procedure TsrvContactos.DataAbstractServiceBeforeAcquireConnection( + aSender: TObject; var aConnectionName: string); begin - AReportGenerator := TRptEtiquetasContacto.Create(nil); + ConnectionName := dmServer.ConnectionName; +end; + +function TsrvContactos.GenerateEtiquetasReport(const ContactosID: String): Binary; +//var +// AReportGenerator : TRptEtiquetasContacto; +begin +{ AReportGenerator := TRptEtiquetasContacto.Create(nil); try Result := AReportGenerator.GenerarInforme(ContactosID); finally FreeAndNIL(AReportGenerator); end; +} end; function TsrvContactos.GenerateFichaEmpleadoReport(const EmpleadoID: String): Binary; -var - AReportGenerator : TRptFichasEmpleado; +//var +// AReportGenerator : TRptFichasEmpleado; begin +{ AReportGenerator := TRptFichasEmpleado.Create(nil); try Result := AReportGenerator.GenerarFicha(EmpleadoID); finally FreeAndNIL(AReportGenerator); end; -end; - -function TsrvContactos.GetNextAutoInc(const GeneratorName: string): Integer; -begin - Result := uDatabaseUtils.GetNextAutoInc(GeneratorName) +} end; initialization diff --git a/Source/Modulos/Contactos/Test/Contactos_Tests.dproj b/Source/Modulos/Contactos/Test/Contactos_Tests.dproj new file mode 100644 index 00000000..e90334bc --- /dev/null +++ b/Source/Modulos/Contactos/Test/Contactos_Tests.dproj @@ -0,0 +1,603 @@ + + + {73787cd4-7d26-4f01-9ed5-104e78c03cbc} + Contactos_Tests.dpr + Debug + AnyCPU + true + Base;GUIBase;ApplicationBase;Contactos_model;Contactos_controller;Contactos_view + DCC32 + ..\..\..\Output\Cliente\Contactos_Tests.exe + + + 7.0 + False + False + 0 + 3 + ..\..\..\Output\Cliente + .\ + .\ + .\ + ..\..\Lib + ..\..\..\Lib;..\..\Lib + ..\..\..\Lib;..\..\Lib + ..\..\..\Lib;..\..\Lib + ..\..\..\Lib;..\..\Lib + _CONSOLE_TESTRUNNER;EUREKALOG;EUREKALOG_VER5;RELEASE + + + 7.0 + 3 + ..\..\..\Output\Cliente + .\ + .\ + .\ + ..\..\Lib + ..\..\..\Lib;..\..\Lib + ..\..\..\Lib;..\..\Lib + ..\..\..\Lib;..\..\Lib + ..\..\..\Lib;..\..\Lib + _CONSOLE_TESTRUNNER;EUREKALOG;DEBUG;EUREKALOG_VER6 + + + Delphi.Personality + + + + False + True + False + + + True + False + 1 + 0 + 0 + 0 + False + False + False + False + False + 3082 + 1252 + + + + Contactos (Test) + 1.0.0.0 + + + + + + 1.0.0.0 + + + + Contactos_Tests.dpr + + + + + + + + + + + + + + Internet Explorer Hosting Support Package + CodeGear Control Panel Applet Package + CodeGear WebSnap Components + CodeGear SOAP Components + Microsoft Office XP Sample Automation Server Wrapper Components + VCL for the Web Design Package for CodeGear RAD Studio + Microsoft Office 2000 Sample Automation Server Wrapper Components + CodeGear C++Builder Internet Explorer 5 Components Package + Borland Sample Controls Design Time Package + CodeGear C++Builder Office 2000 Servers Package + CodeGear C++Builder Office XP Servers Package + + + + + + + MainSource + + + + +
HostMainForm
+
+
+
+ + diff --git a/Source/Modulos/Contactos/Views/Contactos_view.dpk b/Source/Modulos/Contactos/Views/Contactos_view.dpk index 5959ca63..ca77ad23 100644 --- a/Source/Modulos/Contactos/Views/Contactos_view.dpk +++ b/Source/Modulos/Contactos/Views/Contactos_view.dpk @@ -22,74 +22,21 @@ package Contactos_view; {$WRITEABLECONST OFF} {$MINENUMSIZE 1} {$IMAGEBASE $400000} -{$IMPLICITBUILD OFF} +{$IMPLICITBUILD ON} requires rtl, vcl, - dbrtl, - vcldb, - cxLibraryD10, - dxThemeD10, - cxEditorsD10, - cxDataD10, - vcljpg, - cxGridD10, - cxPageControlD10, - cxExtEditorsD10, - vclx, - cxExportD10, - tbx_d10, - tb2k_d10, - dsnap, - adortl, - dxLayoutControlD10, - dxComnD10, - dxPSCoreD10, - dxPScxCommonD10, - dxPSLnksD10, - designide, - xmlrtl, - vclactnband, - vclshlctrls, - dxPScxGridLnkD10, - dclcxLibraryD10, - JvCoreD10R, - Jcl, - JclVcl, - JvSystemD10R, - JvStdCtrlsD10R, - JvAppFrmD10R, - JvPageCompsD10R, - PNG_D10, - PngComponentsD10, - GUISDK_D10, - ccpack10, - cfpack_d10, - DataAbstract_D10, Base, GUIBase, + ApplicationBase, FormasPago_model, FormasPago_controller, TiposIVA_model, TiposIVA_controller, Contactos_model, Contactos_controller, - JvCtrlsD10R, - JvGlobusD10R, - VclSmp, - bdertl, - vclie, - JvCustomD10R, - frx10, - fs10, - fqb100, - frxe10, - frxTee10, - fsTee10, - tee, - teeui, - teedb; + JvGlobusD11R; contains uContactosViewRegister in 'uContactosViewRegister.pas', diff --git a/Source/Modulos/Contactos/Views/Contactos_view.dpk.bak b/Source/Modulos/Contactos/Views/Contactos_view.dpk.bak new file mode 100644 index 00000000..a49e9cc0 --- /dev/null +++ b/Source/Modulos/Contactos/Views/Contactos_view.dpk.bak @@ -0,0 +1,75 @@ +package Contactos_view; + +{$R *.res} +{$ALIGN 8} +{$ASSERTIONS ON} +{$BOOLEVAL OFF} +{$DEBUGINFO ON} +{$EXTENDEDSYNTAX ON} +{$IMPORTEDDATA ON} +{$IOCHECKS ON} +{$LOCALSYMBOLS ON} +{$LONGSTRINGS ON} +{$OPENSTRINGS ON} +{$OPTIMIZATION ON} +{$OVERFLOWCHECKS OFF} +{$RANGECHECKS OFF} +{$REFERENCEINFO ON} +{$SAFEDIVIDE OFF} +{$STACKFRAMES OFF} +{$TYPEDADDRESS OFF} +{$VARSTRINGCHECKS ON} +{$WRITEABLECONST OFF} +{$MINENUMSIZE 1} +{$IMAGEBASE $400000} +{$IMPLICITBUILD OFF} + +requires + rtl, + vcl, + Base, + GUIBase, + FormasPago_model, + FormasPago_controller, + TiposIVA_model, + TiposIVA_controller, + Contactos_model, + Contactos_controller, + JvGlobusD11R; + +contains + uContactosViewRegister in 'uContactosViewRegister.pas', + uViewContactos in 'uViewContactos.pas' {frViewContactos: TCustomView}, + uViewClientes in 'uViewClientes.pas' {frViewClientes: TCustomView}, + uEditorContactos in 'uEditorContactos.pas' {fEditorContactos: TCustomEditor}, + uEditorClientes in 'uEditorClientes.pas' {fEditorClientes: TCustomEditor}, + uViewContacto in 'uViewContacto.pas' {frViewContacto: TCustomView}, + uEditorCliente in 'uEditorCliente.pas' {fEditorCliente: TCustomEditor}, + uEditorContacto in 'uEditorContacto.pas' {fEditorContacto: TCustomEditor}, + uViewCliente in 'uViewCliente.pas' {frViewCliente: TCustomView}, + uViewDatosYSeleccionProveedor in 'uViewDatosYSeleccionProveedor.pas' {frViewDatosYSeleccionProveedor: TFrame}, + uViewProveedores in 'uViewProveedores.pas' {frViewProveedores: TCustomView}, + uViewEmpleados in 'uViewEmpleados.pas' {frViewEmpleados: TCustomView}, + uEditorProveedores in 'uEditorProveedores.pas' {fEditorProveedores: TCustomEditor}, + uViewProveedor in 'uViewProveedor.pas' {frViewProveedor: TCustomView}, + uViewEmpleado in 'uViewEmpleado.pas' {frViewEmpleado: TCustomView}, + uEditorProveedor in 'uEditorProveedor.pas' {fEditorProveedor: TCustomEditor}, + uEditorElegirClientes in 'uEditorElegirClientes.pas' {fEditorElegirClientes: TCustomEditor}, + uViewDatosYSeleccionCliente in 'uViewDatosYSeleccionCliente.pas' {frViewDatosYSeleccionCliente: TFrame}, + uEditorElegirProveedores in 'uEditorElegirProveedores.pas' {fEditorElegirProveedores: TCustomEditor}, + uViewDireccionesEntrega in 'uViewDireccionesEntrega.pas' {frViewDireccionesEntrega: TFrame}, + uViewClienteDescuentos in 'uViewClienteDescuentos.pas' {frViewClienteDescuentos: TFrame}, + uEditorDireccion in 'uEditorDireccion.pas' {fEditorDireccion}, + uEditorElegirDireccionEntrega in 'uEditorElegirDireccionEntrega.pas' {fEditorElegirDireccionEntrega: TfEditorElegirDireccionEntrega}, + uViewContactoDatosBancarios in 'uViewContactoDatosBancarios.pas' {frViewClienteDatosBancarios: TFrame}, + uViewProveedorDatosComerciales in 'uViewProveedorDatosComerciales.pas' {frViewProveedorDatosComerciales: TFrame}, + uViewClienteDatosComerciales in 'uViewClienteDatosComerciales.pas' {frViewClienteDatosComerciales: TFrame}, + uEditorGruposCliente in 'uEditorGruposCliente.pas' {fEditorGruposCliente: TCustomEditor}, + uEditorEmpleado in 'uEditorEmpleado.pas' {fEditorEmpleado: TCustomEditor}, + uEditorEmpleados in 'uEditorEmpleados.pas' {fEditorEmpleados: TCustomEditor}, + uEditorGruposProveedor in 'uEditorGruposProveedor.pas' {fEditorGruposProveedor: TCustomEditor}, + uEditorGruposEmpleado in 'uEditorGruposEmpleado.pas' {fEditorGruposEmpleado: TCustomEditor}, + uEditorFichasEmpleadoReport in 'uEditorFichasEmpleadoReport.pas' {fEditorFichasEmpleadoReport: TCustomEditor}, + uEditorEtiquetasContactosReport in 'uEditorEtiquetasContactosReport.pas' {fEditorEtiquetasContactosReport: TCustomEditor}; + +end. diff --git a/Source/Modulos/Contactos/Views/Contactos_view.dproj b/Source/Modulos/Contactos/Views/Contactos_view.dproj new file mode 100644 index 00000000..bb02c4af --- /dev/null +++ b/Source/Modulos/Contactos/Views/Contactos_view.dproj @@ -0,0 +1,645 @@ + + + + {3a12ff5e-75c6-4e1e-bc5c-b6b9010ba595} + Contactos_view.dpk + Debug + AnyCPU + DCC32 + ..\..\..\..\Output\Debug\Cliente\Contactos_view.bpl + + + 7.0 + False + False + 0 + 3 + .\ + .\ + .\ + ..\..\..\..\Output\Debug\Cliente + ..\..\Lib + ..\..\..\Lib;..\..\Lib + ..\..\..\Lib;..\..\Lib + ..\..\..\Lib;..\..\Lib + ..\..\..\Lib;..\..\Lib + RELEASE + + + 7.0 + 3 + .\ + .\ + .\ + ..\..\..\..\Output\Debug\Cliente + ..\..\Lib + ..\..\..\Lib;..\..\Lib + ..\..\..\Lib;..\..\Lib + ..\..\..\Lib;..\..\Lib + ..\..\..\Lib;..\..\Lib + + + Delphi.Personality + Package + +FalseTrueFalseTrueFalseFalseTrueFalse1000FalseFalseFalseFalseFalse308212521.0.0.01.0.0.0Contactos_view.dpk + + + + + MainSource + + + + + + + + + + + + + + + +
fEditorCliente
+
+ +
fEditorClientes
+
+ +
fEditorContacto
+
+ +
fEditorContactos
+
+ +
fEditorDireccion
+
+ +
fEditorElegirClientes
+
+ +
fEditorElegirDireccionEntrega
+
+ +
fEditorElegirProveedores
+
+ +
fEditorEmpleado
+
+ +
fEditorEmpleados
+
+ +
fEditorEtiquetasContactosReport
+
+ +
fEditorFichasEmpleadoReport
+
+ +
fEditorGruposCliente
+
+ +
fEditorGruposEmpleado
+
+ +
fEditorGruposProveedor
+
+ +
fEditorProveedor
+
+ +
fEditorProveedores
+
+ +
frViewCliente
+
+ +
frViewClienteDatosComerciales
+
+ +
frViewClienteDescuentos
+
+ +
frViewClientes
+
+ +
frViewContacto
+
+ +
frViewClienteDatosBancarios
+
+ +
frViewContactos
+
+ +
frViewDatosYSeleccionCliente
+
+ +
frViewDatosYSeleccionProveedor
+
+ +
frViewDireccionesEntrega
+
+ +
frViewEmpleado
+
+ +
frViewEmpleados
+
+ +
frViewProveedor
+
+ +
frViewProveedorDatosComerciales
+
+ +
frViewProveedores
+
+
+
+ diff --git a/Source/Modulos/Contactos/Views/Contactos_view.drc b/Source/Modulos/Contactos/Views/Contactos_view.drc index 7642ac97..3413fedc 100644 --- a/Source/Modulos/Contactos/Views/Contactos_view.drc +++ b/Source/Modulos/Contactos/Views/Contactos_view.drc @@ -1,5 +1,5 @@ -/* VER180 - Generated by the Borland Delphi Pascal Compiler +/* VER185 + Generated by the CodeGear Delphi Pascal Compiler because -GD or --drc was supplied to the compiler. This file contains compiler-generated resources that @@ -12,3 +12,37 @@ STRINGTABLE BEGIN END +/* C:\Codigo Tecsitel\Source\Modulos\Contactos\Views\uViewContactos.dfm */ +/* C:\Codigo Tecsitel\Source\Modulos\Contactos\Views\uEditorContactos.dfm */ +/* C:\Codigo Tecsitel\Source\Modulos\Contactos\Views\uViewClientes.dfm */ +/* C:\Codigo Tecsitel\Source\Modulos\Contactos\Views\uEditorClientes.dfm */ +/* C:\Codigo Tecsitel\Source\Modulos\Contactos\Views\uViewProveedores.dfm */ +/* C:\Codigo Tecsitel\Source\Modulos\Contactos\Views\uEditorProveedores.dfm */ +/* C:\Codigo Tecsitel\Source\Modulos\Contactos\Views\uViewEmpleados.dfm */ +/* C:\Codigo Tecsitel\Source\Modulos\Contactos\Views\uEditorEmpleados.dfm */ +/* C:\Codigo Tecsitel\Source\Modulos\Contactos\Views\uEditorElegirClientes.dfm */ +/* C:\Codigo Tecsitel\Source\Modulos\Contactos\Views\uViewContacto.dfm */ +/* C:\Codigo Tecsitel\Source\Modulos\Contactos\Views\uViewContactoDatosBancarios.dfm */ +/* C:\Codigo Tecsitel\Source\Modulos\Contactos\Views\uEditorContacto.dfm */ +/* C:\Codigo Tecsitel\Source\Modulos\Contactos\Views\uViewCliente.dfm */ +/* C:\Codigo Tecsitel\Source\Modulos\Contactos\Views\uViewEmpleado.dfm */ +/* C:\Codigo Tecsitel\Source\Modulos\Contactos\Views\uViewDireccionesEntrega.dfm */ +/* C:\Codigo Tecsitel\Source\Modulos\Contactos\Views\uViewClienteDescuentos.dfm */ +/* C:\Codigo Tecsitel\Source\Modulos\Contactos\Views\uViewClienteDatosComerciales.dfm */ +/* C:\Codigo Tecsitel\Source\Modulos\Contactos\Views\uEditorCliente.dfm */ +/* C:\Codigo Tecsitel\Source\Modulos\Contactos\Views\uViewProveedor.dfm */ +/* C:\Codigo Tecsitel\Source\Modulos\Contactos\Views\uViewProveedorDatosComerciales.dfm */ +/* C:\Codigo Tecsitel\Source\Modulos\Contactos\Views\uEditorProveedor.dfm */ +/* C:\Codigo Tecsitel\Source\Modulos\Contactos\Views\uEditorEmpleado.dfm */ +/* C:\Codigo Tecsitel\Source\Modulos\Contactos\Views\uEditorElegirProveedores.dfm */ +/* C:\Codigo Tecsitel\Source\Modulos\Contactos\Views\uEditorDireccion.dfm */ +/* C:\Codigo Tecsitel\Source\Modulos\Contactos\Views\uEditorElegirDireccionEntrega.dfm */ +/* C:\Codigo Tecsitel\Source\Modulos\Contactos\Views\uEditorGruposCliente.dfm */ +/* C:\Codigo Tecsitel\Source\Modulos\Contactos\Views\uEditorGruposProveedor.dfm */ +/* C:\Codigo Tecsitel\Source\Modulos\Contactos\Views\uEditorGruposEmpleado.dfm */ +/* C:\Codigo Tecsitel\Source\Modulos\Contactos\Views\uEditorFichasEmpleadoReport.dfm */ +/* C:\Codigo Tecsitel\Source\Modulos\Contactos\Views\uEditorEtiquetasContactosReport.dfm */ +/* C:\Codigo Tecsitel\Source\Modulos\Contactos\Views\uViewDatosYSeleccionProveedor.dfm */ +/* C:\Codigo Tecsitel\Source\Modulos\Contactos\Views\uViewDatosYSeleccionCliente.dfm */ +/* C:\Codigo Tecsitel\Source\Modulos\Contactos\Views\Contactos_view.res */ +/* C:\Codigo Tecsitel\Source\Modulos\Contactos\Views\Contactos_view.drf */ diff --git a/Source/Modulos/Contactos/Views/Contactos_view.identcache b/Source/Modulos/Contactos/Views/Contactos_view.identcache new file mode 100644 index 00000000..3ac0a200 Binary files /dev/null and b/Source/Modulos/Contactos/Views/Contactos_view.identcache differ diff --git a/Source/Modulos/Contactos/Views/Contactos_view.rc b/Source/Modulos/Contactos/Views/Contactos_view.rc index e69de29b..153736af 100644 --- a/Source/Modulos/Contactos/Views/Contactos_view.rc +++ b/Source/Modulos/Contactos/Views/Contactos_view.rc @@ -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 diff --git a/Source/Modulos/Contactos/Views/Contactos_view.res b/Source/Modulos/Contactos/Views/Contactos_view.res index 36f26e23..1641339f 100644 Binary files a/Source/Modulos/Contactos/Views/Contactos_view.res and b/Source/Modulos/Contactos/Views/Contactos_view.res differ diff --git a/Source/Modulos/Contactos/Views/uEditorClientes.pas b/Source/Modulos/Contactos/Views/uEditorClientes.pas index 1ee94a2f..bab316d5 100644 --- a/Source/Modulos/Contactos/Views/uEditorClientes.pas +++ b/Source/Modulos/Contactos/Views/uEditorClientes.pas @@ -12,7 +12,7 @@ uses uViewBase, uViewBarraSeleccion, ExtCtrls, pngimage, JvComponentBase, uIEditorClientes, uViewGridBase, uViewGrid, uViewContactos, uViewClientes, - TBXStatusBars, JvExComCtrls, JvStatusBar, JSDialog; + TBXStatusBars, JvExComCtrls, JvStatusBar, JSDialog, uDAInterfaces; type TfEditorClientes = class(TfEditorContactos, IEditorClientes) @@ -159,7 +159,8 @@ procedure TfEditorClientes.PonerTitulos(const ATitulo: string); var FTitulo : String; begin - FTitulo := 'Lista de clientes - ' + dmUsuarios.EmpresaActual.NOMBRE; + // OJOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO +// FTitulo := 'Lista de clientes - ' + dmUsuarios.EmpresaActual.NOMBRE; inherited PonerTitulos(FTitulo); end; diff --git a/Source/Modulos/Contactos/Views/uEditorContacto.dfm b/Source/Modulos/Contactos/Views/uEditorContacto.dfm index 432d0a42..49fce0d6 100644 --- a/Source/Modulos/Contactos/Views/uEditorContacto.dfm +++ b/Source/Modulos/Contactos/Views/uEditorContacto.dfm @@ -7,7 +7,7 @@ inherited fEditorContacto: TfEditorContacto ClientWidth = 632 Scaled = False ExplicitWidth = 640 - ExplicitHeight = 240 + ExplicitHeight = 488 PixelsPerInch = 96 TextHeight = 13 inherited JvNavPanelHeader: TJvNavPanelHeader diff --git a/Source/Modulos/Contactos/Views/uEditorContacto.pas b/Source/Modulos/Contactos/Views/uEditorContacto.pas index 927b27ae..047966c2 100644 --- a/Source/Modulos/Contactos/Views/uEditorContacto.pas +++ b/Source/Modulos/Contactos/Views/uEditorContacto.pas @@ -13,7 +13,8 @@ uses JvAppStorage, JvAppRegistryStorage, JvFormPlacement, JvComponentBase, uIEditorContacto, uContactosController, TBXStatusBars, JvExComCtrls, - JvStatusBar, uViewContactoDatosBancarios, dxLayoutLookAndFeels, JvLabel; + JvStatusBar, uViewContactoDatosBancarios, dxLayoutLookAndFeels, JvLabel, + uDAInterfaces; type TfEditorContacto = class(TfEditorDBItem, IEditorContacto) @@ -101,7 +102,8 @@ begin inherited PonerTitulos(FTitulo); - Self.Caption := FTitulo + ' (' + dmUsuarios.EmpresaActual.NOMBRE + ')'; +// OJOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO +// Self.Caption := FTitulo + ' (' + dmUsuarios.EmpresaActual.NOMBRE + ')'; end; procedure TfEditorContacto.SetContacto(const Value: IBizContacto); diff --git a/Source/Modulos/Contactos/Views/uEditorContactos.dfm b/Source/Modulos/Contactos/Views/uEditorContactos.dfm index b46aee58..55901294 100644 --- a/Source/Modulos/Contactos/Views/uEditorContactos.dfm +++ b/Source/Modulos/Contactos/Views/uEditorContactos.dfm @@ -2,8 +2,7 @@ inherited fEditorContactos: TfEditorContactos Left = 285 Top = 448 Caption = 'Lista de contactos' - ExplicitWidth = 320 - ExplicitHeight = 240 + ExplicitHeight = 471 PixelsPerInch = 96 TextHeight = 13 inherited JvNavPanelHeader: TJvNavPanelHeader diff --git a/Source/Modulos/Contactos/Views/uEditorContactos.pas b/Source/Modulos/Contactos/Views/uEditorContactos.pas index 97aad4a2..92521459 100644 --- a/Source/Modulos/Contactos/Views/uEditorContactos.pas +++ b/Source/Modulos/Contactos/Views/uEditorContactos.pas @@ -12,7 +12,8 @@ uses JvAppRegistryStorage, JvFormPlacement, ExtCtrls, uCustomView, uViewBase, uViewBarraSeleccion, JvComponentBase, uContactosController, - uIEditorContactos, pngimage, TBXStatusBars, JvExComCtrls, JvStatusBar; + uIEditorContactos, pngimage, TBXStatusBars, JvExComCtrls, JvStatusBar, + uDAInterfaces; type TfEditorContactos = class(TfEditorGridBase, IEditorContactos) @@ -45,7 +46,7 @@ implementation uses uCustomEditor, uDataModuleContactos, - uEditorDBBase, uDataModuleUsuarios, + uEditorDBBase, uFactuGES_App, cxGrid, cxGridCustomTableView, uDBSelectionListUtils; {$R *.dfm} @@ -100,8 +101,9 @@ var FTitulo : String; begin FTitulo := ATitulo; - if FTitulo = '' then - FTitulo := 'Lista de contactos - ' + dmUsuarios.EmpresaActual.NOMBRE; + // OJOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO +{ if FTitulo = '' then + FTitulo := 'Lista de contactos - ' + dmUsuarios.EmpresaActual.NOMBRE;} inherited PonerTitulos(FTitulo); end; diff --git a/Source/Modulos/Contactos/Views/uEditorEmpleados.dfm b/Source/Modulos/Contactos/Views/uEditorEmpleados.dfm index 0ecd12d8..09805033 100644 --- a/Source/Modulos/Contactos/Views/uEditorEmpleados.dfm +++ b/Source/Modulos/Contactos/Views/uEditorEmpleados.dfm @@ -1,6 +1,5 @@ inherited fEditorEmpleados: TfEditorEmpleados Caption = 'fEditorEmpleados' - ExplicitWidth = 551 ExplicitHeight = 478 PixelsPerInch = 96 TextHeight = 13 diff --git a/Source/Modulos/Contactos/Views/uEditorEmpleados.pas b/Source/Modulos/Contactos/Views/uEditorEmpleados.pas index 18daf1b0..83f4c208 100644 --- a/Source/Modulos/Contactos/Views/uEditorEmpleados.pas +++ b/Source/Modulos/Contactos/Views/uEditorEmpleados.pas @@ -10,7 +10,7 @@ uses TB2ExtItems, TBXExtItems, TBX, TB2Item, TB2Dock, TB2Toolbar, ExtCtrls, JvExControls, JvComponent, JvNavigationPane, uViewGridBase, uViewGrid, uViewContactos, uViewEmpleados, uIEditorEmpleados, pngimage, TBXStatusBars, - JvExComCtrls, JvStatusBar, JSDialog, uContactosController; + JvExComCtrls, JvStatusBar, JSDialog, uContactosController, uDAInterfaces; type TfEditorEmpleados = class(TfEditorContactos, IEditorEmpleados) @@ -139,7 +139,8 @@ procedure TfEditorEmpleados.PonerTitulos(const ATitulo: string); var FTitulo : String; begin - FTitulo := 'Lista de empleados - ' + dmUsuarios.EmpresaActual.NOMBRE; +// ojooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooo +// FTitulo := 'Lista de empleados - ' + dmUsuarios.EmpresaActual.NOMBRE; inherited PonerTitulos(FTitulo); end; diff --git a/Source/Modulos/Contactos/Views/uEditorEtiquetasContactosReport.dfm b/Source/Modulos/Contactos/Views/uEditorEtiquetasContactosReport.dfm index 30014cbe..6d9c73c1 100644 --- a/Source/Modulos/Contactos/Views/uEditorEtiquetasContactosReport.dfm +++ b/Source/Modulos/Contactos/Views/uEditorEtiquetasContactosReport.dfm @@ -1,6 +1,7 @@ inherited fEditorEtiquetasContactosPreview: TfEditorEtiquetasContactosPreview Caption = 'Previsualizar la factura' ExplicitWidth = 803 + ExplicitHeight = 240 PixelsPerInch = 96 TextHeight = 13 inherited JvNavPanelHeader: TJvNavPanelHeader diff --git a/Source/Modulos/Contactos/Views/uEditorEtiquetasContactosReport.pas b/Source/Modulos/Contactos/Views/uEditorEtiquetasContactosReport.pas index 79bbab27..66787211 100644 --- a/Source/Modulos/Contactos/Views/uEditorEtiquetasContactosReport.pas +++ b/Source/Modulos/Contactos/Views/uEditorEtiquetasContactosReport.pas @@ -5,7 +5,7 @@ interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, uEditorPreview, frxExportImage, frxExportPDF, frxDCtrl, frxClass, - frxDMPExport, frxGradient, frxChBox, frxCross, frxRich, frxChart, frxOLE, + frxDMPExport, frxGradient, frxChBox, frxCross, frxRich, frxOLE, frxBarcode, JvAppStorage, JvAppRegistryStorage, JvComponentBase, JvFormPlacement, ImgList, PngImageList, StdActns, ActnList, ComCtrls, TB2ExtItems, TBXExtItems, TBX, TB2Item, TB2Dock, TB2Toolbar, pngimage, diff --git a/Source/Modulos/Contactos/Views/uEditorFichasEmpleadoReport.dfm b/Source/Modulos/Contactos/Views/uEditorFichasEmpleadoReport.dfm index 8a69c09e..5ab584a3 100644 --- a/Source/Modulos/Contactos/Views/uEditorFichasEmpleadoReport.dfm +++ b/Source/Modulos/Contactos/Views/uEditorFichasEmpleadoReport.dfm @@ -1,12 +1,14 @@ inherited fEditorFichasEmpleadoPreview: TfEditorFichasEmpleadoPreview Caption = 'Previsualizar la factura' ExplicitWidth = 803 + ExplicitHeight = 240 PixelsPerInch = 96 TextHeight = 13 inherited JvNavPanelHeader: TJvNavPanelHeader ExplicitWidth = 795 inherited Image1: TImage Left = 768 + ExplicitLeft = 768 end end inherited StatusBar: TJvStatusBar diff --git a/Source/Modulos/Contactos/Views/uEditorFichasEmpleadoReport.pas b/Source/Modulos/Contactos/Views/uEditorFichasEmpleadoReport.pas index 72095b63..21e843f6 100644 --- a/Source/Modulos/Contactos/Views/uEditorFichasEmpleadoReport.pas +++ b/Source/Modulos/Contactos/Views/uEditorFichasEmpleadoReport.pas @@ -5,7 +5,7 @@ interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, uEditorPreview, frxExportImage, frxExportPDF, frxDCtrl, frxClass, - frxDMPExport, frxGradient, frxChBox, frxCross, frxRich, frxChart, frxOLE, + frxDMPExport, frxGradient, frxChBox, frxCross, frxRich, frxOLE, frxBarcode, JvAppStorage, JvAppRegistryStorage, JvComponentBase, JvFormPlacement, ImgList, PngImageList, StdActns, ActnList, ComCtrls, TB2ExtItems, TBXExtItems, TBX, TB2Item, TB2Dock, TB2Toolbar, pngimage, diff --git a/Source/Modulos/Contactos/Views/uEditorProveedor.dfm b/Source/Modulos/Contactos/Views/uEditorProveedor.dfm index bfc66ea5..e3ca1eb8 100644 --- a/Source/Modulos/Contactos/Views/uEditorProveedor.dfm +++ b/Source/Modulos/Contactos/Views/uEditorProveedor.dfm @@ -3,7 +3,7 @@ inherited fEditorProveedor: TfEditorProveedor ClientHeight = 590 ClientWidth = 648 ExplicitWidth = 656 - ExplicitHeight = 624 + ExplicitHeight = 617 PixelsPerInch = 96 TextHeight = 13 inherited JvNavPanelHeader: TJvNavPanelHeader @@ -148,6 +148,24 @@ inherited fEditorProveedor: TfEditorProveedor ExplicitWidth = 310 Width = 310 end + inherited cxDBCheckBox2: TcxDBCheckBox + Top = 189 + ExplicitTop = 189 + ExplicitWidth = 326 + Width = 326 + end + inherited eCertificaciones: TcxDBTextEdit + Top = 216 + ExplicitTop = 216 + ExplicitWidth = 227 + Width = 227 + end + inherited cbGrupoProveedor: TcxDBComboBox + Top = 138 + ExplicitTop = 138 + ExplicitWidth = 227 + Width = 227 + end inherited eTlfParticular: TcxDBTextEdit Left = 486 Top = 57 @@ -164,6 +182,18 @@ inherited fEditorProveedor: TfEditorProveedor ExplicitWidth = 172 Width = 172 end + inherited eDescripcionProveedor: TcxDBTextEdit + Top = 84 + ExplicitTop = 84 + ExplicitWidth = 221 + Width = 221 + end + inherited eCodigoAsignado: TcxDBTextEdit + Top = 111 + ExplicitTop = 111 + ExplicitWidth = 221 + Width = 221 + end inherited eTlfMovil: TcxDBTextEdit Left = 486 Top = 84 @@ -186,24 +216,6 @@ inherited fEditorProveedor: TfEditorProveedor ExplicitWidth = 263 Width = 263 end - inherited cxDBCheckBox2: TcxDBCheckBox - Top = 189 - ExplicitTop = 189 - ExplicitWidth = 326 - Width = 326 - end - inherited eCertificaciones: TcxDBTextEdit - Top = 216 - ExplicitTop = 216 - ExplicitWidth = 227 - Width = 227 - end - inherited cbGrupoProveedor: TcxDBComboBox - Top = 138 - ExplicitTop = 138 - ExplicitWidth = 227 - Width = 227 - end inherited eNIFCIF: TcxDBTextEdit Left = 210 Top = 30 @@ -230,18 +242,6 @@ inherited fEditorProveedor: TfEditorProveedor ExplicitWidth = 165 Width = 165 end - inherited eDescripcionProveedor: TcxDBTextEdit - Top = 84 - ExplicitTop = 84 - ExplicitWidth = 221 - Width = 221 - end - inherited eCodigoAsignado: TcxDBTextEdit - Top = 111 - ExplicitTop = 111 - ExplicitWidth = 221 - Width = 221 - end inherited ePaginaWeb: TcxDBHyperLinkEdit Left = 486 Top = 217 @@ -259,8 +259,8 @@ inherited fEditorProveedor: TfEditorProveedor inherited ePersonaContacto: TcxDBTextEdit Top = 267 ExplicitTop = 267 - ExplicitWidth = 256 - Width = 256 + ExplicitWidth = 253 + Width = 253 end end end @@ -277,10 +277,6 @@ inherited fEditorProveedor: TfEditorProveedor Width = 640 LookAndFeel = dxLayoutOfficeLookAndFeel ExplicitWidth = 640 - inherited eEntidad: TcxDBTextEdit - ExplicitWidth = 114 - Width = 114 - end inherited eSucursal: TcxDBTextEdit Left = 325 ExplicitLeft = 325 @@ -322,50 +318,36 @@ inherited fEditorProveedor: TfEditorProveedor LookAndFeel = dxLayoutOfficeLookAndFeel ExplicitWidth = 640 inherited Label1: TLabel - Left = 416 + Left = 415 Top = 30 - Width = 190 - ExplicitLeft = 416 + ExplicitLeft = 415 ExplicitTop = 30 - ExplicitWidth = 190 end inherited cbRegimenIVA: TcxDBComboBox Top = 30 ExplicitTop = 30 - ExplicitWidth = 121 - Width = 121 end inherited cbFormaPago: TcxDBLookupComboBox Top = 57 ExplicitTop = 57 - ExplicitWidth = 121 - Width = 121 end inherited bFormasPago: TButton - Left = 256 Top = 57 - ExplicitLeft = 256 ExplicitTop = 57 end inherited eIVA: TcxDBLookupComboBox Top = 84 ExplicitTop = 84 - ExplicitWidth = 121 - Width = 121 end inherited bTiposIVA: TButton - Left = 256 Top = 84 - ExplicitLeft = 256 ExplicitTop = 84 end inherited eDescuento: TcxDBSpinEdit - Left = 460 + Left = 459 Top = 62 - ExplicitLeft = 460 + ExplicitLeft = 459 ExplicitTop = 62 - ExplicitWidth = 73 - Width = 73 end end end diff --git a/Source/Modulos/Contactos/Views/uEditorProveedor.pas b/Source/Modulos/Contactos/Views/uEditorProveedor.pas index 4b48ad21..98f7f0f0 100644 --- a/Source/Modulos/Contactos/Views/uEditorProveedor.pas +++ b/Source/Modulos/Contactos/Views/uEditorProveedor.pas @@ -13,7 +13,8 @@ uses uIEditorProveedor, cxControls, cxContainer, cxEdit, cxTextEdit, cxMaskEdit, cxSpinEdit, cxDBEdit, pngimage, TBXStatusBars, JvExComCtrls, JvStatusBar, dxLayoutLookAndFeels, uViewContactoDatosBancarios, uBizContactos, - uViewProveedorDatosComerciales, uViewDetallesGenerico, uViewDireccionesEntrega; + uViewProveedorDatosComerciales, uViewDetallesGenerico, uViewDireccionesEntrega, + uDAInterfaces; type TfEditorProveedor = class(TfEditorContacto, IEditorProveedor) diff --git a/Source/Modulos/Contactos/Views/uEditorProveedores.dfm b/Source/Modulos/Contactos/Views/uEditorProveedores.dfm index 334aa1ef..923b8875 100644 --- a/Source/Modulos/Contactos/Views/uEditorProveedores.dfm +++ b/Source/Modulos/Contactos/Views/uEditorProveedores.dfm @@ -1,5 +1,7 @@ inherited fEditorProveedores: TfEditorProveedores Caption = 'fEditorProveedores' + ExplicitWidth = 320 + ExplicitHeight = 240 PixelsPerInch = 96 TextHeight = 13 inherited JvNavPanelHeader: TJvNavPanelHeader diff --git a/Source/Modulos/Contactos/Views/uEditorProveedores.pas b/Source/Modulos/Contactos/Views/uEditorProveedores.pas index 6a146a33..942e9e8c 100644 --- a/Source/Modulos/Contactos/Views/uEditorProveedores.pas +++ b/Source/Modulos/Contactos/Views/uEditorProveedores.pas @@ -11,7 +11,7 @@ uses JvExControls, JvComponent, JvNavigationPane, uIEditorProveedores, uViewGridBase, uViewGrid, uViewContactos, uViewProveedores, - pngimage, TBXStatusBars, JvExComCtrls, JvStatusBar, JSDialog; + pngimage, TBXStatusBars, JvExComCtrls, JvStatusBar, JSDialog, uDAInterfaces; type TfEditorProveedores = class(TfEditorContactos, IEditorProveedores) @@ -138,7 +138,8 @@ procedure TfEditorProveedores.PonerTitulos(const ATitulo: string); var FTitulo : String; begin - FTitulo := 'Lista de proveedores - ' + dmUsuarios.EmpresaActual.NOMBRE; +// OJOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO +// FTitulo := 'Lista de proveedores - ' + dmUsuarios.EmpresaActual.NOMBRE; inherited PonerTitulos(FTitulo); end; diff --git a/Source/Modulos/Contactos/Views/uViewCliente.dfm b/Source/Modulos/Contactos/Views/uViewCliente.dfm index 94a80ead..b13b44a7 100644 --- a/Source/Modulos/Contactos/Views/uViewCliente.dfm +++ b/Source/Modulos/Contactos/Views/uViewCliente.dfm @@ -23,7 +23,7 @@ inherited frViewCliente: TfrViewCliente ExplicitLeft = 601 end object Label1: TLabel [3] - Left = 378 + Left = 376 Top = 280 Width = 269 Height = 39 @@ -61,10 +61,10 @@ inherited frViewCliente: TfrViewCliente Width = 71 end inherited eCodigoPostal: TcxDBTextEdit - Left = 283 + Left = 281 Top = 311 TabOrder = 10 - ExplicitLeft = 283 + ExplicitLeft = 281 ExplicitTop = 311 end inherited eObservaciones: TcxDBMemo @@ -164,7 +164,7 @@ inherited frViewCliente: TfrViewCliente Width = 113 end object cxDBCheckBox1: TcxDBCheckBox [13] - Left = 378 + Left = 376 Top = 325 Caption = 'Permitir el acceso de este cliente a la tienda web' DataBinding.DataField = 'TIENDA_WEB' @@ -189,30 +189,30 @@ inherited frViewCliente: TfrViewCliente Width = 249 end inherited eTlfParticular: TcxDBTextEdit - Left = 473 + Left = 471 TabOrder = 13 - ExplicitLeft = 473 + ExplicitLeft = 471 ExplicitWidth = 157 Width = 157 end inherited eTlfTrabajo: TcxDBTextEdit - Left = 473 + Left = 471 TabOrder = 12 - ExplicitLeft = 473 + ExplicitLeft = 471 ExplicitWidth = 157 Width = 157 end inherited eTlfMovil: TcxDBTextEdit - Left = 473 + Left = 471 TabOrder = 14 - ExplicitLeft = 473 + ExplicitLeft = 471 ExplicitWidth = 157 Width = 157 end inherited eFax: TcxDBTextEdit - Left = 473 + Left = 471 TabOrder = 15 - ExplicitLeft = 473 + ExplicitLeft = 471 ExplicitWidth = 157 Width = 157 end @@ -223,31 +223,31 @@ inherited frViewCliente: TfrViewCliente Width = 135 end inherited eNIFCIF: TcxDBTextEdit - Left = 256 - ExplicitLeft = 256 + Left = 282 + ExplicitLeft = 282 ExplicitWidth = 58 Width = 58 end inherited eMailTrabajo: TcxDBHyperLinkEdit - Left = 473 + Left = 471 Properties.Prefix = 'mailto:' TabOrder = 16 - ExplicitLeft = 473 + ExplicitLeft = 471 ExplicitWidth = 128 Width = 128 end inherited eMailParticular: TcxDBHyperLinkEdit - Left = 473 + Left = 471 Properties.Prefix = 'mailto:' TabOrder = 17 - ExplicitLeft = 473 + ExplicitLeft = 471 ExplicitWidth = 128 Width = 128 end inherited ePaginaWeb: TcxDBHyperLinkEdit - Left = 473 + Left = 471 TabOrder = 18 - ExplicitLeft = 473 + ExplicitLeft = 471 ExplicitWidth = 128 Width = 128 end diff --git a/Source/Modulos/Contactos/Views/uViewCliente.pas b/Source/Modulos/Contactos/Views/uViewCliente.pas index 944a2f49..450eef57 100644 --- a/Source/Modulos/Contactos/Views/uViewCliente.pas +++ b/Source/Modulos/Contactos/Views/uViewCliente.pas @@ -11,7 +11,7 @@ uses dxLayoutControl, cxMemo, cxHyperLinkEdit, ImgList, ActnList, Buttons, PngSpeedButton, PngImageList, cxGraphics, cxMaskEdit, cxDropDownEdit, cxLookupEdit, cxDBLookupEdit, cxDBLookupComboBox, uGruposClienteController, - cxCheckBox, cxSpinEdit, Grids, DBGrids; + cxCheckBox, cxSpinEdit, Grids, DBGrids, uDAInterfaces; type IViewCliente = interface(IViewContacto) diff --git a/Source/Modulos/Contactos/Views/uViewClienteDatosComerciales.pas b/Source/Modulos/Contactos/Views/uViewClienteDatosComerciales.pas index 41ad9582..4efaf424 100644 --- a/Source/Modulos/Contactos/Views/uViewClienteDatosComerciales.pas +++ b/Source/Modulos/Contactos/Views/uViewClienteDatosComerciales.pas @@ -7,7 +7,8 @@ uses Dialogs, uViewBase, cxGraphics, DB, uDADataTable, dxLayoutControl, cxContainer, cxEdit, cxTextEdit, cxMaskEdit, cxDropDownEdit, cxLookupEdit, cxDBLookupEdit, cxDBLookupComboBox, cxControls, cxSpinEdit, cxDBEdit, - uBizContactos, cxCheckBox, StdCtrls, uFormasPagoController, uTiposIVAController; + uBizContactos, cxCheckBox, StdCtrls, uFormasPagoController, uTiposIVAController, + uDAInterfaces; type IViewClienteDatosComerciales = interface(IViewBase) diff --git a/Source/Modulos/Contactos/Views/uViewClienteDescuentos.pas b/Source/Modulos/Contactos/Views/uViewClienteDescuentos.pas index 171e5dca..0bed2d29 100644 --- a/Source/Modulos/Contactos/Views/uViewClienteDescuentos.pas +++ b/Source/Modulos/Contactos/Views/uViewClienteDescuentos.pas @@ -9,7 +9,7 @@ uses PngImageList, uDADataTable, ComCtrls, ToolWin, cxGridLevel, cxGridCustomTableView, cxGridTableView, cxGridDBTableView, cxClasses, cxControls, cxGridCustomView, cxGrid, cxDBLookupComboBox, cxSpinEdit, - uBizContactos, uProveedoresController; + uBizContactos, uProveedoresController, uDAInterfaces; type TfrViewClienteDescuentos = class(TfrViewDetallesGenerico) diff --git a/Source/Modulos/Contactos/Views/uViewClientes.dfm b/Source/Modulos/Contactos/Views/uViewClientes.dfm index bf928ec1..2bd03d8e 100644 --- a/Source/Modulos/Contactos/Views/uViewClientes.dfm +++ b/Source/Modulos/Contactos/Views/uViewClientes.dfm @@ -62,25 +62,8 @@ inherited frViewClientes: TfrViewClientes end end end - inherited frViewFiltroBase1: TfrViewFiltroBase - inherited TBXDockablePanel1: TTBXDockablePanel - inherited dxLayoutControl1: TdxLayoutControl - inherited txtFiltroTodo: TcxTextEdit - ExplicitWidth = 273 - Width = 273 - end - inherited edtFechaIniFiltro: TcxDateEdit - ExplicitWidth = 121 - Width = 121 - end - inherited edtFechaFinFiltro: TcxDateEdit - ExplicitWidth = 201 - Width = 201 - end - end - end - end inherited pnlAgrupaciones: TTBXDockablePanel + ExplicitWidth = 128 inherited TBXAlignmentPanel1: TTBXAlignmentPanel inherited TBXToolbar1: TTBXToolbar object TBXItem2: TTBXItem diff --git a/Source/Modulos/Contactos/Views/uViewClientes.pas b/Source/Modulos/Contactos/Views/uViewClientes.pas index de9f092e..5fd03fc6 100644 --- a/Source/Modulos/Contactos/Views/uViewClientes.pas +++ b/Source/Modulos/Contactos/Views/uViewClientes.pas @@ -13,7 +13,8 @@ uses dxPSFillPatterns, dxPSEdgePatterns, cxIntlPrintSys3, dxPSCore, dxPScxCommon, cxImageComboBox, cxGridCustomPopupMenu, cxGridPopupMenu, dxPScxGridLnk, ExtCtrls, JvComponentBase, JvBalloonHint, JvHint, - uViewFiltroBase, dxPgsDlg, TB2Item, TBX, TB2Toolbar, TBXDkPanels, TB2Dock; + uViewFiltroBase, dxPgsDlg, TB2Item, TBX, TB2Toolbar, TBXDkPanels, TB2Dock, + uDAInterfaces; type IViewClientes = interface(IViewContactos) diff --git a/Source/Modulos/Contactos/Views/uViewContacto.pas b/Source/Modulos/Contactos/Views/uViewContacto.pas index b36096bc..85840794 100644 --- a/Source/Modulos/Contactos/Views/uViewContacto.pas +++ b/Source/Modulos/Contactos/Views/uViewContacto.pas @@ -8,7 +8,7 @@ uses DBCtrls, Grids, DBGrids, uBizContactos, Mask, ComCtrls, uCustomView, JvComponent, JvFormAutoSize, cxControls, cxContainer, cxEdit, cxTextEdit, cxDBEdit, dxLayoutControl, dxLayoutLookAndFeels, cxMemo, cxHyperLinkEdit, - ImgList, ActnList, PngImageList, PngSpeedButton; + ImgList, ActnList, PngImageList, PngSpeedButton, uDAInterfaces; type IViewContacto = interface(IViewBase) diff --git a/Source/Modulos/Contactos/Views/uViewContactoDatosBancarios.pas b/Source/Modulos/Contactos/Views/uViewContactoDatosBancarios.pas index e0fbe00b..ef75386e 100644 --- a/Source/Modulos/Contactos/Views/uViewContactoDatosBancarios.pas +++ b/Source/Modulos/Contactos/Views/uViewContactoDatosBancarios.pas @@ -5,7 +5,7 @@ interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, uViewBase, dxLayoutControl, cxControls, cxContainer, cxEdit, - cxTextEdit, cxDBEdit, DB, uDADataTable; + cxTextEdit, cxDBEdit, DB, uDADataTable, uDAInterfaces; type IViewDatosBancarios = interface(IViewBase) diff --git a/Source/Modulos/Contactos/Views/uViewContactos.dfm b/Source/Modulos/Contactos/Views/uViewContactos.dfm index d122e107..9a88d414 100644 --- a/Source/Modulos/Contactos/Views/uViewContactos.dfm +++ b/Source/Modulos/Contactos/Views/uViewContactos.dfm @@ -12,7 +12,7 @@ inherited frViewContactos: TfrViewContactos DataController.KeyFieldNames = 'ID' DataController.Summary.FooterSummaryItems = < item - Format = '0 clientes' + Format = '0 clientes' Kind = skCount FieldName = 'ID' Column = cxGridViewNOMBRE @@ -98,23 +98,17 @@ inherited frViewContactos: TfrViewContactos inherited dxLayoutControl1: TdxLayoutControl Width = 557 ExplicitWidth = 557 - inherited txtFiltroTodo: TcxTextEdit - ExplicitWidth = 273 - Width = 273 - end - inherited edtFechaIniFiltro: TcxDateEdit - ExplicitWidth = 121 - Width = 121 - end inherited edtFechaFinFiltro: TcxDateEdit - ExplicitWidth = 201 - Width = 201 + ExplicitWidth = 284 + Width = 284 end end inherited TBXAlignmentPanel1: TTBXAlignmentPanel Width = 557 + ExplicitWidth = 557 inherited tbxBotones: TTBXToolbar Width = 547 + ExplicitWidth = 547 end end end diff --git a/Source/Modulos/Contactos/Views/uViewContactos.pas b/Source/Modulos/Contactos/Views/uViewContactos.pas index 402ea141..14eb0a64 100644 --- a/Source/Modulos/Contactos/Views/uViewContactos.pas +++ b/Source/Modulos/Contactos/Views/uViewContactos.pas @@ -13,7 +13,8 @@ uses dxPrnPg, dxBkgnd, dxWrap, dxPrnDev, dxPSCompsProvider, dxPSFillPatterns, dxPSEdgePatterns, cxIntlPrintSys3, dxPSCore, dxPScxCommon, dxPScxGridLnk, udatamoduleclientes, cxGridCustomPopupMenu, cxGridPopupMenu, uViewFiltroBase, - ComCtrls, TB2Item, TBX, TB2Toolbar, TBXDkPanels, TB2Dock, dxPgsDlg; + ComCtrls, TB2Item, TBX, TB2Toolbar, TBXDkPanels, TB2Dock, dxPgsDlg, + uDAInterfaces; type IViewContactos = interface(IViewGrid) diff --git a/Source/Modulos/Contactos/Views/uViewDireccionesEntrega.pas b/Source/Modulos/Contactos/Views/uViewDireccionesEntrega.pas index 10437926..5bd6e451 100644 --- a/Source/Modulos/Contactos/Views/uViewDireccionesEntrega.pas +++ b/Source/Modulos/Contactos/Views/uViewDireccionesEntrega.pas @@ -9,7 +9,8 @@ uses cxGridCustomTableView, cxGridTableView, cxGridBandedTableView, cxGridDBBandedTableView, cxClasses, cxControls, cxGridCustomView, cxGrid, uDADataTable, Grids, DBGrids, ActnList, ImgList, PngImageList, ComCtrls, - ToolWin, cxGridDBTableView, uViewDetallesGenerico, cxCurrencyEdit; + ToolWin, cxGridDBTableView, uViewDetallesGenerico, cxCurrencyEdit, + uDAInterfaces; type TfrViewDireccionesEntrega = class(TfrViewDetallesGenerico) diff --git a/Source/Modulos/Contactos/Views/uViewEmpleados.dfm b/Source/Modulos/Contactos/Views/uViewEmpleados.dfm index 9980a1ed..d80002e7 100644 --- a/Source/Modulos/Contactos/Views/uViewEmpleados.dfm +++ b/Source/Modulos/Contactos/Views/uViewEmpleados.dfm @@ -31,21 +31,20 @@ inherited frViewEmpleados: TfrViewEmpleados inherited frViewFiltroBase1: TfrViewFiltroBase inherited TBXDockablePanel1: TTBXDockablePanel inherited dxLayoutControl1: TdxLayoutControl - inherited txtFiltroTodo: TcxTextEdit - ExplicitWidth = 457 - Width = 457 - end inherited edtFechaIniFiltro: TcxDateEdit ExplicitWidth = 239 Width = 239 end inherited edtFechaFinFiltro: TcxDateEdit - ExplicitWidth = 219 - Width = 219 + ExplicitWidth = 207 + Width = 207 end end end end + inherited pnlAgrupaciones: TTBXDockablePanel + ExplicitWidth = 128 + end inherited dxComponentPrinter: TdxComponentPrinter inherited dxComponentPrinterLink: TdxGridReportLink ReportDocument.CreationDate = 39211.791248726860000000 diff --git a/Source/Modulos/Contactos/Views/uViewEmpleados.pas b/Source/Modulos/Contactos/Views/uViewEmpleados.pas index 840724b8..b244977b 100644 --- a/Source/Modulos/Contactos/Views/uViewEmpleados.pas +++ b/Source/Modulos/Contactos/Views/uViewEmpleados.pas @@ -11,7 +11,7 @@ uses cxGridPopupMenu, dxPSCore, dxPScxCommon, dxPScxGridLnk, uDADataTable, cxGridLevel, cxGridCustomTableView, cxGridTableView, cxGridDBTableView, cxClasses, cxControls, cxGridCustomView, cxGrid, dxPgsDlg, ActnList, TB2Item, - TBX, TB2Toolbar, TBXDkPanels, TB2Dock, uViewFiltroBase; + TBX, TB2Toolbar, TBXDkPanels, TB2Dock, uViewFiltroBase, uDAInterfaces; type IViewEmpleados = interface(IViewContactos) diff --git a/Source/Modulos/Contactos/Views/uViewProveedor.dfm b/Source/Modulos/Contactos/Views/uViewProveedor.dfm index 6288153c..6a3856e5 100644 --- a/Source/Modulos/Contactos/Views/uViewProveedor.dfm +++ b/Source/Modulos/Contactos/Views/uViewProveedor.dfm @@ -7,16 +7,16 @@ inherited frViewProveedor: TfrViewProveedor Height = 454 ExplicitHeight = 454 inherited PngSpeedButton1: TPngSpeedButton - Left = 612 - ExplicitLeft = 612 + Left = 613 + ExplicitLeft = 613 end inherited PngSpeedButton2: TPngSpeedButton - Left = 612 - ExplicitLeft = 612 + Left = 613 + ExplicitLeft = 613 end inherited PngSpeedButton3: TPngSpeedButton - Left = 612 - ExplicitLeft = 612 + Left = 613 + ExplicitLeft = 613 end object Label1: TLabel [3] Left = 366 @@ -94,21 +94,7 @@ inherited frViewProveedor: TfrViewProveedor TabOrder = 20 Width = 310 end - inherited eTlfParticular: TcxDBTextEdit - Left = 461 - TabOrder = 14 - ExplicitLeft = 461 - ExplicitWidth = 91 - Width = 91 - end - inherited eTlfTrabajo: TcxDBTextEdit - Left = 461 - TabOrder = 13 - ExplicitLeft = 461 - ExplicitWidth = 127 - Width = 127 - end - object cxDBCheckBox2: TcxDBCheckBox [12] + object cxDBCheckBox2: TcxDBCheckBox [10] Left = 22 Top = 193 Caption = 'El proveedor est'#225' homologado' @@ -132,7 +118,7 @@ inherited frViewProveedor: TfrViewProveedor TabOrder = 6 Width = 326 end - object eCertificaciones: TcxDBTextEdit [13] + object eCertificaciones: TcxDBTextEdit [11] Left = 124 Top = 220 DataBinding.DataField = 'CERTIFICACION' @@ -151,7 +137,7 @@ inherited frViewProveedor: TfrViewProveedor TabOrder = 7 Width = 227 end - object cbGrupoProveedor: TcxDBComboBox [14] + object cbGrupoProveedor: TcxDBComboBox [12] Left = 124 Top = 136 DataBinding.DataField = 'GRUPO_PROVEEDOR' @@ -175,27 +161,17 @@ inherited frViewProveedor: TfrViewProveedor TabOrder = 5 Width = 227 end - inherited eTlfMovil: TcxDBTextEdit + inherited eTlfParticular: TcxDBTextEdit Left = 461 - TabOrder = 15 + TabOrder = 14 ExplicitLeft = 461 - ExplicitWidth = 155 - Width = 155 end - inherited eFax: TcxDBTextEdit + inherited eTlfTrabajo: TcxDBTextEdit Left = 461 - TabOrder = 16 + TabOrder = 13 ExplicitLeft = 461 - ExplicitWidth = 121 - Width = 121 end - inherited eNombre: TcxDBTextEdit - Left = 124 - ExplicitLeft = 124 - ExplicitWidth = 221 - Width = 221 - end - object eDescripcionProveedor: TcxDBTextEdit [18] + object eDescripcionProveedor: TcxDBTextEdit [15] Left = 124 Top = 82 DataBinding.DataField = 'DESCRIPCION_PROVEEDOR' @@ -214,7 +190,7 @@ inherited frViewProveedor: TfrViewProveedor TabOrder = 3 Width = 221 end - object eCodigoAsignado: TcxDBTextEdit [19] + object eCodigoAsignado: TcxDBTextEdit [16] Left = 124 Top = 109 DataBinding.DataField = 'CODIGO_ASIGNADO' @@ -233,6 +209,20 @@ inherited frViewProveedor: TfrViewProveedor TabOrder = 4 Width = 221 end + inherited eTlfMovil: TcxDBTextEdit + Left = 461 + TabOrder = 15 + ExplicitLeft = 461 + end + inherited eFax: TcxDBTextEdit + Left = 461 + TabOrder = 16 + ExplicitLeft = 461 + end + inherited eNombre: TcxDBTextEdit + Left = 124 + ExplicitLeft = 124 + end inherited eNIFCIF: TcxDBTextEdit Left = 197 ExplicitLeft = 197 @@ -244,29 +234,21 @@ inherited frViewProveedor: TfrViewProveedor Properties.Prefix = 'mailto:' TabOrder = 17 ExplicitLeft = 461 - ExplicitWidth = 133 - Width = 133 end inherited eMailParticular: TcxDBHyperLinkEdit Left = 461 Properties.Prefix = 'mailto:' TabOrder = 18 ExplicitLeft = 461 - ExplicitWidth = 133 - Width = 133 end inherited ePaginaWeb: TcxDBHyperLinkEdit Left = 461 TabOrder = 19 ExplicitLeft = 461 - ExplicitWidth = 133 - Width = 133 end inherited eReferencia: TcxDBTextEdit Left = 124 ExplicitLeft = 124 - ExplicitWidth = 38 - Width = 38 end inherited ePersonaContacto: TcxDBTextEdit Left = 124 @@ -274,8 +256,6 @@ inherited frViewProveedor: TfrViewProveedor TabOrder = 8 ExplicitLeft = 124 ExplicitTop = 277 - ExplicitWidth = 256 - Width = 256 end inherited dxLayoutControlContactoGroup_Root: TdxLayoutGroup inherited dxLayoutControlContactoGroup9: TdxLayoutGroup diff --git a/Source/Modulos/Contactos/Views/uViewProveedor.pas b/Source/Modulos/Contactos/Views/uViewProveedor.pas index 736a3b13..37421b40 100644 --- a/Source/Modulos/Contactos/Views/uViewProveedor.pas +++ b/Source/Modulos/Contactos/Views/uViewProveedor.pas @@ -8,7 +8,7 @@ uses dxLayoutControl, cxMemo, cxDBEdit, cxContainer, cxEdit, cxTextEdit, cxControls, cxMaskEdit, cxSpinEdit, ImgList, PngImageList, ActnList, cxHyperLinkEdit, Buttons, PngSpeedButton, StdCtrls, cxCheckBox, cxGraphics, cxDropDownEdit, - uGruposProveedorController; + uGruposProveedorController, uDAInterfaces; type IViewProveedor = interface(IViewContacto) diff --git a/Source/Modulos/Contactos/Views/uViewProveedorDatosComerciales.pas b/Source/Modulos/Contactos/Views/uViewProveedorDatosComerciales.pas index 912bedf6..5c2040f0 100644 --- a/Source/Modulos/Contactos/Views/uViewProveedorDatosComerciales.pas +++ b/Source/Modulos/Contactos/Views/uViewProveedorDatosComerciales.pas @@ -7,7 +7,8 @@ uses Dialogs, uViewBase, cxGraphics, DB, uDADataTable, dxLayoutControl, cxContainer, cxEdit, cxTextEdit, cxMaskEdit, cxDropDownEdit, cxLookupEdit, cxDBLookupEdit, cxDBLookupComboBox, cxControls, cxSpinEdit, cxDBEdit, - uBizContactos, cxCheckBox, StdCtrls, uFormasPagoController, uTiposIVAController; + uBizContactos, cxCheckBox, StdCtrls, uFormasPagoController, uTiposIVAController, + uDAInterfaces; type IViewProveedorDatosComerciales = interface(IViewBase) diff --git a/Source/Modulos/Contactos/Views/uViewProveedores.dfm b/Source/Modulos/Contactos/Views/uViewProveedores.dfm index 52cd0199..37730c25 100644 --- a/Source/Modulos/Contactos/Views/uViewProveedores.dfm +++ b/Source/Modulos/Contactos/Views/uViewProveedores.dfm @@ -51,8 +51,8 @@ inherited frViewProveedores: TfrViewProveedores Width = 483 ExplicitWidth = 483 inherited edtFechaFinFiltro: TcxDateEdit - ExplicitWidth = 149 - Width = 149 + ExplicitWidth = 206 + Width = 206 end end inherited TBXAlignmentPanel1: TTBXAlignmentPanel diff --git a/Source/Modulos/Contactos/Views/uViewProveedores.pas b/Source/Modulos/Contactos/Views/uViewProveedores.pas index 2f747b0b..a4adcdb4 100644 --- a/Source/Modulos/Contactos/Views/uViewProveedores.pas +++ b/Source/Modulos/Contactos/Views/uViewProveedores.pas @@ -11,7 +11,8 @@ uses cxGridPopupMenu, dxPSCore, dxPScxCommon, dxPScxGridLnk, uDADataTable, cxGridLevel, cxGridCustomTableView, cxGridTableView, cxGridDBTableView, cxClasses, cxControls, cxGridCustomView, cxGrid, dxPgsDlg, ActnList, TB2Item, - TBX, TB2Toolbar, TBXDkPanels, TB2Dock, uViewFiltroBase, cxImageComboBox; + TBX, TB2Toolbar, TBXDkPanels, TB2Dock, uViewFiltroBase, cxImageComboBox, + uDAInterfaces; type IViewProveedores = interface(IViewContactos) diff --git a/Source/Modulos/Empresas/Controller/Empresas_controller.bdsproj b/Source/Modulos/Empresas/Controller/Empresas_controller.bdsproj deleted file mode 100644 index a78ba8bd..00000000 --- a/Source/Modulos/Empresas/Controller/Empresas_controller.bdsproj +++ /dev/null @@ -1,497 +0,0 @@ - - - - - - - - - - - - Empresas_controller.dpk - - - 7.0 - - - 8 - 0 - 1 - 1 - 0 - 0 - 1 - 1 - 1 - 0 - 0 - 1 - 0 - 1 - 1 - 1 - 0 - 0 - 0 - 0 - 0 - 1 - 0 - 1 - 1 - 1 - True - True - WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; - - False - - True - True - True - True - True - True - True - True - True - True - True - True - True - True - True - True - True - True - True - True - True - True - True - True - True - True - True - True - True - True - True - True - True - True - True - True - True - True - True - True - True - True - True - True - True - True - False - False - False - True - True - True - True - True - True - - - - 3 - 0 - False - 1 - False - False - False - 16384 - 1048576 - 4194304 - - - - - .\ - ..\..\..\..\Output\Debug\Cliente - ..\..\Lib - ..\..\..\Lib;..\..\Lib - - - - False - - - - - - False - - - True - False - - - - $00000000 - - - - True - False - 1 - 0 - 0 - 0 - False - False - False - False - False - 3082 - 1252 - - - - - 1.0.0.0 - - - - - - 1.0.0.0 - - - JCL Debug IDE extension - JCL Project Analyzer - JCL Open and Save IDE dialogs with favorite folders - - - - True - diff --git a/Source/Modulos/Empresas/Controller/Empresas_controller.dpk b/Source/Modulos/Empresas/Controller/Empresas_controller.dpk deleted file mode 100644 index 0ae4f23d..00000000 --- a/Source/Modulos/Empresas/Controller/Empresas_controller.dpk +++ /dev/null @@ -1,86 +0,0 @@ -package Empresas_controller; - -{$R *.res} -{$ALIGN 8} -{$ASSERTIONS ON} -{$BOOLEVAL OFF} -{$DEBUGINFO ON} -{$EXTENDEDSYNTAX ON} -{$IMPORTEDDATA ON} -{$IOCHECKS ON} -{$LOCALSYMBOLS ON} -{$LONGSTRINGS ON} -{$OPENSTRINGS ON} -{$OPTIMIZATION ON} -{$OVERFLOWCHECKS OFF} -{$RANGECHECKS OFF} -{$REFERENCEINFO ON} -{$SAFEDIVIDE OFF} -{$STACKFRAMES OFF} -{$TYPEDADDRESS OFF} -{$VARSTRINGCHECKS ON} -{$WRITEABLECONST OFF} -{$MINENUMSIZE 1} -{$IMAGEBASE $400000} -{$IMPLICITBUILD OFF} -{%TogetherDiagram 'ModelSupport_Empresas_controller\default.txaPackage'} -{%TogetherDiagram 'ModelSupport_Empresas_controller\uIEditorContacto\default.txaPackage'} -{%TogetherDiagram 'ModelSupport_Empresas_controller\uIEditorCliente\default.txaPackage'} -{%TogetherDiagram 'ModelSupport_Empresas_controller\uContactosController\default.txaPackage'} -{%TogetherDiagram 'ModelSupport_Empresas_controller\uIEditorClientes\default.txaPackage'} -{%TogetherDiagram 'ModelSupport_Empresas_controller\uClientesController\default.txaPackage'} -{%TogetherDiagram 'ModelSupport_Empresas_controller\uIEditorContactos\default.txaPackage'} -{%TogetherDiagram 'ModelSupport_Empresas_controller\default.txvpck'} -{%TogetherDiagram 'ModelSupport_Empresas_controller\uClientesController\default.txvpck'} -{%TogetherDiagram 'ModelSupport_Empresas_controller\uIEditorCliente\default.txvpck'} -{%TogetherDiagram 'ModelSupport_Empresas_controller\uIEditorClientes\default.txvpck'} -{%TogetherDiagram 'ModelSupport_Empresas_controller\uIEditorContactos\default.txvpck'} -{%TogetherDiagram 'ModelSupport_Empresas_controller\uIEditorContacto\default.txvpck'} -{%TogetherDiagram 'ModelSupport_Empresas_controller\uContactosController\default.txvpck'} -{%TogetherDiagram 'ModelSupport_Empresas_controller\uIEditorInstalador\default.txaPackage'} -{%TogetherDiagram 'ModelSupport_Empresas_controller\uIEditorInstaladores\default.txaPackage'} -{%TogetherDiagram 'ModelSupport_Empresas_controller\uIEditorVendedores\default.txaPackage'} -{%TogetherDiagram 'ModelSupport_Empresas_controller\uIEditorProveedores\default.txaPackage'} -{%TogetherDiagram 'ModelSupport_Empresas_controller\uIEditorVendedor\default.txaPackage'} -{%TogetherDiagram 'ModelSupport_Empresas_controller\uInstaladoresController\default.txaPackage'} -{%TogetherDiagram 'ModelSupport_Empresas_controller\uProveedoresController\default.txaPackage'} -{%TogetherDiagram 'ModelSupport_Empresas_controller\uIEditorProveedor\default.txaPackage'} -{%TogetherDiagram 'ModelSupport_Empresas_controller\uVendedoresController\default.txaPackage'} -{%TogetherDiagram 'ModelSupport_Empresas_controller\uVendedoresController\default.txvpck'} - -requires - rtl, - vcl, - DataAbstract_D10, - Base, - GUIBase, - dbrtl, - cxLibraryD10, - dxThemeD10, - GUISDK_D10, - ccpack10, - designide, - xmlrtl, - vclactnband, - vclx, - cfpack_d10, - JvAppFrmD10R, - vcljpg, - JclVcl, - Jcl, - JvSystemD10R, - JvCoreD10R, - dsnap, - vcldb, - adortl, - Empresas_model, - Empresas_data; - -contains - uEmpresasController in 'uEmpresasController.pas', - uIEditorEmpresas in 'View\uIEditorEmpresas.pas', - uIEditorEmpresa in 'View\uIEditorEmpresa.pas', - uDatosBancariosEmpresaController in 'uDatosBancariosEmpresaController.pas', - uIEditorDatosBancarioEmpresa in 'View\uIEditorDatosBancarioEmpresa.pas'; - -end. diff --git a/Source/Modulos/Empresas/Controller/Empresas_controller.drc b/Source/Modulos/Empresas/Controller/Empresas_controller.drc deleted file mode 100644 index 7642ac97..00000000 --- a/Source/Modulos/Empresas/Controller/Empresas_controller.drc +++ /dev/null @@ -1,14 +0,0 @@ -/* VER180 - Generated by the Borland Delphi Pascal Compiler - because -GD or --drc was supplied to the compiler. - - This file contains compiler-generated resources that - were bound to the executable. - If this file is empty, then no compiler-generated - resources were bound to the produced executable. -*/ - -STRINGTABLE -BEGIN -END - diff --git a/Source/Modulos/Empresas/Controller/Empresas_controller.rc b/Source/Modulos/Empresas/Controller/Empresas_controller.rc deleted file mode 100644 index e69de29b..00000000 diff --git a/Source/Modulos/Empresas/Controller/Empresas_controller.res b/Source/Modulos/Empresas/Controller/Empresas_controller.res deleted file mode 100644 index 36f26e23..00000000 Binary files a/Source/Modulos/Empresas/Controller/Empresas_controller.res and /dev/null differ diff --git a/Source/Modulos/Empresas/Controller/ModelSupport_Empresas_controller/Empresas_controller.prjconfig b/Source/Modulos/Empresas/Controller/ModelSupport_Empresas_controller/Empresas_controller.prjconfig deleted file mode 100644 index c8f28340..00000000 --- a/Source/Modulos/Empresas/Controller/ModelSupport_Empresas_controller/Empresas_controller.prjconfig +++ /dev/null @@ -1,2 +0,0 @@ - - \ No newline at end of file diff --git a/Source/Modulos/Empresas/Controller/ModelSupport_Empresas_controller/default.txaPackage b/Source/Modulos/Empresas/Controller/ModelSupport_Empresas_controller/default.txaPackage deleted file mode 100644 index e69de29b..00000000 diff --git a/Source/Modulos/Empresas/Controller/uDatosBancariosEmpresaController.pas b/Source/Modulos/Empresas/Controller/uDatosBancariosEmpresaController.pas deleted file mode 100644 index a16c804e..00000000 --- a/Source/Modulos/Empresas/Controller/uDatosBancariosEmpresaController.pas +++ /dev/null @@ -1,142 +0,0 @@ -unit uDatosBancariosEmpresaController; - -interface - -uses - Windows, Forms, Classes, Controls, Contnrs, SysUtils, uDADataTable, - uBizEmpresas, uBizEmpresasDatosBancarios, uIDataModuleEmpresas; - -type - IDatosBancariosEmpresaController = interface - ['{E9B0313E-7B16-420A-B47E-20E42E96BAC6}'] - procedure AsignarID(ADetalles: IBizEmpresasDatosBancarios; IDCabecera: Integer; AEsNuevo:Boolean); - procedure Ver(ADatosBancarios : IBizEmpresasDatosBancarios); - end; - - TDatosBancariosEmpresaController = class(TInterfacedObject, IDatosBancariosEmpresaController) - private - FDataModule : IDataModuleEmpresas; - public - procedure Ver(ADatosBancarios : IBizEmpresasDatosBancarios); - procedure AsignarID(ADetalles: IBizEmpresasDatosBancarios; IDCabecera : Integer; AEsNuevo : Boolean); - constructor Create; virtual; - destructor Destroy; override; - end; - -implementation - -{ TDatosBancariosEmpresaController } - -uses - uDataModuleEmpresas, schEmpresasClient_Intf, uIEditorDatosBancarioEmpresa, - uEditorRegistryUtils, cxControls; - -procedure TDatosBancariosEmpresaController.AsignarID( - ADetalles: IBizEmpresasDatosBancarios; IDCabecera: Integer; - AEsNuevo:Boolean); -begin - with ADetalles do - begin - DataTable.DisableControls; - try - if not DataTable.Active then - DataTable.Active := True; - -// AuxPosicion := POSICION; - - { ¡¡¡¡ OJO !!!! - Para asignar el ID en los detalles hay - que tener en cuenta una cosa: - Si se cambia el ID, ese detalle ya no - pertenece a esa cabecera porque ya no se - cumple la condición de la relacion: - Master.ID = Detail.ID_PRESUPUESTO. - - Por esa razón no sirve hacer un recorrido - desde el principio hasta el final porque - las detalles van desapareciendo según asignamos - el valor al campo ID y nos mueve aleatoriamente - la posición del registro actual. - - Es mejor hacer un bucle sencillo hasta que - "se gasten" todos los detalles. Cuando el - RecordCount llegue a 0 quiere decir que hemos - tratado todos los detalles. - - El bucle cambia en el caso de ser llamada esta funcion desde modificar - un presupuesto ya que en ese caso si que hay que hacer un recorrido - total de las tuplas de detalle. - } - - if AEsNuevo then - begin - while RecordCount > 0 do - begin - DataTable.First; - Edit; - ID := FDataModule.GetNextID(DataTable.LogicalName); - ID_EMPRESA := IDCabecera; - Post - end - end - else - begin - DataTable.First; - while not DataTable.EOF do - begin - if AEsNuevo then - begin - Edit; - ID := FDataModule.GetNextID(DataTable.LogicalName); - ID_EMPRESA := IDCabecera; - Post - end; - DataTable.Next - end; - end; - finally - DataTable.EnableControls; - end; - end; -end; - -constructor TDatosBancariosEmpresaController.Create; -begin - inherited; - FDataModule := TDataModuleEmpresas.Create(Nil); -end; - -destructor TDatosBancariosEmpresaController.Destroy; -begin - FDataModule := Nil; - inherited; -end; - -procedure TDatosBancariosEmpresaController.Ver( - ADatosBancarios : IBizEmpresasDatosBancarios); -var - AEditor : IEditorDatosBancariosEmpresa; -begin - AEditor := NIL; - ShowHourglassCursor; - try - CreateEditor('EditorDatosBancariosEmpresa', IEditorDatosBancariosEmpresa, AEditor); - with AEditor do - begin - DatosBancarios := ADatosBancarios; - Controller := Self; - end; - finally - HideHourglassCursor; - end; - - if Assigned(AEditor) then - try - AEditor.ShowModal; - AEditor.Release; - finally - AEditor := NIL; - end; -end; - -end. diff --git a/Source/Modulos/Empresas/Data/Empresas_data.bdsproj b/Source/Modulos/Empresas/Data/Empresas_data.bdsproj deleted file mode 100644 index edfe9d47..00000000 --- a/Source/Modulos/Empresas/Data/Empresas_data.bdsproj +++ /dev/null @@ -1,493 +0,0 @@ - - - - - - - - - - - - Empresas_data.dpk - - - 7.0 - - - 8 - 0 - 1 - 1 - 0 - 0 - 1 - 1 - 1 - 0 - 0 - 1 - 0 - 1 - 1 - 1 - 0 - 0 - 0 - 0 - 0 - 1 - 0 - 1 - 1 - 1 - True - True - WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; - - False - - True - True - True - True - True - True - True - True - True - True - True - True - True - True - True - True - True - True - True - True - True - True - True - True - True - True - True - True - True - True - True - True - True - True - True - True - True - True - True - True - True - True - True - True - True - True - False - False - False - True - True - True - True - True - True - - - - 3 - 0 - False - 1 - False - False - False - 16384 - 1048576 - 4194304 - Empresas - - - - .\ - ..\..\..\..\Output\Debug\Cliente - ..\..\Lib - ..\..\..\Lib;..\..\Lib - - - - False - - - - - - False - - - True - False - - - - $00000000 - - - - True - False - 1 - 0 - 0 - 0 - False - False - False - False - False - 3082 - 1252 - - - - - 1.0.0.0 - - - - - - 1.0.0.0 - - - - - False - diff --git a/Source/Modulos/Empresas/Data/Empresas_data.drc b/Source/Modulos/Empresas/Data/Empresas_data.drc deleted file mode 100644 index 7642ac97..00000000 --- a/Source/Modulos/Empresas/Data/Empresas_data.drc +++ /dev/null @@ -1,14 +0,0 @@ -/* VER180 - Generated by the Borland Delphi Pascal Compiler - because -GD or --drc was supplied to the compiler. - - This file contains compiler-generated resources that - were bound to the executable. - If this file is empty, then no compiler-generated - resources were bound to the produced executable. -*/ - -STRINGTABLE -BEGIN -END - diff --git a/Source/Modulos/Empresas/Data/Empresas_data.rc b/Source/Modulos/Empresas/Data/Empresas_data.rc deleted file mode 100644 index e69de29b..00000000 diff --git a/Source/Modulos/Empresas/Data/Empresas_data.res b/Source/Modulos/Empresas/Data/Empresas_data.res deleted file mode 100644 index 36f26e23..00000000 Binary files a/Source/Modulos/Empresas/Data/Empresas_data.res and /dev/null differ diff --git a/Source/Modulos/Empresas/Data/uDataModuleEmpresas.dfm b/Source/Modulos/Empresas/Data/uDataModuleEmpresas.dfm deleted file mode 100644 index 0f1bf0a4..00000000 --- a/Source/Modulos/Empresas/Data/uDataModuleEmpresas.dfm +++ /dev/null @@ -1,719 +0,0 @@ -object DataModuleEmpresas: TDataModuleEmpresas - OldCreateOrder = True - OnCreate = DAClientDataModuleCreate - RemoteService = RORemoteService - Adapter = DABinAdapter - SchemaCall.MethodName = 'GetSchemaAsXML' - SchemaCall.Params = < - item - Name = 'Result' - ParamType = fResult - DataType = rtString - end> - Height = 427 - Width = 429 - object RORemoteService: TRORemoteService - ServiceName = 'srvEmpresas' - Message = dmConexion.ROMessage - Channel = dmConexion.ROChannel - Left = 32 - Top = 24 - end - object DABinAdapter: TDABINAdapter - Left = 32 - Top = 112 - end - object tbl_Empresas: TDACDSDataTable - RemoteUpdatesOptions = [] - Fields = < - item - Name = 'ID' - DataType = datInteger - BlobType = dabtUnknown - DisplayWidth = 0 - Alignment = taLeftJustify - DictionaryEntry = 'Empresas_ID' - InPrimaryKey = True - Calculated = False - Lookup = False - LookupCache = False - end - item - Name = 'NIF_CIF' - DataType = datString - Size = 15 - BlobType = dabtUnknown - DisplayWidth = 0 - DisplayLabel = 'CIF' - Alignment = taLeftJustify - DictionaryEntry = 'Empresas_NIF_CIF' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False - end - item - Name = 'NOMBRE' - DataType = datString - Size = 255 - BlobType = dabtUnknown - DisplayWidth = 0 - DisplayLabel = 'Nombre' - Alignment = taLeftJustify - DictionaryEntry = 'Empresas_NOMBRE' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False - end - item - Name = 'RAZON_SOCIAL' - DataType = datString - Size = 255 - BlobType = dabtUnknown - DisplayWidth = 0 - DisplayLabel = 'Raz'#243'n Social' - Alignment = taLeftJustify - DictionaryEntry = 'Empresas_RAZON_SOCIAL' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False - end - item - Name = 'CALLE' - DataType = datString - Size = 255 - BlobType = dabtUnknown - DisplayWidth = 0 - DisplayLabel = 'Calle' - Alignment = taLeftJustify - DictionaryEntry = 'Empresas_CALLE' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False - end - item - Name = 'POBLACION' - DataType = datString - Size = 255 - BlobType = dabtUnknown - DisplayWidth = 0 - DisplayLabel = 'Poblaci'#243'n' - Alignment = taLeftJustify - DictionaryEntry = 'Empresas_POBLACION' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False - end - item - Name = 'PROVINCIA' - DataType = datString - Size = 255 - BlobType = dabtUnknown - DisplayWidth = 0 - DisplayLabel = 'Provincia' - Alignment = taLeftJustify - DictionaryEntry = 'Empresas_PROVINCIA' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False - end - item - Name = 'CODIGO_POSTAL' - DataType = datString - Size = 10 - BlobType = dabtUnknown - DisplayWidth = 0 - DisplayLabel = 'C'#243'd. postal' - Alignment = taLeftJustify - DictionaryEntry = 'Empresas_CODIGO_POSTAL' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False - end - item - Name = 'TELEFONO_1' - DataType = datString - Size = 25 - BlobType = dabtUnknown - DisplayWidth = 0 - DisplayLabel = 'Tel'#233'fono 1' - Alignment = taLeftJustify - DictionaryEntry = 'Empresas_TELEFONO_1' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False - end - item - Name = 'TELEFONO_2' - DataType = datString - Size = 25 - BlobType = dabtUnknown - DisplayWidth = 0 - DisplayLabel = 'Tel'#233'fono 2' - Alignment = taLeftJustify - DictionaryEntry = 'Empresas_TELEFONO_2' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False - end - item - Name = 'MOVIL_1' - DataType = datString - Size = 25 - BlobType = dabtUnknown - DisplayWidth = 0 - DisplayLabel = 'M'#243'vil 1' - Alignment = taLeftJustify - DictionaryEntry = 'Empresas_MOVIL_1' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False - end - item - Name = 'MOVIL_2' - DataType = datString - Size = 25 - BlobType = dabtUnknown - DisplayWidth = 0 - DisplayLabel = 'M'#243'vil 2' - Alignment = taLeftJustify - DictionaryEntry = 'Empresas_MOVIL_2' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False - end - item - Name = 'FAX' - DataType = datString - Size = 25 - BlobType = dabtUnknown - DisplayWidth = 0 - DisplayLabel = 'Fax' - Alignment = taLeftJustify - DictionaryEntry = 'Empresas_FAX' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False - end - item - Name = 'EMAIL_1' - DataType = datString - Size = 255 - BlobType = dabtUnknown - DisplayWidth = 0 - DisplayLabel = 'E-mail 1' - Alignment = taLeftJustify - DictionaryEntry = 'Empresas_EMAIL_1' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False - end - item - Name = 'EMAIL_2' - DataType = datString - Size = 255 - BlobType = dabtUnknown - DisplayWidth = 0 - DisplayLabel = 'E-mail 2' - Alignment = taLeftJustify - DictionaryEntry = 'Empresas_EMAIL_2' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False - end - item - Name = 'PAGINA_WEB' - DataType = datString - Size = 255 - BlobType = dabtUnknown - DisplayWidth = 0 - DisplayLabel = 'P'#225'gina web' - Alignment = taLeftJustify - DictionaryEntry = 'Empresas_PAGINA_WEB' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False - end - item - Name = 'NOTAS' - DataType = datMemo - BlobType = dabtUnknown - DisplayWidth = 0 - DisplayLabel = 'Notas' - Alignment = taLeftJustify - DictionaryEntry = 'Empresas_NOTAS' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False - end - item - Name = 'FECHA_ALTA' - DataType = datDateTime - BlobType = dabtUnknown - DisplayWidth = 0 - DisplayLabel = 'Empresas_FECHA_ALTA' - Alignment = taLeftJustify - DictionaryEntry = 'Empresas_FECHA_ALTA' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False - end - item - Name = 'FECHA_MODIFICACION' - DataType = datDateTime - BlobType = dabtUnknown - DisplayWidth = 0 - DisplayLabel = 'Empresas_FECHA_MODIFICACION' - Alignment = taLeftJustify - DictionaryEntry = 'Empresas_FECHA_MODIFICACION' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False - end - item - Name = 'USUARIO' - DataType = datString - Size = 20 - BlobType = dabtUnknown - DisplayWidth = 0 - DisplayLabel = 'Empresas_USUARIO' - Alignment = taLeftJustify - DictionaryEntry = 'Empresas_USUARIO' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False - end - item - Name = 'LOGOTIPO' - DataType = datBlob - BlobType = dabtBlob - DisplayWidth = 0 - DisplayLabel = 'Logotipo' - Alignment = taLeftJustify - DictionaryEntry = 'Empresas_LOGOTIPO' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False - end - item - Name = 'REGISTRO_MERCANTIL' - DataType = datString - Size = 255 - BlobType = dabtUnknown - DisplayWidth = 0 - DisplayLabel = 'Registro mercantil' - Alignment = taLeftJustify - DictionaryEntry = 'Empresas_REGISTRO_MERCANTIL' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False - end - item - Name = 'IVA' - DataType = datFloat - BlobType = dabtUnknown - DisplayWidth = 0 - Alignment = taLeftJustify - DictionaryEntry = 'Empresas_IVA' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False - end> - Params = <> - MasterMappingMode = mmDataRequest - StreamingOptions = [soDisableEventsWhileStreaming] - SchemaCall.MethodName = 'GetDatasetSchema' - SchemaCall.Params = < - item - Name = 'Result' - ParamType = fResult - DataType = rtBinary - end - item - Name = 'aDatasetName' - ParamType = fIn - DataType = rtString - Value = 'Empresas' - end> - DataRequestCall.MethodName = 'GetDatasetDataEx' - DataRequestCall.Params = < - item - Name = 'Result' - ParamType = fResult - DataType = rtBinary - end - item - Name = 'DatasetName' - ParamType = fIn - DataType = rtString - Value = 'Empresas' - end - item - Name = 'Params' - ParamType = fIn - DataType = rtUserDefined - UserClassName = 'TDADatasetParamArray' - end - item - Name = 'UserFilter' - ParamType = fIn - DataType = rtString - Value = '' - end - item - Name = 'IncludeSchema' - ParamType = fIn - DataType = rtBoolean - Value = False - end - item - Name = 'MaxRecords' - ParamType = fIn - DataType = rtInteger - Value = -1 - end> - DataUpdateCall.MethodName = 'UpdateData' - DataUpdateCall.Params = < - item - Name = 'Result' - ParamType = fResult - DataType = rtBinary - end - item - Name = 'Delta' - ParamType = fIn - DataType = rtBinary - end> - ScriptCall.MethodName = 'GetDatasetScripts' - ScriptCall.Params = < - item - Name = 'Result' - ParamType = fResult - DataType = rtString - Value = '' - end - item - Name = 'DatasetNames' - ParamType = fIn - DataType = rtString - Value = 'Empresas' - end> - ReadOnly = False - RemoteService = RORemoteService - Adapter = DABinAdapter - DetailOptions = [dtCascadeOpenClose, dtCascadeApplyUpdates, dtAutoFetch, dtCascadeDelete, dtCascadeUpdate, dtDisableLogOfCascadeDeletes, dtDisableLogOfCascadeUpdates, dtIncludeInAllInOneFetch] - MasterOptions = [moCascadeOpenClose, moCascadeApplyUpdates, moCascadeDelete, moCascadeUpdate, moDisableLogOfCascadeDeletes, moDisableLogOfCascadeUpdates] - LogicalName = 'Empresas' - IndexDefs = <> - Left = 176 - Top = 24 - end - object ds_Empresas: TDADataSource - DataTable = tbl_Empresas - Left = 304 - Top = 24 - end - object DADesigntimeCall1: TDADesigntimeCall - RemoteRequest.MethodName = 'Login' - RemoteRequest.Params = < - item - Name = 'Result' - ParamType = fResult - DataType = rtBoolean - end - item - Name = 'User' - ParamType = fIn - DataType = rtString - Value = 'Administrador' - end - item - Name = 'Password' - ParamType = fIn - DataType = rtString - Value = '1' - end - item - Name = 'LoginInfo' - ParamType = fOut - DataType = rtUserDefined - UserClassName = 'TRdxLoginInfo' - end> - RemoteService = LoginRemoteService - Left = 32 - Top = 200 - end - object LoginRemoteService: TRORemoteService - ServiceName = 'srvLogin' - Message = dmConexion.ROMessage - Channel = dmConexion.ROChannel - Left = 32 - Top = 256 - end - object ROChannel: TROWinInetHTTPChannel - ServerLocators = <> - DispatchOptions = [] - ProbeServers = False - ProbeFrequency = 60000 - UserAgent = 'RemObjects SDK' - TargetURL = 'http://localhost:8099/bin' - Left = 32 - Top = 312 - end - object ROMessage: TROBinMessage - Left = 32 - Top = 364 - end - object tbl_EmpresasDatosBanco: TDACDSDataTable - RemoteUpdatesOptions = [] - Fields = < - item - Name = 'ID' - DataType = datInteger - BlobType = dabtUnknown - DisplayWidth = 0 - Alignment = taLeftJustify - DictionaryEntry = 'EmpresasDatosBanco_ID' - InPrimaryKey = True - Calculated = False - Lookup = False - LookupCache = False - end - item - Name = 'ID_EMPRESA' - DataType = datInteger - BlobType = dabtUnknown - DisplayWidth = 0 - DisplayLabel = 'EmpresasDatosBanco_ID_EMPRESA' - Alignment = taLeftJustify - DictionaryEntry = 'EmpresasDatosBanco_ID_EMPRESA' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False - end - item - Name = 'NOMBRE' - DataType = datString - Size = 255 - BlobType = dabtUnknown - DisplayWidth = 0 - DisplayLabel = 'Nombre del banco' - Alignment = taLeftJustify - DictionaryEntry = 'EmpresasDatosBanco_NOMBRE' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False - end - item - Name = 'ENTIDAD' - DataType = datString - Size = 15 - BlobType = dabtUnknown - DisplayWidth = 0 - DisplayLabel = 'Entidad' - Alignment = taLeftJustify - DictionaryEntry = 'EmpresasDatosBanco_ENTIDAD' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False - end - item - Name = 'SUCURSAL' - DataType = datString - Size = 15 - BlobType = dabtUnknown - DisplayWidth = 0 - DisplayLabel = 'Sucursal' - Alignment = taLeftJustify - DictionaryEntry = 'EmpresasDatosBanco_SUCURSAL' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False - end - item - Name = 'DC' - DataType = datString - Size = 15 - BlobType = dabtUnknown - DisplayWidth = 0 - Alignment = taLeftJustify - DictionaryEntry = 'EmpresasDatosBanco_DC' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False - end - item - Name = 'CUENTA' - DataType = datString - Size = 15 - BlobType = dabtUnknown - DisplayWidth = 0 - DisplayLabel = 'Cuenta' - Alignment = taLeftJustify - DictionaryEntry = 'EmpresasDatosBanco_CUENTA' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False - end - item - Name = 'SUFIJO_N19' - DataType = datString - Size = 3 - BlobType = dabtUnknown - DisplayWidth = 0 - DisplayLabel = 'Sufijo 19' - Alignment = taLeftJustify - DictionaryEntry = 'EmpresasDatosBanco_SUFIJO_N19' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False - end - item - Name = 'SUFIJO_N58' - DataType = datString - Size = 3 - BlobType = dabtUnknown - DisplayWidth = 0 - DisplayLabel = 'Sufijo 58' - Alignment = taLeftJustify - DictionaryEntry = 'EmpresasDatosBanco_SUFIJO_N58' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False - end> - Params = < - item - Name = 'ID_EMPRESA' - DataType = datInteger - BlobType = dabtUnknown - Value = '' - ParamType = daptInput - end> - MasterMappingMode = mmParams - MasterParamsMappings.Strings = ( - 'ID_EMPRESA=ID') - StreamingOptions = [soDisableEventsWhileStreaming] - SchemaCall.MethodName = 'GetDatasetSchema' - SchemaCall.Params = < - item - Name = 'Result' - ParamType = fResult - DataType = rtBinary - end - item - Name = 'aDatasetName' - ParamType = fIn - DataType = rtString - Value = 'EmpresasDatosBanco' - end> - DataRequestCall.MethodName = 'GetDatasetDataEx' - DataRequestCall.Params = < - item - Name = 'Result' - ParamType = fResult - DataType = rtBinary - end - item - Name = 'DatasetName' - ParamType = fIn - DataType = rtString - Value = 'EmpresasDatosBanco' - end - item - Name = 'Params' - ParamType = fIn - DataType = rtUserDefined - UserClassName = 'TDADatasetParamArray' - end - item - Name = 'UserFilter' - ParamType = fIn - DataType = rtString - Value = '' - end - item - Name = 'IncludeSchema' - ParamType = fIn - DataType = rtBoolean - Value = False - end - item - Name = 'MaxRecords' - ParamType = fIn - DataType = rtInteger - Value = -1 - end> - DataUpdateCall.MethodName = 'UpdateData' - DataUpdateCall.Params = < - item - Name = 'Result' - ParamType = fResult - DataType = rtBinary - end - item - Name = 'Delta' - ParamType = fIn - DataType = rtBinary - end> - ScriptCall.MethodName = 'GetDatasetScripts' - ScriptCall.Params = < - item - Name = 'Result' - ParamType = fResult - DataType = rtString - Value = '' - end - item - Name = 'DatasetNames' - ParamType = fIn - DataType = rtString - Value = 'EmpresasDatosBanco' - end> - ReadOnly = False - RemoteService = RORemoteService - Adapter = DABinAdapter - MasterSource = ds_Empresas - MasterFields = 'ID' - DetailFields = 'ID_EMPRESA' - DetailOptions = [dtCascadeOpenClose, dtCascadeApplyUpdates, dtAutoFetch, dtCascadeDelete, dtCascadeUpdate, dtDisableLogOfCascadeDeletes, dtDisableLogOfCascadeUpdates, dtIncludeInAllInOneFetch] - MasterOptions = [moCascadeOpenClose, moCascadeApplyUpdates, moCascadeDelete, moCascadeUpdate, moDisableLogOfCascadeDeletes, moDisableLogOfCascadeUpdates] - LogicalName = 'EmpresasDatosBanco' - IndexDefs = <> - Left = 176 - Top = 112 - end - object ds_EmpresasDatosBanco: TDADataSource - DataTable = tbl_EmpresasDatosBanco - Left = 304 - Top = 112 - end -end diff --git a/Source/Modulos/Empresas/Empresas_Group.bdsgroup b/Source/Modulos/Empresas/Empresas_Group.bdsgroup deleted file mode 100644 index 3fefbff7..00000000 --- a/Source/Modulos/Empresas/Empresas_Group.bdsgroup +++ /dev/null @@ -1,31 +0,0 @@ - - - - - - - - - - - ..\..\Base\Base.bdsproj - ..\..\Base\GUIBase\GUIBase.bdsproj - ..\..\Base\Usuarios\Usuarios.bdsproj - Model\Empresas_model.bdsproj - Data\Empresas_data.bdsproj - Controller\Empresas_controller.bdsproj - Views\Empresas_view.bdsproj - Plugin\Empresas_plugin.bdsproj - Test\Empresas_Tests.bdsproj - Base.bpl GUIBase.bpl Usuarios.bpl Empresas_model.bpl Empresas_data.bpl Empresas_controller.bpl Empresas_view.bpl Empresas_plugin.bpl Empresas_Tests.exe - - - - - - - - - - diff --git a/Source/Modulos/Empresas/Model/Empresas_model.bdsproj b/Source/Modulos/Empresas/Model/Empresas_model.bdsproj deleted file mode 100644 index 84e8891d..00000000 --- a/Source/Modulos/Empresas/Model/Empresas_model.bdsproj +++ /dev/null @@ -1,497 +0,0 @@ - - - - - - - - - - - - Empresas_model.dpk - - - 7.0 - - - 8 - 0 - 1 - 1 - 0 - 0 - 1 - 1 - 1 - 0 - 0 - 1 - 0 - 1 - 1 - 1 - 0 - 0 - 0 - 0 - 0 - 1 - 0 - 1 - 1 - 1 - True - True - WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; - - False - - True - True - True - True - True - True - True - True - True - True - True - True - True - True - True - True - True - True - True - True - True - True - True - True - True - True - True - True - True - True - True - True - True - True - True - True - True - True - True - True - True - True - True - True - True - True - False - False - False - True - True - True - True - True - True - - - - 3 - 0 - False - 1 - False - False - False - 16384 - 1048576 - 4194304 - Empresas - - - - .\ - ..\..\..\..\Output\Debug\Cliente - ..\..\Lib - ..\..\..\Lib;..\..\Lib - - - - False - - - - - - False - - - True - False - - - - $00000000 - - - - True - False - 1 - 0 - 0 - 0 - False - False - False - False - False - 3082 - 1252 - - - - - 1.0.0.0 - - - - - - 1.0.0.0 - - - JCL Debug IDE extension - JCL Project Analyzer - JCL Open and Save IDE dialogs with favorite folders - - - - False - diff --git a/Source/Modulos/Empresas/Model/Empresas_model.drc b/Source/Modulos/Empresas/Model/Empresas_model.drc deleted file mode 100644 index 7642ac97..00000000 --- a/Source/Modulos/Empresas/Model/Empresas_model.drc +++ /dev/null @@ -1,14 +0,0 @@ -/* VER180 - Generated by the Borland Delphi Pascal Compiler - because -GD or --drc was supplied to the compiler. - - This file contains compiler-generated resources that - were bound to the executable. - If this file is empty, then no compiler-generated - resources were bound to the produced executable. -*/ - -STRINGTABLE -BEGIN -END - diff --git a/Source/Modulos/Empresas/Model/Empresas_model.rc b/Source/Modulos/Empresas/Model/Empresas_model.rc deleted file mode 100644 index e69de29b..00000000 diff --git a/Source/Modulos/Empresas/Model/Empresas_model.res b/Source/Modulos/Empresas/Model/Empresas_model.res deleted file mode 100644 index 36f26e23..00000000 Binary files a/Source/Modulos/Empresas/Model/Empresas_model.res and /dev/null differ diff --git a/Source/Modulos/Empresas/Model/schEmpresasClient_Intf.pas b/Source/Modulos/Empresas/Model/schEmpresasClient_Intf.pas deleted file mode 100644 index 1f2a557f..00000000 --- a/Source/Modulos/Empresas/Model/schEmpresasClient_Intf.pas +++ /dev/null @@ -1,1346 +0,0 @@ -unit schEmpresasClient_Intf; - -interface - -uses - Classes, DB, SysUtils, uROClasses, uDADataTable; - -const - { Data table rules ids - Feel free to change them to something more human readable - but make sure they are unique in the context of your application } - RID_Empresas = '{BDE24289-FA14-4BFD-90FC-C75CDA2903B4}'; - RID_EmpresasDatosBanco = '{B38F881C-BE9D-4956-BC5B-06C922A088A8}'; - RID_Empresas_Refresh = '{74AFE46D-F556-467E-A6AE-1B30229DB923}'; - RID_EmpresasDatosBanco_Refresh = '{A43716FA-0A11-4A8F-9FFA-9DF825914C22}'; - - { Data table names } - nme_Empresas = 'Empresas'; - nme_EmpresasDatosBanco = 'EmpresasDatosBanco'; - nme_Empresas_Refresh = 'Empresas_Refresh'; - nme_EmpresasDatosBanco_Refresh = 'EmpresasDatosBanco_Refresh'; - - { Empresas fields } - fld_EmpresasID = 'ID'; - fld_EmpresasNIF_CIF = 'NIF_CIF'; - fld_EmpresasNOMBRE = 'NOMBRE'; - fld_EmpresasRAZON_SOCIAL = 'RAZON_SOCIAL'; - fld_EmpresasCALLE = 'CALLE'; - fld_EmpresasPOBLACION = 'POBLACION'; - fld_EmpresasPROVINCIA = 'PROVINCIA'; - fld_EmpresasCODIGO_POSTAL = 'CODIGO_POSTAL'; - fld_EmpresasTELEFONO_1 = 'TELEFONO_1'; - fld_EmpresasTELEFONO_2 = 'TELEFONO_2'; - fld_EmpresasMOVIL_1 = 'MOVIL_1'; - fld_EmpresasMOVIL_2 = 'MOVIL_2'; - fld_EmpresasFAX = 'FAX'; - fld_EmpresasEMAIL_1 = 'EMAIL_1'; - fld_EmpresasEMAIL_2 = 'EMAIL_2'; - fld_EmpresasPAGINA_WEB = 'PAGINA_WEB'; - fld_EmpresasNOTAS = 'NOTAS'; - fld_EmpresasFECHA_ALTA = 'FECHA_ALTA'; - fld_EmpresasFECHA_MODIFICACION = 'FECHA_MODIFICACION'; - fld_EmpresasUSUARIO = 'USUARIO'; - fld_EmpresasLOGOTIPO = 'LOGOTIPO'; - fld_EmpresasREGISTRO_MERCANTIL = 'REGISTRO_MERCANTIL'; - fld_EmpresasIVA = 'IVA'; - - { Empresas field indexes } - idx_EmpresasID = 0; - idx_EmpresasNIF_CIF = 1; - idx_EmpresasNOMBRE = 2; - idx_EmpresasRAZON_SOCIAL = 3; - idx_EmpresasCALLE = 4; - idx_EmpresasPOBLACION = 5; - idx_EmpresasPROVINCIA = 6; - idx_EmpresasCODIGO_POSTAL = 7; - idx_EmpresasTELEFONO_1 = 8; - idx_EmpresasTELEFONO_2 = 9; - idx_EmpresasMOVIL_1 = 10; - idx_EmpresasMOVIL_2 = 11; - idx_EmpresasFAX = 12; - idx_EmpresasEMAIL_1 = 13; - idx_EmpresasEMAIL_2 = 14; - idx_EmpresasPAGINA_WEB = 15; - idx_EmpresasNOTAS = 16; - idx_EmpresasFECHA_ALTA = 17; - idx_EmpresasFECHA_MODIFICACION = 18; - idx_EmpresasUSUARIO = 19; - idx_EmpresasLOGOTIPO = 20; - idx_EmpresasREGISTRO_MERCANTIL = 21; - idx_EmpresasIVA = 22; - - { EmpresasDatosBanco fields } - fld_EmpresasDatosBancoID = 'ID'; - fld_EmpresasDatosBancoID_EMPRESA = 'ID_EMPRESA'; - fld_EmpresasDatosBancoNOMBRE = 'NOMBRE'; - fld_EmpresasDatosBancoENTIDAD = 'ENTIDAD'; - fld_EmpresasDatosBancoSUCURSAL = 'SUCURSAL'; - fld_EmpresasDatosBancoDC = 'DC'; - fld_EmpresasDatosBancoCUENTA = 'CUENTA'; - fld_EmpresasDatosBancoSUFIJO_N19 = 'SUFIJO_N19'; - fld_EmpresasDatosBancoSUFIJO_N58 = 'SUFIJO_N58'; - - { EmpresasDatosBanco field indexes } - idx_EmpresasDatosBancoID = 0; - idx_EmpresasDatosBancoID_EMPRESA = 1; - idx_EmpresasDatosBancoNOMBRE = 2; - idx_EmpresasDatosBancoENTIDAD = 3; - idx_EmpresasDatosBancoSUCURSAL = 4; - idx_EmpresasDatosBancoDC = 5; - idx_EmpresasDatosBancoCUENTA = 6; - idx_EmpresasDatosBancoSUFIJO_N19 = 7; - idx_EmpresasDatosBancoSUFIJO_N58 = 8; - - { Empresas_Refresh fields } - fld_Empresas_RefreshID = 'ID'; - fld_Empresas_RefreshNIF_CIF = 'NIF_CIF'; - fld_Empresas_RefreshNOMBRE = 'NOMBRE'; - fld_Empresas_RefreshRAZON_SOCIAL = 'RAZON_SOCIAL'; - fld_Empresas_RefreshCALLE = 'CALLE'; - fld_Empresas_RefreshPOBLACION = 'POBLACION'; - fld_Empresas_RefreshPROVINCIA = 'PROVINCIA'; - fld_Empresas_RefreshCODIGO_POSTAL = 'CODIGO_POSTAL'; - fld_Empresas_RefreshTELEFONO_1 = 'TELEFONO_1'; - fld_Empresas_RefreshTELEFONO_2 = 'TELEFONO_2'; - fld_Empresas_RefreshMOVIL_1 = 'MOVIL_1'; - fld_Empresas_RefreshMOVIL_2 = 'MOVIL_2'; - fld_Empresas_RefreshFAX = 'FAX'; - fld_Empresas_RefreshEMAIL_1 = 'EMAIL_1'; - fld_Empresas_RefreshEMAIL_2 = 'EMAIL_2'; - fld_Empresas_RefreshPAGINA_WEB = 'PAGINA_WEB'; - fld_Empresas_RefreshNOTAS = 'NOTAS'; - fld_Empresas_RefreshFECHA_ALTA = 'FECHA_ALTA'; - fld_Empresas_RefreshFECHA_MODIFICACION = 'FECHA_MODIFICACION'; - fld_Empresas_RefreshUSUARIO = 'USUARIO'; - fld_Empresas_RefreshLOGOTIPO = 'LOGOTIPO'; - fld_Empresas_RefreshREGISTRO_MERCANTIL = 'REGISTRO_MERCANTIL'; - fld_Empresas_RefreshIVA = 'IVA'; - - { Empresas_Refresh field indexes } - idx_Empresas_RefreshID = 0; - idx_Empresas_RefreshNIF_CIF = 1; - idx_Empresas_RefreshNOMBRE = 2; - idx_Empresas_RefreshRAZON_SOCIAL = 3; - idx_Empresas_RefreshCALLE = 4; - idx_Empresas_RefreshPOBLACION = 5; - idx_Empresas_RefreshPROVINCIA = 6; - idx_Empresas_RefreshCODIGO_POSTAL = 7; - idx_Empresas_RefreshTELEFONO_1 = 8; - idx_Empresas_RefreshTELEFONO_2 = 9; - idx_Empresas_RefreshMOVIL_1 = 10; - idx_Empresas_RefreshMOVIL_2 = 11; - idx_Empresas_RefreshFAX = 12; - idx_Empresas_RefreshEMAIL_1 = 13; - idx_Empresas_RefreshEMAIL_2 = 14; - idx_Empresas_RefreshPAGINA_WEB = 15; - idx_Empresas_RefreshNOTAS = 16; - idx_Empresas_RefreshFECHA_ALTA = 17; - idx_Empresas_RefreshFECHA_MODIFICACION = 18; - idx_Empresas_RefreshUSUARIO = 19; - idx_Empresas_RefreshLOGOTIPO = 20; - idx_Empresas_RefreshREGISTRO_MERCANTIL = 21; - idx_Empresas_RefreshIVA = 22; - - { EmpresasDatosBanco_Refresh fields } - fld_EmpresasDatosBanco_RefreshID = 'ID'; - fld_EmpresasDatosBanco_RefreshID_EMPRESA = 'ID_EMPRESA'; - fld_EmpresasDatosBanco_RefreshNOMBRE = 'NOMBRE'; - fld_EmpresasDatosBanco_RefreshENTIDAD = 'ENTIDAD'; - fld_EmpresasDatosBanco_RefreshSUCURSAL = 'SUCURSAL'; - fld_EmpresasDatosBanco_RefreshDC = 'DC'; - fld_EmpresasDatosBanco_RefreshCUENTA = 'CUENTA'; - fld_EmpresasDatosBanco_RefreshSUFIJO_N19 = 'SUFIJO_N19'; - fld_EmpresasDatosBanco_RefreshSUFIJO_N58 = 'SUFIJO_N58'; - - { EmpresasDatosBanco_Refresh field indexes } - idx_EmpresasDatosBanco_RefreshID = 0; - idx_EmpresasDatosBanco_RefreshID_EMPRESA = 1; - idx_EmpresasDatosBanco_RefreshNOMBRE = 2; - idx_EmpresasDatosBanco_RefreshENTIDAD = 3; - idx_EmpresasDatosBanco_RefreshSUCURSAL = 4; - idx_EmpresasDatosBanco_RefreshDC = 5; - idx_EmpresasDatosBanco_RefreshCUENTA = 6; - idx_EmpresasDatosBanco_RefreshSUFIJO_N19 = 7; - idx_EmpresasDatosBanco_RefreshSUFIJO_N58 = 8; - -type - { IEmpresas } - IEmpresas = interface(IDAStronglyTypedDataTable) - ['{F5A4EFC5-47CF-4091-B7EA-B1F6F93195F5}'] - { Property getters and setters } - function GetIDValue: Integer; - procedure SetIDValue(const aValue: Integer); - function GetNIF_CIFValue: String; - procedure SetNIF_CIFValue(const aValue: String); - function GetNOMBREValue: String; - procedure SetNOMBREValue(const aValue: String); - function GetRAZON_SOCIALValue: String; - procedure SetRAZON_SOCIALValue(const aValue: String); - function GetCALLEValue: String; - procedure SetCALLEValue(const aValue: String); - function GetPOBLACIONValue: String; - procedure SetPOBLACIONValue(const aValue: String); - function GetPROVINCIAValue: String; - procedure SetPROVINCIAValue(const aValue: String); - function GetCODIGO_POSTALValue: String; - procedure SetCODIGO_POSTALValue(const aValue: String); - function GetTELEFONO_1Value: String; - procedure SetTELEFONO_1Value(const aValue: String); - function GetTELEFONO_2Value: String; - procedure SetTELEFONO_2Value(const aValue: String); - function GetMOVIL_1Value: String; - procedure SetMOVIL_1Value(const aValue: String); - function GetMOVIL_2Value: String; - procedure SetMOVIL_2Value(const aValue: String); - function GetFAXValue: String; - procedure SetFAXValue(const aValue: String); - function GetEMAIL_1Value: String; - procedure SetEMAIL_1Value(const aValue: String); - function GetEMAIL_2Value: String; - procedure SetEMAIL_2Value(const aValue: String); - function GetPAGINA_WEBValue: String; - procedure SetPAGINA_WEBValue(const aValue: String); - function GetNOTASValue: IROStrings; - procedure SetNOTASValue(const aValue: IROStrings); - function GetFECHA_ALTAValue: DateTime; - procedure SetFECHA_ALTAValue(const aValue: DateTime); - function GetFECHA_MODIFICACIONValue: DateTime; - procedure SetFECHA_MODIFICACIONValue(const aValue: DateTime); - function GetUSUARIOValue: String; - procedure SetUSUARIOValue(const aValue: String); - function GetLOGOTIPOValue: IROStream; - procedure SetLOGOTIPOValue(const aValue: IROStream); - function GetREGISTRO_MERCANTILValue: String; - procedure SetREGISTRO_MERCANTILValue(const aValue: String); - function GetIVAValue: Float; - procedure SetIVAValue(const aValue: Float); - - - { Properties } - property ID: Integer read GetIDValue write SetIDValue; - property NIF_CIF: String read GetNIF_CIFValue write SetNIF_CIFValue; - property NOMBRE: String read GetNOMBREValue write SetNOMBREValue; - property RAZON_SOCIAL: String read GetRAZON_SOCIALValue write SetRAZON_SOCIALValue; - property CALLE: String read GetCALLEValue write SetCALLEValue; - property POBLACION: String read GetPOBLACIONValue write SetPOBLACIONValue; - property PROVINCIA: String read GetPROVINCIAValue write SetPROVINCIAValue; - property CODIGO_POSTAL: String read GetCODIGO_POSTALValue write SetCODIGO_POSTALValue; - property TELEFONO_1: String read GetTELEFONO_1Value write SetTELEFONO_1Value; - property TELEFONO_2: String read GetTELEFONO_2Value write SetTELEFONO_2Value; - property MOVIL_1: String read GetMOVIL_1Value write SetMOVIL_1Value; - property MOVIL_2: String read GetMOVIL_2Value write SetMOVIL_2Value; - property FAX: String read GetFAXValue write SetFAXValue; - property EMAIL_1: String read GetEMAIL_1Value write SetEMAIL_1Value; - property EMAIL_2: String read GetEMAIL_2Value write SetEMAIL_2Value; - property PAGINA_WEB: String read GetPAGINA_WEBValue write SetPAGINA_WEBValue; - property NOTAS: IROStrings read GetNOTASValue write SetNOTASValue; - property FECHA_ALTA: DateTime read GetFECHA_ALTAValue write SetFECHA_ALTAValue; - property FECHA_MODIFICACION: DateTime read GetFECHA_MODIFICACIONValue write SetFECHA_MODIFICACIONValue; - property USUARIO: String read GetUSUARIOValue write SetUSUARIOValue; - property LOGOTIPO: IROStream read GetLOGOTIPOValue write SetLOGOTIPOValue; - property REGISTRO_MERCANTIL: String read GetREGISTRO_MERCANTILValue write SetREGISTRO_MERCANTILValue; - property IVA: Float read GetIVAValue write SetIVAValue; - end; - - { TEmpresasDataTableRules } - TEmpresasDataTableRules = class(TDADataTableRules, IEmpresas) - private - protected - { Property getters and setters } - function GetIDValue: Integer; virtual; - procedure SetIDValue(const aValue: Integer); virtual; - function GetNIF_CIFValue: String; virtual; - procedure SetNIF_CIFValue(const aValue: String); virtual; - function GetNOMBREValue: String; virtual; - procedure SetNOMBREValue(const aValue: String); virtual; - function GetRAZON_SOCIALValue: String; virtual; - procedure SetRAZON_SOCIALValue(const aValue: String); virtual; - function GetCALLEValue: String; virtual; - procedure SetCALLEValue(const aValue: String); virtual; - function GetPOBLACIONValue: String; virtual; - procedure SetPOBLACIONValue(const aValue: String); virtual; - function GetPROVINCIAValue: String; virtual; - procedure SetPROVINCIAValue(const aValue: String); virtual; - function GetCODIGO_POSTALValue: String; virtual; - procedure SetCODIGO_POSTALValue(const aValue: String); virtual; - function GetTELEFONO_1Value: String; virtual; - procedure SetTELEFONO_1Value(const aValue: String); virtual; - function GetTELEFONO_2Value: String; virtual; - procedure SetTELEFONO_2Value(const aValue: String); virtual; - function GetMOVIL_1Value: String; virtual; - procedure SetMOVIL_1Value(const aValue: String); virtual; - function GetMOVIL_2Value: String; virtual; - procedure SetMOVIL_2Value(const aValue: String); virtual; - function GetFAXValue: String; virtual; - procedure SetFAXValue(const aValue: String); virtual; - function GetEMAIL_1Value: String; virtual; - procedure SetEMAIL_1Value(const aValue: String); virtual; - function GetEMAIL_2Value: String; virtual; - procedure SetEMAIL_2Value(const aValue: String); virtual; - function GetPAGINA_WEBValue: String; virtual; - procedure SetPAGINA_WEBValue(const aValue: String); virtual; - function GetNOTASValue: IROStrings; virtual; - procedure SetNOTASValue(const aValue: IROStrings); virtual; - function GetFECHA_ALTAValue: DateTime; virtual; - procedure SetFECHA_ALTAValue(const aValue: DateTime); virtual; - function GetFECHA_MODIFICACIONValue: DateTime; virtual; - procedure SetFECHA_MODIFICACIONValue(const aValue: DateTime); virtual; - function GetUSUARIOValue: String; virtual; - procedure SetUSUARIOValue(const aValue: String); virtual; - function GetLOGOTIPOValue: IROStream; virtual; - procedure SetLOGOTIPOValue(const aValue: IROStream); virtual; - function GetREGISTRO_MERCANTILValue: String; virtual; - procedure SetREGISTRO_MERCANTILValue(const aValue: String); virtual; - function GetIVAValue: Float; virtual; - procedure SetIVAValue(const aValue: Float); virtual; - - { Properties } - property ID: Integer read GetIDValue write SetIDValue; - property NIF_CIF: String read GetNIF_CIFValue write SetNIF_CIFValue; - property NOMBRE: String read GetNOMBREValue write SetNOMBREValue; - property RAZON_SOCIAL: String read GetRAZON_SOCIALValue write SetRAZON_SOCIALValue; - property CALLE: String read GetCALLEValue write SetCALLEValue; - property POBLACION: String read GetPOBLACIONValue write SetPOBLACIONValue; - property PROVINCIA: String read GetPROVINCIAValue write SetPROVINCIAValue; - property CODIGO_POSTAL: String read GetCODIGO_POSTALValue write SetCODIGO_POSTALValue; - property TELEFONO_1: String read GetTELEFONO_1Value write SetTELEFONO_1Value; - property TELEFONO_2: String read GetTELEFONO_2Value write SetTELEFONO_2Value; - property MOVIL_1: String read GetMOVIL_1Value write SetMOVIL_1Value; - property MOVIL_2: String read GetMOVIL_2Value write SetMOVIL_2Value; - property FAX: String read GetFAXValue write SetFAXValue; - property EMAIL_1: String read GetEMAIL_1Value write SetEMAIL_1Value; - property EMAIL_2: String read GetEMAIL_2Value write SetEMAIL_2Value; - property PAGINA_WEB: String read GetPAGINA_WEBValue write SetPAGINA_WEBValue; - property NOTAS: IROStrings read GetNOTASValue write SetNOTASValue; - property FECHA_ALTA: DateTime read GetFECHA_ALTAValue write SetFECHA_ALTAValue; - property FECHA_MODIFICACION: DateTime read GetFECHA_MODIFICACIONValue write SetFECHA_MODIFICACIONValue; - property USUARIO: String read GetUSUARIOValue write SetUSUARIOValue; - property LOGOTIPO: IROStream read GetLOGOTIPOValue write SetLOGOTIPOValue; - property REGISTRO_MERCANTIL: String read GetREGISTRO_MERCANTILValue write SetREGISTRO_MERCANTILValue; - property IVA: Float read GetIVAValue write SetIVAValue; - - public - constructor Create(aDataTable: TDADataTable); override; - destructor Destroy; override; - - end; - - { IEmpresasDatosBanco } - IEmpresasDatosBanco = interface(IDAStronglyTypedDataTable) - ['{83F8EA10-9660-49FD-8A99-6C9775B435F7}'] - { Property getters and setters } - function GetIDValue: Integer; - procedure SetIDValue(const aValue: Integer); - function GetID_EMPRESAValue: Integer; - procedure SetID_EMPRESAValue(const aValue: Integer); - function GetNOMBREValue: String; - procedure SetNOMBREValue(const aValue: String); - function GetENTIDADValue: String; - procedure SetENTIDADValue(const aValue: String); - function GetSUCURSALValue: String; - procedure SetSUCURSALValue(const aValue: String); - function GetDCValue: String; - procedure SetDCValue(const aValue: String); - function GetCUENTAValue: String; - procedure SetCUENTAValue(const aValue: String); - function GetSUFIJO_N19Value: String; - procedure SetSUFIJO_N19Value(const aValue: String); - function GetSUFIJO_N58Value: String; - procedure SetSUFIJO_N58Value(const aValue: String); - - - { Properties } - property ID: Integer read GetIDValue write SetIDValue; - property ID_EMPRESA: Integer read GetID_EMPRESAValue write SetID_EMPRESAValue; - property NOMBRE: String read GetNOMBREValue write SetNOMBREValue; - property ENTIDAD: String read GetENTIDADValue write SetENTIDADValue; - property SUCURSAL: String read GetSUCURSALValue write SetSUCURSALValue; - property DC: String read GetDCValue write SetDCValue; - property CUENTA: String read GetCUENTAValue write SetCUENTAValue; - property SUFIJO_N19: String read GetSUFIJO_N19Value write SetSUFIJO_N19Value; - property SUFIJO_N58: String read GetSUFIJO_N58Value write SetSUFIJO_N58Value; - end; - - { TEmpresasDatosBancoDataTableRules } - TEmpresasDatosBancoDataTableRules = class(TDADataTableRules, IEmpresasDatosBanco) - private - protected - { Property getters and setters } - function GetIDValue: Integer; virtual; - procedure SetIDValue(const aValue: Integer); virtual; - function GetID_EMPRESAValue: Integer; virtual; - procedure SetID_EMPRESAValue(const aValue: Integer); virtual; - function GetNOMBREValue: String; virtual; - procedure SetNOMBREValue(const aValue: String); virtual; - function GetENTIDADValue: String; virtual; - procedure SetENTIDADValue(const aValue: String); virtual; - function GetSUCURSALValue: String; virtual; - procedure SetSUCURSALValue(const aValue: String); virtual; - function GetDCValue: String; virtual; - procedure SetDCValue(const aValue: String); virtual; - function GetCUENTAValue: String; virtual; - procedure SetCUENTAValue(const aValue: String); virtual; - function GetSUFIJO_N19Value: String; virtual; - procedure SetSUFIJO_N19Value(const aValue: String); virtual; - function GetSUFIJO_N58Value: String; virtual; - procedure SetSUFIJO_N58Value(const aValue: String); virtual; - - { Properties } - property ID: Integer read GetIDValue write SetIDValue; - property ID_EMPRESA: Integer read GetID_EMPRESAValue write SetID_EMPRESAValue; - property NOMBRE: String read GetNOMBREValue write SetNOMBREValue; - property ENTIDAD: String read GetENTIDADValue write SetENTIDADValue; - property SUCURSAL: String read GetSUCURSALValue write SetSUCURSALValue; - property DC: String read GetDCValue write SetDCValue; - property CUENTA: String read GetCUENTAValue write SetCUENTAValue; - property SUFIJO_N19: String read GetSUFIJO_N19Value write SetSUFIJO_N19Value; - property SUFIJO_N58: String read GetSUFIJO_N58Value write SetSUFIJO_N58Value; - - public - constructor Create(aDataTable: TDADataTable); override; - destructor Destroy; override; - - end; - - { IEmpresas_Refresh } - IEmpresas_Refresh = interface(IDAStronglyTypedDataTable) - ['{F4E3D225-DEB3-4ADD-BA79-2845247B3A3A}'] - { Property getters and setters } - function GetIDValue: Integer; - procedure SetIDValue(const aValue: Integer); - function GetNIF_CIFValue: String; - procedure SetNIF_CIFValue(const aValue: String); - function GetNOMBREValue: String; - procedure SetNOMBREValue(const aValue: String); - function GetRAZON_SOCIALValue: String; - procedure SetRAZON_SOCIALValue(const aValue: String); - function GetCALLEValue: String; - procedure SetCALLEValue(const aValue: String); - function GetPOBLACIONValue: String; - procedure SetPOBLACIONValue(const aValue: String); - function GetPROVINCIAValue: String; - procedure SetPROVINCIAValue(const aValue: String); - function GetCODIGO_POSTALValue: String; - procedure SetCODIGO_POSTALValue(const aValue: String); - function GetTELEFONO_1Value: String; - procedure SetTELEFONO_1Value(const aValue: String); - function GetTELEFONO_2Value: String; - procedure SetTELEFONO_2Value(const aValue: String); - function GetMOVIL_1Value: String; - procedure SetMOVIL_1Value(const aValue: String); - function GetMOVIL_2Value: String; - procedure SetMOVIL_2Value(const aValue: String); - function GetFAXValue: String; - procedure SetFAXValue(const aValue: String); - function GetEMAIL_1Value: String; - procedure SetEMAIL_1Value(const aValue: String); - function GetEMAIL_2Value: String; - procedure SetEMAIL_2Value(const aValue: String); - function GetPAGINA_WEBValue: String; - procedure SetPAGINA_WEBValue(const aValue: String); - function GetNOTASValue: IROStrings; - procedure SetNOTASValue(const aValue: IROStrings); - function GetFECHA_ALTAValue: DateTime; - procedure SetFECHA_ALTAValue(const aValue: DateTime); - function GetFECHA_MODIFICACIONValue: DateTime; - procedure SetFECHA_MODIFICACIONValue(const aValue: DateTime); - function GetUSUARIOValue: String; - procedure SetUSUARIOValue(const aValue: String); - function GetLOGOTIPOValue: IROStream; - procedure SetLOGOTIPOValue(const aValue: IROStream); - function GetREGISTRO_MERCANTILValue: String; - procedure SetREGISTRO_MERCANTILValue(const aValue: String); - function GetIVAValue: Float; - procedure SetIVAValue(const aValue: Float); - - - { Properties } - property ID: Integer read GetIDValue write SetIDValue; - property NIF_CIF: String read GetNIF_CIFValue write SetNIF_CIFValue; - property NOMBRE: String read GetNOMBREValue write SetNOMBREValue; - property RAZON_SOCIAL: String read GetRAZON_SOCIALValue write SetRAZON_SOCIALValue; - property CALLE: String read GetCALLEValue write SetCALLEValue; - property POBLACION: String read GetPOBLACIONValue write SetPOBLACIONValue; - property PROVINCIA: String read GetPROVINCIAValue write SetPROVINCIAValue; - property CODIGO_POSTAL: String read GetCODIGO_POSTALValue write SetCODIGO_POSTALValue; - property TELEFONO_1: String read GetTELEFONO_1Value write SetTELEFONO_1Value; - property TELEFONO_2: String read GetTELEFONO_2Value write SetTELEFONO_2Value; - property MOVIL_1: String read GetMOVIL_1Value write SetMOVIL_1Value; - property MOVIL_2: String read GetMOVIL_2Value write SetMOVIL_2Value; - property FAX: String read GetFAXValue write SetFAXValue; - property EMAIL_1: String read GetEMAIL_1Value write SetEMAIL_1Value; - property EMAIL_2: String read GetEMAIL_2Value write SetEMAIL_2Value; - property PAGINA_WEB: String read GetPAGINA_WEBValue write SetPAGINA_WEBValue; - property NOTAS: IROStrings read GetNOTASValue write SetNOTASValue; - property FECHA_ALTA: DateTime read GetFECHA_ALTAValue write SetFECHA_ALTAValue; - property FECHA_MODIFICACION: DateTime read GetFECHA_MODIFICACIONValue write SetFECHA_MODIFICACIONValue; - property USUARIO: String read GetUSUARIOValue write SetUSUARIOValue; - property LOGOTIPO: IROStream read GetLOGOTIPOValue write SetLOGOTIPOValue; - property REGISTRO_MERCANTIL: String read GetREGISTRO_MERCANTILValue write SetREGISTRO_MERCANTILValue; - property IVA: Float read GetIVAValue write SetIVAValue; - end; - - { TEmpresas_RefreshDataTableRules } - TEmpresas_RefreshDataTableRules = class(TDADataTableRules, IEmpresas_Refresh) - private - protected - { Property getters and setters } - function GetIDValue: Integer; virtual; - procedure SetIDValue(const aValue: Integer); virtual; - function GetNIF_CIFValue: String; virtual; - procedure SetNIF_CIFValue(const aValue: String); virtual; - function GetNOMBREValue: String; virtual; - procedure SetNOMBREValue(const aValue: String); virtual; - function GetRAZON_SOCIALValue: String; virtual; - procedure SetRAZON_SOCIALValue(const aValue: String); virtual; - function GetCALLEValue: String; virtual; - procedure SetCALLEValue(const aValue: String); virtual; - function GetPOBLACIONValue: String; virtual; - procedure SetPOBLACIONValue(const aValue: String); virtual; - function GetPROVINCIAValue: String; virtual; - procedure SetPROVINCIAValue(const aValue: String); virtual; - function GetCODIGO_POSTALValue: String; virtual; - procedure SetCODIGO_POSTALValue(const aValue: String); virtual; - function GetTELEFONO_1Value: String; virtual; - procedure SetTELEFONO_1Value(const aValue: String); virtual; - function GetTELEFONO_2Value: String; virtual; - procedure SetTELEFONO_2Value(const aValue: String); virtual; - function GetMOVIL_1Value: String; virtual; - procedure SetMOVIL_1Value(const aValue: String); virtual; - function GetMOVIL_2Value: String; virtual; - procedure SetMOVIL_2Value(const aValue: String); virtual; - function GetFAXValue: String; virtual; - procedure SetFAXValue(const aValue: String); virtual; - function GetEMAIL_1Value: String; virtual; - procedure SetEMAIL_1Value(const aValue: String); virtual; - function GetEMAIL_2Value: String; virtual; - procedure SetEMAIL_2Value(const aValue: String); virtual; - function GetPAGINA_WEBValue: String; virtual; - procedure SetPAGINA_WEBValue(const aValue: String); virtual; - function GetNOTASValue: IROStrings; virtual; - procedure SetNOTASValue(const aValue: IROStrings); virtual; - function GetFECHA_ALTAValue: DateTime; virtual; - procedure SetFECHA_ALTAValue(const aValue: DateTime); virtual; - function GetFECHA_MODIFICACIONValue: DateTime; virtual; - procedure SetFECHA_MODIFICACIONValue(const aValue: DateTime); virtual; - function GetUSUARIOValue: String; virtual; - procedure SetUSUARIOValue(const aValue: String); virtual; - function GetLOGOTIPOValue: IROStream; virtual; - procedure SetLOGOTIPOValue(const aValue: IROStream); virtual; - function GetREGISTRO_MERCANTILValue: String; virtual; - procedure SetREGISTRO_MERCANTILValue(const aValue: String); virtual; - function GetIVAValue: Float; virtual; - procedure SetIVAValue(const aValue: Float); virtual; - - { Properties } - property ID: Integer read GetIDValue write SetIDValue; - property NIF_CIF: String read GetNIF_CIFValue write SetNIF_CIFValue; - property NOMBRE: String read GetNOMBREValue write SetNOMBREValue; - property RAZON_SOCIAL: String read GetRAZON_SOCIALValue write SetRAZON_SOCIALValue; - property CALLE: String read GetCALLEValue write SetCALLEValue; - property POBLACION: String read GetPOBLACIONValue write SetPOBLACIONValue; - property PROVINCIA: String read GetPROVINCIAValue write SetPROVINCIAValue; - property CODIGO_POSTAL: String read GetCODIGO_POSTALValue write SetCODIGO_POSTALValue; - property TELEFONO_1: String read GetTELEFONO_1Value write SetTELEFONO_1Value; - property TELEFONO_2: String read GetTELEFONO_2Value write SetTELEFONO_2Value; - property MOVIL_1: String read GetMOVIL_1Value write SetMOVIL_1Value; - property MOVIL_2: String read GetMOVIL_2Value write SetMOVIL_2Value; - property FAX: String read GetFAXValue write SetFAXValue; - property EMAIL_1: String read GetEMAIL_1Value write SetEMAIL_1Value; - property EMAIL_2: String read GetEMAIL_2Value write SetEMAIL_2Value; - property PAGINA_WEB: String read GetPAGINA_WEBValue write SetPAGINA_WEBValue; - property NOTAS: IROStrings read GetNOTASValue write SetNOTASValue; - property FECHA_ALTA: DateTime read GetFECHA_ALTAValue write SetFECHA_ALTAValue; - property FECHA_MODIFICACION: DateTime read GetFECHA_MODIFICACIONValue write SetFECHA_MODIFICACIONValue; - property USUARIO: String read GetUSUARIOValue write SetUSUARIOValue; - property LOGOTIPO: IROStream read GetLOGOTIPOValue write SetLOGOTIPOValue; - property REGISTRO_MERCANTIL: String read GetREGISTRO_MERCANTILValue write SetREGISTRO_MERCANTILValue; - property IVA: Float read GetIVAValue write SetIVAValue; - - public - constructor Create(aDataTable: TDADataTable); override; - destructor Destroy; override; - - end; - - { IEmpresasDatosBanco_Refresh } - IEmpresasDatosBanco_Refresh = interface(IDAStronglyTypedDataTable) - ['{15A7C527-4B34-4012-8FCB-215C4EFDD4FA}'] - { Property getters and setters } - function GetIDValue: Integer; - procedure SetIDValue(const aValue: Integer); - function GetID_EMPRESAValue: Integer; - procedure SetID_EMPRESAValue(const aValue: Integer); - function GetNOMBREValue: String; - procedure SetNOMBREValue(const aValue: String); - function GetENTIDADValue: String; - procedure SetENTIDADValue(const aValue: String); - function GetSUCURSALValue: String; - procedure SetSUCURSALValue(const aValue: String); - function GetDCValue: String; - procedure SetDCValue(const aValue: String); - function GetCUENTAValue: String; - procedure SetCUENTAValue(const aValue: String); - function GetSUFIJO_N19Value: String; - procedure SetSUFIJO_N19Value(const aValue: String); - function GetSUFIJO_N58Value: String; - procedure SetSUFIJO_N58Value(const aValue: String); - - - { Properties } - property ID: Integer read GetIDValue write SetIDValue; - property ID_EMPRESA: Integer read GetID_EMPRESAValue write SetID_EMPRESAValue; - property NOMBRE: String read GetNOMBREValue write SetNOMBREValue; - property ENTIDAD: String read GetENTIDADValue write SetENTIDADValue; - property SUCURSAL: String read GetSUCURSALValue write SetSUCURSALValue; - property DC: String read GetDCValue write SetDCValue; - property CUENTA: String read GetCUENTAValue write SetCUENTAValue; - property SUFIJO_N19: String read GetSUFIJO_N19Value write SetSUFIJO_N19Value; - property SUFIJO_N58: String read GetSUFIJO_N58Value write SetSUFIJO_N58Value; - end; - - { TEmpresasDatosBanco_RefreshDataTableRules } - TEmpresasDatosBanco_RefreshDataTableRules = class(TDADataTableRules, IEmpresasDatosBanco_Refresh) - private - protected - { Property getters and setters } - function GetIDValue: Integer; virtual; - procedure SetIDValue(const aValue: Integer); virtual; - function GetID_EMPRESAValue: Integer; virtual; - procedure SetID_EMPRESAValue(const aValue: Integer); virtual; - function GetNOMBREValue: String; virtual; - procedure SetNOMBREValue(const aValue: String); virtual; - function GetENTIDADValue: String; virtual; - procedure SetENTIDADValue(const aValue: String); virtual; - function GetSUCURSALValue: String; virtual; - procedure SetSUCURSALValue(const aValue: String); virtual; - function GetDCValue: String; virtual; - procedure SetDCValue(const aValue: String); virtual; - function GetCUENTAValue: String; virtual; - procedure SetCUENTAValue(const aValue: String); virtual; - function GetSUFIJO_N19Value: String; virtual; - procedure SetSUFIJO_N19Value(const aValue: String); virtual; - function GetSUFIJO_N58Value: String; virtual; - procedure SetSUFIJO_N58Value(const aValue: String); virtual; - - { Properties } - property ID: Integer read GetIDValue write SetIDValue; - property ID_EMPRESA: Integer read GetID_EMPRESAValue write SetID_EMPRESAValue; - property NOMBRE: String read GetNOMBREValue write SetNOMBREValue; - property ENTIDAD: String read GetENTIDADValue write SetENTIDADValue; - property SUCURSAL: String read GetSUCURSALValue write SetSUCURSALValue; - property DC: String read GetDCValue write SetDCValue; - property CUENTA: String read GetCUENTAValue write SetCUENTAValue; - property SUFIJO_N19: String read GetSUFIJO_N19Value write SetSUFIJO_N19Value; - property SUFIJO_N58: String read GetSUFIJO_N58Value write SetSUFIJO_N58Value; - - public - constructor Create(aDataTable: TDADataTable); override; - destructor Destroy; override; - - end; - -implementation - -uses Variants; - -{ TEmpresasDataTableRules } -constructor TEmpresasDataTableRules.Create(aDataTable: TDADataTable); -begin - inherited; -end; - -destructor TEmpresasDataTableRules.Destroy; -begin - inherited; -end; - -function TEmpresasDataTableRules.GetIDValue: Integer; -begin - result := DataTable.Fields[idx_EmpresasID].AsInteger; -end; - -procedure TEmpresasDataTableRules.SetIDValue(const aValue: Integer); -begin - DataTable.Fields[idx_EmpresasID].AsInteger := aValue; -end; - -function TEmpresasDataTableRules.GetNIF_CIFValue: String; -begin - result := DataTable.Fields[idx_EmpresasNIF_CIF].AsString; -end; - -procedure TEmpresasDataTableRules.SetNIF_CIFValue(const aValue: String); -begin - DataTable.Fields[idx_EmpresasNIF_CIF].AsString := aValue; -end; - -function TEmpresasDataTableRules.GetNOMBREValue: String; -begin - result := DataTable.Fields[idx_EmpresasNOMBRE].AsString; -end; - -procedure TEmpresasDataTableRules.SetNOMBREValue(const aValue: String); -begin - DataTable.Fields[idx_EmpresasNOMBRE].AsString := aValue; -end; - -function TEmpresasDataTableRules.GetRAZON_SOCIALValue: String; -begin - result := DataTable.Fields[idx_EmpresasRAZON_SOCIAL].AsString; -end; - -procedure TEmpresasDataTableRules.SetRAZON_SOCIALValue(const aValue: String); -begin - DataTable.Fields[idx_EmpresasRAZON_SOCIAL].AsString := aValue; -end; - -function TEmpresasDataTableRules.GetCALLEValue: String; -begin - result := DataTable.Fields[idx_EmpresasCALLE].AsString; -end; - -procedure TEmpresasDataTableRules.SetCALLEValue(const aValue: String); -begin - DataTable.Fields[idx_EmpresasCALLE].AsString := aValue; -end; - -function TEmpresasDataTableRules.GetPOBLACIONValue: String; -begin - result := DataTable.Fields[idx_EmpresasPOBLACION].AsString; -end; - -procedure TEmpresasDataTableRules.SetPOBLACIONValue(const aValue: String); -begin - DataTable.Fields[idx_EmpresasPOBLACION].AsString := aValue; -end; - -function TEmpresasDataTableRules.GetPROVINCIAValue: String; -begin - result := DataTable.Fields[idx_EmpresasPROVINCIA].AsString; -end; - -procedure TEmpresasDataTableRules.SetPROVINCIAValue(const aValue: String); -begin - DataTable.Fields[idx_EmpresasPROVINCIA].AsString := aValue; -end; - -function TEmpresasDataTableRules.GetCODIGO_POSTALValue: String; -begin - result := DataTable.Fields[idx_EmpresasCODIGO_POSTAL].AsString; -end; - -procedure TEmpresasDataTableRules.SetCODIGO_POSTALValue(const aValue: String); -begin - DataTable.Fields[idx_EmpresasCODIGO_POSTAL].AsString := aValue; -end; - -function TEmpresasDataTableRules.GetTELEFONO_1Value: String; -begin - result := DataTable.Fields[idx_EmpresasTELEFONO_1].AsString; -end; - -procedure TEmpresasDataTableRules.SetTELEFONO_1Value(const aValue: String); -begin - DataTable.Fields[idx_EmpresasTELEFONO_1].AsString := aValue; -end; - -function TEmpresasDataTableRules.GetTELEFONO_2Value: String; -begin - result := DataTable.Fields[idx_EmpresasTELEFONO_2].AsString; -end; - -procedure TEmpresasDataTableRules.SetTELEFONO_2Value(const aValue: String); -begin - DataTable.Fields[idx_EmpresasTELEFONO_2].AsString := aValue; -end; - -function TEmpresasDataTableRules.GetMOVIL_1Value: String; -begin - result := DataTable.Fields[idx_EmpresasMOVIL_1].AsString; -end; - -procedure TEmpresasDataTableRules.SetMOVIL_1Value(const aValue: String); -begin - DataTable.Fields[idx_EmpresasMOVIL_1].AsString := aValue; -end; - -function TEmpresasDataTableRules.GetMOVIL_2Value: String; -begin - result := DataTable.Fields[idx_EmpresasMOVIL_2].AsString; -end; - -procedure TEmpresasDataTableRules.SetMOVIL_2Value(const aValue: String); -begin - DataTable.Fields[idx_EmpresasMOVIL_2].AsString := aValue; -end; - -function TEmpresasDataTableRules.GetFAXValue: String; -begin - result := DataTable.Fields[idx_EmpresasFAX].AsString; -end; - -procedure TEmpresasDataTableRules.SetFAXValue(const aValue: String); -begin - DataTable.Fields[idx_EmpresasFAX].AsString := aValue; -end; - -function TEmpresasDataTableRules.GetEMAIL_1Value: String; -begin - result := DataTable.Fields[idx_EmpresasEMAIL_1].AsString; -end; - -procedure TEmpresasDataTableRules.SetEMAIL_1Value(const aValue: String); -begin - DataTable.Fields[idx_EmpresasEMAIL_1].AsString := aValue; -end; - -function TEmpresasDataTableRules.GetEMAIL_2Value: String; -begin - result := DataTable.Fields[idx_EmpresasEMAIL_2].AsString; -end; - -procedure TEmpresasDataTableRules.SetEMAIL_2Value(const aValue: String); -begin - DataTable.Fields[idx_EmpresasEMAIL_2].AsString := aValue; -end; - -function TEmpresasDataTableRules.GetPAGINA_WEBValue: String; -begin - result := DataTable.Fields[idx_EmpresasPAGINA_WEB].AsString; -end; - -procedure TEmpresasDataTableRules.SetPAGINA_WEBValue(const aValue: String); -begin - DataTable.Fields[idx_EmpresasPAGINA_WEB].AsString := aValue; -end; - -function TEmpresasDataTableRules.GetNOTASValue: IROStrings; -begin - result := NewROStrings(); - result.Text := DataTable.Fields[idx_EmpresasNOTAS].AsString; -end; - -procedure TEmpresasDataTableRules.SetNOTASValue(const aValue: IROStrings); -begin - DataTable.Fields[idx_EmpresasNOTAS].AsString := aValue.Text; -end; - -function TEmpresasDataTableRules.GetFECHA_ALTAValue: DateTime; -begin - result := DataTable.Fields[idx_EmpresasFECHA_ALTA].AsDateTime; -end; - -procedure TEmpresasDataTableRules.SetFECHA_ALTAValue(const aValue: DateTime); -begin - DataTable.Fields[idx_EmpresasFECHA_ALTA].AsDateTime := aValue; -end; - -function TEmpresasDataTableRules.GetFECHA_MODIFICACIONValue: DateTime; -begin - result := DataTable.Fields[idx_EmpresasFECHA_MODIFICACION].AsDateTime; -end; - -procedure TEmpresasDataTableRules.SetFECHA_MODIFICACIONValue(const aValue: DateTime); -begin - DataTable.Fields[idx_EmpresasFECHA_MODIFICACION].AsDateTime := aValue; -end; - -function TEmpresasDataTableRules.GetUSUARIOValue: String; -begin - result := DataTable.Fields[idx_EmpresasUSUARIO].AsString; -end; - -procedure TEmpresasDataTableRules.SetUSUARIOValue(const aValue: String); -begin - DataTable.Fields[idx_EmpresasUSUARIO].AsString := aValue; -end; - -function TEmpresasDataTableRules.GetLOGOTIPOValue: IROStream; -begin - result := NewROStream(); - DataTable.Fields[idx_EmpresasLOGOTIPO].SaveToStream(result); -end; - -procedure TEmpresasDataTableRules.SetLOGOTIPOValue(const aValue: IROStream); -begin - DataTable.Fields[idx_EmpresasLOGOTIPO].LoadFromStream(aValue); -end; - -function TEmpresasDataTableRules.GetREGISTRO_MERCANTILValue: String; -begin - result := DataTable.Fields[idx_EmpresasREGISTRO_MERCANTIL].AsString; -end; - -procedure TEmpresasDataTableRules.SetREGISTRO_MERCANTILValue(const aValue: String); -begin - DataTable.Fields[idx_EmpresasREGISTRO_MERCANTIL].AsString := aValue; -end; - -function TEmpresasDataTableRules.GetIVAValue: Float; -begin - result := DataTable.Fields[idx_EmpresasIVA].AsFloat; -end; - -procedure TEmpresasDataTableRules.SetIVAValue(const aValue: Float); -begin - DataTable.Fields[idx_EmpresasIVA].AsFloat := aValue; -end; - - -{ TEmpresasDatosBancoDataTableRules } -constructor TEmpresasDatosBancoDataTableRules.Create(aDataTable: TDADataTable); -begin - inherited; -end; - -destructor TEmpresasDatosBancoDataTableRules.Destroy; -begin - inherited; -end; - -function TEmpresasDatosBancoDataTableRules.GetIDValue: Integer; -begin - result := DataTable.Fields[idx_EmpresasDatosBancoID].AsInteger; -end; - -procedure TEmpresasDatosBancoDataTableRules.SetIDValue(const aValue: Integer); -begin - DataTable.Fields[idx_EmpresasDatosBancoID].AsInteger := aValue; -end; - -function TEmpresasDatosBancoDataTableRules.GetID_EMPRESAValue: Integer; -begin - result := DataTable.Fields[idx_EmpresasDatosBancoID_EMPRESA].AsInteger; -end; - -procedure TEmpresasDatosBancoDataTableRules.SetID_EMPRESAValue(const aValue: Integer); -begin - DataTable.Fields[idx_EmpresasDatosBancoID_EMPRESA].AsInteger := aValue; -end; - -function TEmpresasDatosBancoDataTableRules.GetNOMBREValue: String; -begin - result := DataTable.Fields[idx_EmpresasDatosBancoNOMBRE].AsString; -end; - -procedure TEmpresasDatosBancoDataTableRules.SetNOMBREValue(const aValue: String); -begin - DataTable.Fields[idx_EmpresasDatosBancoNOMBRE].AsString := aValue; -end; - -function TEmpresasDatosBancoDataTableRules.GetENTIDADValue: String; -begin - result := DataTable.Fields[idx_EmpresasDatosBancoENTIDAD].AsString; -end; - -procedure TEmpresasDatosBancoDataTableRules.SetENTIDADValue(const aValue: String); -begin - DataTable.Fields[idx_EmpresasDatosBancoENTIDAD].AsString := aValue; -end; - -function TEmpresasDatosBancoDataTableRules.GetSUCURSALValue: String; -begin - result := DataTable.Fields[idx_EmpresasDatosBancoSUCURSAL].AsString; -end; - -procedure TEmpresasDatosBancoDataTableRules.SetSUCURSALValue(const aValue: String); -begin - DataTable.Fields[idx_EmpresasDatosBancoSUCURSAL].AsString := aValue; -end; - -function TEmpresasDatosBancoDataTableRules.GetDCValue: String; -begin - result := DataTable.Fields[idx_EmpresasDatosBancoDC].AsString; -end; - -procedure TEmpresasDatosBancoDataTableRules.SetDCValue(const aValue: String); -begin - DataTable.Fields[idx_EmpresasDatosBancoDC].AsString := aValue; -end; - -function TEmpresasDatosBancoDataTableRules.GetCUENTAValue: String; -begin - result := DataTable.Fields[idx_EmpresasDatosBancoCUENTA].AsString; -end; - -procedure TEmpresasDatosBancoDataTableRules.SetCUENTAValue(const aValue: String); -begin - DataTable.Fields[idx_EmpresasDatosBancoCUENTA].AsString := aValue; -end; - -function TEmpresasDatosBancoDataTableRules.GetSUFIJO_N19Value: String; -begin - result := DataTable.Fields[idx_EmpresasDatosBancoSUFIJO_N19].AsString; -end; - -procedure TEmpresasDatosBancoDataTableRules.SetSUFIJO_N19Value(const aValue: String); -begin - DataTable.Fields[idx_EmpresasDatosBancoSUFIJO_N19].AsString := aValue; -end; - -function TEmpresasDatosBancoDataTableRules.GetSUFIJO_N58Value: String; -begin - result := DataTable.Fields[idx_EmpresasDatosBancoSUFIJO_N58].AsString; -end; - -procedure TEmpresasDatosBancoDataTableRules.SetSUFIJO_N58Value(const aValue: String); -begin - DataTable.Fields[idx_EmpresasDatosBancoSUFIJO_N58].AsString := aValue; -end; - - -{ TEmpresas_RefreshDataTableRules } -constructor TEmpresas_RefreshDataTableRules.Create(aDataTable: TDADataTable); -begin - inherited; -end; - -destructor TEmpresas_RefreshDataTableRules.Destroy; -begin - inherited; -end; - -function TEmpresas_RefreshDataTableRules.GetIDValue: Integer; -begin - result := DataTable.Fields[idx_Empresas_RefreshID].AsInteger; -end; - -procedure TEmpresas_RefreshDataTableRules.SetIDValue(const aValue: Integer); -begin - DataTable.Fields[idx_Empresas_RefreshID].AsInteger := aValue; -end; - -function TEmpresas_RefreshDataTableRules.GetNIF_CIFValue: String; -begin - result := DataTable.Fields[idx_Empresas_RefreshNIF_CIF].AsString; -end; - -procedure TEmpresas_RefreshDataTableRules.SetNIF_CIFValue(const aValue: String); -begin - DataTable.Fields[idx_Empresas_RefreshNIF_CIF].AsString := aValue; -end; - -function TEmpresas_RefreshDataTableRules.GetNOMBREValue: String; -begin - result := DataTable.Fields[idx_Empresas_RefreshNOMBRE].AsString; -end; - -procedure TEmpresas_RefreshDataTableRules.SetNOMBREValue(const aValue: String); -begin - DataTable.Fields[idx_Empresas_RefreshNOMBRE].AsString := aValue; -end; - -function TEmpresas_RefreshDataTableRules.GetRAZON_SOCIALValue: String; -begin - result := DataTable.Fields[idx_Empresas_RefreshRAZON_SOCIAL].AsString; -end; - -procedure TEmpresas_RefreshDataTableRules.SetRAZON_SOCIALValue(const aValue: String); -begin - DataTable.Fields[idx_Empresas_RefreshRAZON_SOCIAL].AsString := aValue; -end; - -function TEmpresas_RefreshDataTableRules.GetCALLEValue: String; -begin - result := DataTable.Fields[idx_Empresas_RefreshCALLE].AsString; -end; - -procedure TEmpresas_RefreshDataTableRules.SetCALLEValue(const aValue: String); -begin - DataTable.Fields[idx_Empresas_RefreshCALLE].AsString := aValue; -end; - -function TEmpresas_RefreshDataTableRules.GetPOBLACIONValue: String; -begin - result := DataTable.Fields[idx_Empresas_RefreshPOBLACION].AsString; -end; - -procedure TEmpresas_RefreshDataTableRules.SetPOBLACIONValue(const aValue: String); -begin - DataTable.Fields[idx_Empresas_RefreshPOBLACION].AsString := aValue; -end; - -function TEmpresas_RefreshDataTableRules.GetPROVINCIAValue: String; -begin - result := DataTable.Fields[idx_Empresas_RefreshPROVINCIA].AsString; -end; - -procedure TEmpresas_RefreshDataTableRules.SetPROVINCIAValue(const aValue: String); -begin - DataTable.Fields[idx_Empresas_RefreshPROVINCIA].AsString := aValue; -end; - -function TEmpresas_RefreshDataTableRules.GetCODIGO_POSTALValue: String; -begin - result := DataTable.Fields[idx_Empresas_RefreshCODIGO_POSTAL].AsString; -end; - -procedure TEmpresas_RefreshDataTableRules.SetCODIGO_POSTALValue(const aValue: String); -begin - DataTable.Fields[idx_Empresas_RefreshCODIGO_POSTAL].AsString := aValue; -end; - -function TEmpresas_RefreshDataTableRules.GetTELEFONO_1Value: String; -begin - result := DataTable.Fields[idx_Empresas_RefreshTELEFONO_1].AsString; -end; - -procedure TEmpresas_RefreshDataTableRules.SetTELEFONO_1Value(const aValue: String); -begin - DataTable.Fields[idx_Empresas_RefreshTELEFONO_1].AsString := aValue; -end; - -function TEmpresas_RefreshDataTableRules.GetTELEFONO_2Value: String; -begin - result := DataTable.Fields[idx_Empresas_RefreshTELEFONO_2].AsString; -end; - -procedure TEmpresas_RefreshDataTableRules.SetTELEFONO_2Value(const aValue: String); -begin - DataTable.Fields[idx_Empresas_RefreshTELEFONO_2].AsString := aValue; -end; - -function TEmpresas_RefreshDataTableRules.GetMOVIL_1Value: String; -begin - result := DataTable.Fields[idx_Empresas_RefreshMOVIL_1].AsString; -end; - -procedure TEmpresas_RefreshDataTableRules.SetMOVIL_1Value(const aValue: String); -begin - DataTable.Fields[idx_Empresas_RefreshMOVIL_1].AsString := aValue; -end; - -function TEmpresas_RefreshDataTableRules.GetMOVIL_2Value: String; -begin - result := DataTable.Fields[idx_Empresas_RefreshMOVIL_2].AsString; -end; - -procedure TEmpresas_RefreshDataTableRules.SetMOVIL_2Value(const aValue: String); -begin - DataTable.Fields[idx_Empresas_RefreshMOVIL_2].AsString := aValue; -end; - -function TEmpresas_RefreshDataTableRules.GetFAXValue: String; -begin - result := DataTable.Fields[idx_Empresas_RefreshFAX].AsString; -end; - -procedure TEmpresas_RefreshDataTableRules.SetFAXValue(const aValue: String); -begin - DataTable.Fields[idx_Empresas_RefreshFAX].AsString := aValue; -end; - -function TEmpresas_RefreshDataTableRules.GetEMAIL_1Value: String; -begin - result := DataTable.Fields[idx_Empresas_RefreshEMAIL_1].AsString; -end; - -procedure TEmpresas_RefreshDataTableRules.SetEMAIL_1Value(const aValue: String); -begin - DataTable.Fields[idx_Empresas_RefreshEMAIL_1].AsString := aValue; -end; - -function TEmpresas_RefreshDataTableRules.GetEMAIL_2Value: String; -begin - result := DataTable.Fields[idx_Empresas_RefreshEMAIL_2].AsString; -end; - -procedure TEmpresas_RefreshDataTableRules.SetEMAIL_2Value(const aValue: String); -begin - DataTable.Fields[idx_Empresas_RefreshEMAIL_2].AsString := aValue; -end; - -function TEmpresas_RefreshDataTableRules.GetPAGINA_WEBValue: String; -begin - result := DataTable.Fields[idx_Empresas_RefreshPAGINA_WEB].AsString; -end; - -procedure TEmpresas_RefreshDataTableRules.SetPAGINA_WEBValue(const aValue: String); -begin - DataTable.Fields[idx_Empresas_RefreshPAGINA_WEB].AsString := aValue; -end; - -function TEmpresas_RefreshDataTableRules.GetNOTASValue: IROStrings; -begin - result := NewROStrings(); - result.Text := DataTable.Fields[idx_Empresas_RefreshNOTAS].AsString; -end; - -procedure TEmpresas_RefreshDataTableRules.SetNOTASValue(const aValue: IROStrings); -begin - DataTable.Fields[idx_Empresas_RefreshNOTAS].AsString := aValue.Text; -end; - -function TEmpresas_RefreshDataTableRules.GetFECHA_ALTAValue: DateTime; -begin - result := DataTable.Fields[idx_Empresas_RefreshFECHA_ALTA].AsDateTime; -end; - -procedure TEmpresas_RefreshDataTableRules.SetFECHA_ALTAValue(const aValue: DateTime); -begin - DataTable.Fields[idx_Empresas_RefreshFECHA_ALTA].AsDateTime := aValue; -end; - -function TEmpresas_RefreshDataTableRules.GetFECHA_MODIFICACIONValue: DateTime; -begin - result := DataTable.Fields[idx_Empresas_RefreshFECHA_MODIFICACION].AsDateTime; -end; - -procedure TEmpresas_RefreshDataTableRules.SetFECHA_MODIFICACIONValue(const aValue: DateTime); -begin - DataTable.Fields[idx_Empresas_RefreshFECHA_MODIFICACION].AsDateTime := aValue; -end; - -function TEmpresas_RefreshDataTableRules.GetUSUARIOValue: String; -begin - result := DataTable.Fields[idx_Empresas_RefreshUSUARIO].AsString; -end; - -procedure TEmpresas_RefreshDataTableRules.SetUSUARIOValue(const aValue: String); -begin - DataTable.Fields[idx_Empresas_RefreshUSUARIO].AsString := aValue; -end; - -function TEmpresas_RefreshDataTableRules.GetLOGOTIPOValue: IROStream; -begin - result := NewROStream(); - DataTable.Fields[idx_Empresas_RefreshLOGOTIPO].SaveToStream(result); -end; - -procedure TEmpresas_RefreshDataTableRules.SetLOGOTIPOValue(const aValue: IROStream); -begin - DataTable.Fields[idx_Empresas_RefreshLOGOTIPO].LoadFromStream(aValue); -end; - -function TEmpresas_RefreshDataTableRules.GetREGISTRO_MERCANTILValue: String; -begin - result := DataTable.Fields[idx_Empresas_RefreshREGISTRO_MERCANTIL].AsString; -end; - -procedure TEmpresas_RefreshDataTableRules.SetREGISTRO_MERCANTILValue(const aValue: String); -begin - DataTable.Fields[idx_Empresas_RefreshREGISTRO_MERCANTIL].AsString := aValue; -end; - -function TEmpresas_RefreshDataTableRules.GetIVAValue: Float; -begin - result := DataTable.Fields[idx_Empresas_RefreshIVA].AsFloat; -end; - -procedure TEmpresas_RefreshDataTableRules.SetIVAValue(const aValue: Float); -begin - DataTable.Fields[idx_Empresas_RefreshIVA].AsFloat := aValue; -end; - - -{ TEmpresasDatosBanco_RefreshDataTableRules } -constructor TEmpresasDatosBanco_RefreshDataTableRules.Create(aDataTable: TDADataTable); -begin - inherited; -end; - -destructor TEmpresasDatosBanco_RefreshDataTableRules.Destroy; -begin - inherited; -end; - -function TEmpresasDatosBanco_RefreshDataTableRules.GetIDValue: Integer; -begin - result := DataTable.Fields[idx_EmpresasDatosBanco_RefreshID].AsInteger; -end; - -procedure TEmpresasDatosBanco_RefreshDataTableRules.SetIDValue(const aValue: Integer); -begin - DataTable.Fields[idx_EmpresasDatosBanco_RefreshID].AsInteger := aValue; -end; - -function TEmpresasDatosBanco_RefreshDataTableRules.GetID_EMPRESAValue: Integer; -begin - result := DataTable.Fields[idx_EmpresasDatosBanco_RefreshID_EMPRESA].AsInteger; -end; - -procedure TEmpresasDatosBanco_RefreshDataTableRules.SetID_EMPRESAValue(const aValue: Integer); -begin - DataTable.Fields[idx_EmpresasDatosBanco_RefreshID_EMPRESA].AsInteger := aValue; -end; - -function TEmpresasDatosBanco_RefreshDataTableRules.GetNOMBREValue: String; -begin - result := DataTable.Fields[idx_EmpresasDatosBanco_RefreshNOMBRE].AsString; -end; - -procedure TEmpresasDatosBanco_RefreshDataTableRules.SetNOMBREValue(const aValue: String); -begin - DataTable.Fields[idx_EmpresasDatosBanco_RefreshNOMBRE].AsString := aValue; -end; - -function TEmpresasDatosBanco_RefreshDataTableRules.GetENTIDADValue: String; -begin - result := DataTable.Fields[idx_EmpresasDatosBanco_RefreshENTIDAD].AsString; -end; - -procedure TEmpresasDatosBanco_RefreshDataTableRules.SetENTIDADValue(const aValue: String); -begin - DataTable.Fields[idx_EmpresasDatosBanco_RefreshENTIDAD].AsString := aValue; -end; - -function TEmpresasDatosBanco_RefreshDataTableRules.GetSUCURSALValue: String; -begin - result := DataTable.Fields[idx_EmpresasDatosBanco_RefreshSUCURSAL].AsString; -end; - -procedure TEmpresasDatosBanco_RefreshDataTableRules.SetSUCURSALValue(const aValue: String); -begin - DataTable.Fields[idx_EmpresasDatosBanco_RefreshSUCURSAL].AsString := aValue; -end; - -function TEmpresasDatosBanco_RefreshDataTableRules.GetDCValue: String; -begin - result := DataTable.Fields[idx_EmpresasDatosBanco_RefreshDC].AsString; -end; - -procedure TEmpresasDatosBanco_RefreshDataTableRules.SetDCValue(const aValue: String); -begin - DataTable.Fields[idx_EmpresasDatosBanco_RefreshDC].AsString := aValue; -end; - -function TEmpresasDatosBanco_RefreshDataTableRules.GetCUENTAValue: String; -begin - result := DataTable.Fields[idx_EmpresasDatosBanco_RefreshCUENTA].AsString; -end; - -procedure TEmpresasDatosBanco_RefreshDataTableRules.SetCUENTAValue(const aValue: String); -begin - DataTable.Fields[idx_EmpresasDatosBanco_RefreshCUENTA].AsString := aValue; -end; - -function TEmpresasDatosBanco_RefreshDataTableRules.GetSUFIJO_N19Value: String; -begin - result := DataTable.Fields[idx_EmpresasDatosBanco_RefreshSUFIJO_N19].AsString; -end; - -procedure TEmpresasDatosBanco_RefreshDataTableRules.SetSUFIJO_N19Value(const aValue: String); -begin - DataTable.Fields[idx_EmpresasDatosBanco_RefreshSUFIJO_N19].AsString := aValue; -end; - -function TEmpresasDatosBanco_RefreshDataTableRules.GetSUFIJO_N58Value: String; -begin - result := DataTable.Fields[idx_EmpresasDatosBanco_RefreshSUFIJO_N58].AsString; -end; - -procedure TEmpresasDatosBanco_RefreshDataTableRules.SetSUFIJO_N58Value(const aValue: String); -begin - DataTable.Fields[idx_EmpresasDatosBanco_RefreshSUFIJO_N58].AsString := aValue; -end; - - -initialization - RegisterDataTableRules(RID_Empresas, TEmpresasDataTableRules); - RegisterDataTableRules(RID_EmpresasDatosBanco, TEmpresasDatosBancoDataTableRules); - RegisterDataTableRules(RID_Empresas_Refresh, TEmpresas_RefreshDataTableRules); - RegisterDataTableRules(RID_EmpresasDatosBanco_Refresh, TEmpresasDatosBanco_RefreshDataTableRules); - -end. diff --git a/Source/Modulos/Empresas/Model/schEmpresasServer_Intf.pas b/Source/Modulos/Empresas/Model/schEmpresasServer_Intf.pas deleted file mode 100644 index ed542d8c..00000000 --- a/Source/Modulos/Empresas/Model/schEmpresasServer_Intf.pas +++ /dev/null @@ -1,1581 +0,0 @@ -unit schEmpresasServer_Intf; - -interface - -uses - Classes, DB, SysUtils, uROClasses, uDADataTable, uDABusinessProcessor, schEmpresasClient_Intf; - -const - { Delta rules ids - Feel free to change them to something more human readable - but make sure they are unique in the context of your application } - RID_EmpresasDelta = '{6B1221C2-AF55-4833-86A5-B17E72AD9776}'; - RID_EmpresasDatosBancoDelta = '{5ADBB10D-263B-49A2-9F6E-B432AB5A76D1}'; - RID_Empresas_RefreshDelta = '{922EDFCA-3764-4B42-9B8D-BF1841156D54}'; - RID_EmpresasDatosBanco_RefreshDelta = '{BF0D6D54-14FC-4676-B1A0-DF972799F923}'; - -type - { IEmpresasDelta } - IEmpresasDelta = interface(IEmpresas) - ['{6B1221C2-AF55-4833-86A5-B17E72AD9776}'] - { Property getters and setters } - function GetOldIDValue : Integer; - function GetOldNIF_CIFValue : String; - function GetOldNOMBREValue : String; - function GetOldRAZON_SOCIALValue : String; - function GetOldCALLEValue : String; - function GetOldPOBLACIONValue : String; - function GetOldPROVINCIAValue : String; - function GetOldCODIGO_POSTALValue : String; - function GetOldTELEFONO_1Value : String; - function GetOldTELEFONO_2Value : String; - function GetOldMOVIL_1Value : String; - function GetOldMOVIL_2Value : String; - function GetOldFAXValue : String; - function GetOldEMAIL_1Value : String; - function GetOldEMAIL_2Value : String; - function GetOldPAGINA_WEBValue : String; - function GetOldNOTASValue : IROStrings; - function GetOldFECHA_ALTAValue : DateTime; - function GetOldFECHA_MODIFICACIONValue : DateTime; - function GetOldUSUARIOValue : String; - function GetOldLOGOTIPOValue : IROStream; - function GetOldREGISTRO_MERCANTILValue : String; - function GetOldIVAValue : Float; - - { Properties } - property OldID : Integer read GetOldIDValue; - property OldNIF_CIF : String read GetOldNIF_CIFValue; - property OldNOMBRE : String read GetOldNOMBREValue; - property OldRAZON_SOCIAL : String read GetOldRAZON_SOCIALValue; - property OldCALLE : String read GetOldCALLEValue; - property OldPOBLACION : String read GetOldPOBLACIONValue; - property OldPROVINCIA : String read GetOldPROVINCIAValue; - property OldCODIGO_POSTAL : String read GetOldCODIGO_POSTALValue; - property OldTELEFONO_1 : String read GetOldTELEFONO_1Value; - property OldTELEFONO_2 : String read GetOldTELEFONO_2Value; - property OldMOVIL_1 : String read GetOldMOVIL_1Value; - property OldMOVIL_2 : String read GetOldMOVIL_2Value; - property OldFAX : String read GetOldFAXValue; - property OldEMAIL_1 : String read GetOldEMAIL_1Value; - property OldEMAIL_2 : String read GetOldEMAIL_2Value; - property OldPAGINA_WEB : String read GetOldPAGINA_WEBValue; - property OldNOTAS : IROStrings read GetOldNOTASValue; - property OldFECHA_ALTA : DateTime read GetOldFECHA_ALTAValue; - property OldFECHA_MODIFICACION : DateTime read GetOldFECHA_MODIFICACIONValue; - property OldUSUARIO : String read GetOldUSUARIOValue; - property OldLOGOTIPO : IROStream read GetOldLOGOTIPOValue; - property OldREGISTRO_MERCANTIL : String read GetOldREGISTRO_MERCANTILValue; - property OldIVA : Float read GetOldIVAValue; - end; - - { TEmpresasBusinessProcessorRules } - TEmpresasBusinessProcessorRules = class(TDABusinessProcessorRules, IEmpresas, IEmpresasDelta) - private - protected - { Property getters and setters } - function GetIDValue: Integer; virtual; - function GetOldIDValue: Integer; virtual; - procedure SetIDValue(const aValue: Integer); virtual; - function GetNIF_CIFValue: String; virtual; - function GetOldNIF_CIFValue: String; virtual; - procedure SetNIF_CIFValue(const aValue: String); virtual; - function GetNOMBREValue: String; virtual; - function GetOldNOMBREValue: String; virtual; - procedure SetNOMBREValue(const aValue: String); virtual; - function GetRAZON_SOCIALValue: String; virtual; - function GetOldRAZON_SOCIALValue: String; virtual; - procedure SetRAZON_SOCIALValue(const aValue: String); virtual; - function GetCALLEValue: String; virtual; - function GetOldCALLEValue: String; virtual; - procedure SetCALLEValue(const aValue: String); virtual; - function GetPOBLACIONValue: String; virtual; - function GetOldPOBLACIONValue: String; virtual; - procedure SetPOBLACIONValue(const aValue: String); virtual; - function GetPROVINCIAValue: String; virtual; - function GetOldPROVINCIAValue: String; virtual; - procedure SetPROVINCIAValue(const aValue: String); virtual; - function GetCODIGO_POSTALValue: String; virtual; - function GetOldCODIGO_POSTALValue: String; virtual; - procedure SetCODIGO_POSTALValue(const aValue: String); virtual; - function GetTELEFONO_1Value: String; virtual; - function GetOldTELEFONO_1Value: String; virtual; - procedure SetTELEFONO_1Value(const aValue: String); virtual; - function GetTELEFONO_2Value: String; virtual; - function GetOldTELEFONO_2Value: String; virtual; - procedure SetTELEFONO_2Value(const aValue: String); virtual; - function GetMOVIL_1Value: String; virtual; - function GetOldMOVIL_1Value: String; virtual; - procedure SetMOVIL_1Value(const aValue: String); virtual; - function GetMOVIL_2Value: String; virtual; - function GetOldMOVIL_2Value: String; virtual; - procedure SetMOVIL_2Value(const aValue: String); virtual; - function GetFAXValue: String; virtual; - function GetOldFAXValue: String; virtual; - procedure SetFAXValue(const aValue: String); virtual; - function GetEMAIL_1Value: String; virtual; - function GetOldEMAIL_1Value: String; virtual; - procedure SetEMAIL_1Value(const aValue: String); virtual; - function GetEMAIL_2Value: String; virtual; - function GetOldEMAIL_2Value: String; virtual; - procedure SetEMAIL_2Value(const aValue: String); virtual; - function GetPAGINA_WEBValue: String; virtual; - function GetOldPAGINA_WEBValue: String; virtual; - procedure SetPAGINA_WEBValue(const aValue: String); virtual; - function GetNOTASValue: IROStrings; virtual; - function GetOldNOTASValue: IROStrings; virtual; - procedure SetNOTASValue(const aValue: IROStrings); virtual; - function GetFECHA_ALTAValue: DateTime; virtual; - function GetOldFECHA_ALTAValue: DateTime; virtual; - procedure SetFECHA_ALTAValue(const aValue: DateTime); virtual; - function GetFECHA_MODIFICACIONValue: DateTime; virtual; - function GetOldFECHA_MODIFICACIONValue: DateTime; virtual; - procedure SetFECHA_MODIFICACIONValue(const aValue: DateTime); virtual; - function GetUSUARIOValue: String; virtual; - function GetOldUSUARIOValue: String; virtual; - procedure SetUSUARIOValue(const aValue: String); virtual; - function GetLOGOTIPOValue: IROStream; virtual; - function GetOldLOGOTIPOValue: IROStream; virtual; - procedure SetLOGOTIPOValue(const aValue: IROStream); virtual; - function GetREGISTRO_MERCANTILValue: String; virtual; - function GetOldREGISTRO_MERCANTILValue: String; virtual; - procedure SetREGISTRO_MERCANTILValue(const aValue: String); virtual; - function GetIVAValue: Float; virtual; - function GetOldIVAValue: Float; virtual; - procedure SetIVAValue(const aValue: Float); virtual; - - { Properties } - property ID : Integer read GetIDValue write SetIDValue; - property OldID : Integer read GetOldIDValue; - property NIF_CIF : String read GetNIF_CIFValue write SetNIF_CIFValue; - property OldNIF_CIF : String read GetOldNIF_CIFValue; - property NOMBRE : String read GetNOMBREValue write SetNOMBREValue; - property OldNOMBRE : String read GetOldNOMBREValue; - property RAZON_SOCIAL : String read GetRAZON_SOCIALValue write SetRAZON_SOCIALValue; - property OldRAZON_SOCIAL : String read GetOldRAZON_SOCIALValue; - property CALLE : String read GetCALLEValue write SetCALLEValue; - property OldCALLE : String read GetOldCALLEValue; - property POBLACION : String read GetPOBLACIONValue write SetPOBLACIONValue; - property OldPOBLACION : String read GetOldPOBLACIONValue; - property PROVINCIA : String read GetPROVINCIAValue write SetPROVINCIAValue; - property OldPROVINCIA : String read GetOldPROVINCIAValue; - property CODIGO_POSTAL : String read GetCODIGO_POSTALValue write SetCODIGO_POSTALValue; - property OldCODIGO_POSTAL : String read GetOldCODIGO_POSTALValue; - property TELEFONO_1 : String read GetTELEFONO_1Value write SetTELEFONO_1Value; - property OldTELEFONO_1 : String read GetOldTELEFONO_1Value; - property TELEFONO_2 : String read GetTELEFONO_2Value write SetTELEFONO_2Value; - property OldTELEFONO_2 : String read GetOldTELEFONO_2Value; - property MOVIL_1 : String read GetMOVIL_1Value write SetMOVIL_1Value; - property OldMOVIL_1 : String read GetOldMOVIL_1Value; - property MOVIL_2 : String read GetMOVIL_2Value write SetMOVIL_2Value; - property OldMOVIL_2 : String read GetOldMOVIL_2Value; - property FAX : String read GetFAXValue write SetFAXValue; - property OldFAX : String read GetOldFAXValue; - property EMAIL_1 : String read GetEMAIL_1Value write SetEMAIL_1Value; - property OldEMAIL_1 : String read GetOldEMAIL_1Value; - property EMAIL_2 : String read GetEMAIL_2Value write SetEMAIL_2Value; - property OldEMAIL_2 : String read GetOldEMAIL_2Value; - property PAGINA_WEB : String read GetPAGINA_WEBValue write SetPAGINA_WEBValue; - property OldPAGINA_WEB : String read GetOldPAGINA_WEBValue; - property NOTAS : IROStrings read GetNOTASValue write SetNOTASValue; - property OldNOTAS : IROStrings read GetOldNOTASValue; - property FECHA_ALTA : DateTime read GetFECHA_ALTAValue write SetFECHA_ALTAValue; - property OldFECHA_ALTA : DateTime read GetOldFECHA_ALTAValue; - property FECHA_MODIFICACION : DateTime read GetFECHA_MODIFICACIONValue write SetFECHA_MODIFICACIONValue; - property OldFECHA_MODIFICACION : DateTime read GetOldFECHA_MODIFICACIONValue; - property USUARIO : String read GetUSUARIOValue write SetUSUARIOValue; - property OldUSUARIO : String read GetOldUSUARIOValue; - property LOGOTIPO : IROStream read GetLOGOTIPOValue write SetLOGOTIPOValue; - property OldLOGOTIPO : IROStream read GetOldLOGOTIPOValue; - property REGISTRO_MERCANTIL : String read GetREGISTRO_MERCANTILValue write SetREGISTRO_MERCANTILValue; - property OldREGISTRO_MERCANTIL : String read GetOldREGISTRO_MERCANTILValue; - property IVA : Float read GetIVAValue write SetIVAValue; - property OldIVA : Float read GetOldIVAValue; - - public - constructor Create(aBusinessProcessor: TDABusinessProcessor); override; - destructor Destroy; override; - - end; - - { IEmpresasDatosBancoDelta } - IEmpresasDatosBancoDelta = interface(IEmpresasDatosBanco) - ['{5ADBB10D-263B-49A2-9F6E-B432AB5A76D1}'] - { Property getters and setters } - function GetOldIDValue : Integer; - function GetOldID_EMPRESAValue : Integer; - function GetOldNOMBREValue : String; - function GetOldENTIDADValue : String; - function GetOldSUCURSALValue : String; - function GetOldDCValue : String; - function GetOldCUENTAValue : String; - function GetOldSUFIJO_N19Value : String; - function GetOldSUFIJO_N58Value : String; - - { Properties } - property OldID : Integer read GetOldIDValue; - property OldID_EMPRESA : Integer read GetOldID_EMPRESAValue; - property OldNOMBRE : String read GetOldNOMBREValue; - property OldENTIDAD : String read GetOldENTIDADValue; - property OldSUCURSAL : String read GetOldSUCURSALValue; - property OldDC : String read GetOldDCValue; - property OldCUENTA : String read GetOldCUENTAValue; - property OldSUFIJO_N19 : String read GetOldSUFIJO_N19Value; - property OldSUFIJO_N58 : String read GetOldSUFIJO_N58Value; - end; - - { TEmpresasDatosBancoBusinessProcessorRules } - TEmpresasDatosBancoBusinessProcessorRules = class(TDABusinessProcessorRules, IEmpresasDatosBanco, IEmpresasDatosBancoDelta) - private - protected - { Property getters and setters } - function GetIDValue: Integer; virtual; - function GetOldIDValue: Integer; virtual; - procedure SetIDValue(const aValue: Integer); virtual; - function GetID_EMPRESAValue: Integer; virtual; - function GetOldID_EMPRESAValue: Integer; virtual; - procedure SetID_EMPRESAValue(const aValue: Integer); virtual; - function GetNOMBREValue: String; virtual; - function GetOldNOMBREValue: String; virtual; - procedure SetNOMBREValue(const aValue: String); virtual; - function GetENTIDADValue: String; virtual; - function GetOldENTIDADValue: String; virtual; - procedure SetENTIDADValue(const aValue: String); virtual; - function GetSUCURSALValue: String; virtual; - function GetOldSUCURSALValue: String; virtual; - procedure SetSUCURSALValue(const aValue: String); virtual; - function GetDCValue: String; virtual; - function GetOldDCValue: String; virtual; - procedure SetDCValue(const aValue: String); virtual; - function GetCUENTAValue: String; virtual; - function GetOldCUENTAValue: String; virtual; - procedure SetCUENTAValue(const aValue: String); virtual; - function GetSUFIJO_N19Value: String; virtual; - function GetOldSUFIJO_N19Value: String; virtual; - procedure SetSUFIJO_N19Value(const aValue: String); virtual; - function GetSUFIJO_N58Value: String; virtual; - function GetOldSUFIJO_N58Value: String; virtual; - procedure SetSUFIJO_N58Value(const aValue: String); virtual; - - { Properties } - property ID : Integer read GetIDValue write SetIDValue; - property OldID : Integer read GetOldIDValue; - property ID_EMPRESA : Integer read GetID_EMPRESAValue write SetID_EMPRESAValue; - property OldID_EMPRESA : Integer read GetOldID_EMPRESAValue; - property NOMBRE : String read GetNOMBREValue write SetNOMBREValue; - property OldNOMBRE : String read GetOldNOMBREValue; - property ENTIDAD : String read GetENTIDADValue write SetENTIDADValue; - property OldENTIDAD : String read GetOldENTIDADValue; - property SUCURSAL : String read GetSUCURSALValue write SetSUCURSALValue; - property OldSUCURSAL : String read GetOldSUCURSALValue; - property DC : String read GetDCValue write SetDCValue; - property OldDC : String read GetOldDCValue; - property CUENTA : String read GetCUENTAValue write SetCUENTAValue; - property OldCUENTA : String read GetOldCUENTAValue; - property SUFIJO_N19 : String read GetSUFIJO_N19Value write SetSUFIJO_N19Value; - property OldSUFIJO_N19 : String read GetOldSUFIJO_N19Value; - property SUFIJO_N58 : String read GetSUFIJO_N58Value write SetSUFIJO_N58Value; - property OldSUFIJO_N58 : String read GetOldSUFIJO_N58Value; - - public - constructor Create(aBusinessProcessor: TDABusinessProcessor); override; - destructor Destroy; override; - - end; - - { IEmpresas_RefreshDelta } - IEmpresas_RefreshDelta = interface(IEmpresas_Refresh) - ['{922EDFCA-3764-4B42-9B8D-BF1841156D54}'] - { Property getters and setters } - function GetOldIDValue : Integer; - function GetOldNIF_CIFValue : String; - function GetOldNOMBREValue : String; - function GetOldRAZON_SOCIALValue : String; - function GetOldCALLEValue : String; - function GetOldPOBLACIONValue : String; - function GetOldPROVINCIAValue : String; - function GetOldCODIGO_POSTALValue : String; - function GetOldTELEFONO_1Value : String; - function GetOldTELEFONO_2Value : String; - function GetOldMOVIL_1Value : String; - function GetOldMOVIL_2Value : String; - function GetOldFAXValue : String; - function GetOldEMAIL_1Value : String; - function GetOldEMAIL_2Value : String; - function GetOldPAGINA_WEBValue : String; - function GetOldNOTASValue : IROStrings; - function GetOldFECHA_ALTAValue : DateTime; - function GetOldFECHA_MODIFICACIONValue : DateTime; - function GetOldUSUARIOValue : String; - function GetOldLOGOTIPOValue : IROStream; - function GetOldREGISTRO_MERCANTILValue : String; - function GetOldIVAValue : Float; - - { Properties } - property OldID : Integer read GetOldIDValue; - property OldNIF_CIF : String read GetOldNIF_CIFValue; - property OldNOMBRE : String read GetOldNOMBREValue; - property OldRAZON_SOCIAL : String read GetOldRAZON_SOCIALValue; - property OldCALLE : String read GetOldCALLEValue; - property OldPOBLACION : String read GetOldPOBLACIONValue; - property OldPROVINCIA : String read GetOldPROVINCIAValue; - property OldCODIGO_POSTAL : String read GetOldCODIGO_POSTALValue; - property OldTELEFONO_1 : String read GetOldTELEFONO_1Value; - property OldTELEFONO_2 : String read GetOldTELEFONO_2Value; - property OldMOVIL_1 : String read GetOldMOVIL_1Value; - property OldMOVIL_2 : String read GetOldMOVIL_2Value; - property OldFAX : String read GetOldFAXValue; - property OldEMAIL_1 : String read GetOldEMAIL_1Value; - property OldEMAIL_2 : String read GetOldEMAIL_2Value; - property OldPAGINA_WEB : String read GetOldPAGINA_WEBValue; - property OldNOTAS : IROStrings read GetOldNOTASValue; - property OldFECHA_ALTA : DateTime read GetOldFECHA_ALTAValue; - property OldFECHA_MODIFICACION : DateTime read GetOldFECHA_MODIFICACIONValue; - property OldUSUARIO : String read GetOldUSUARIOValue; - property OldLOGOTIPO : IROStream read GetOldLOGOTIPOValue; - property OldREGISTRO_MERCANTIL : String read GetOldREGISTRO_MERCANTILValue; - property OldIVA : Float read GetOldIVAValue; - end; - - { TEmpresas_RefreshBusinessProcessorRules } - TEmpresas_RefreshBusinessProcessorRules = class(TDABusinessProcessorRules, IEmpresas_Refresh, IEmpresas_RefreshDelta) - private - protected - { Property getters and setters } - function GetIDValue: Integer; virtual; - function GetOldIDValue: Integer; virtual; - procedure SetIDValue(const aValue: Integer); virtual; - function GetNIF_CIFValue: String; virtual; - function GetOldNIF_CIFValue: String; virtual; - procedure SetNIF_CIFValue(const aValue: String); virtual; - function GetNOMBREValue: String; virtual; - function GetOldNOMBREValue: String; virtual; - procedure SetNOMBREValue(const aValue: String); virtual; - function GetRAZON_SOCIALValue: String; virtual; - function GetOldRAZON_SOCIALValue: String; virtual; - procedure SetRAZON_SOCIALValue(const aValue: String); virtual; - function GetCALLEValue: String; virtual; - function GetOldCALLEValue: String; virtual; - procedure SetCALLEValue(const aValue: String); virtual; - function GetPOBLACIONValue: String; virtual; - function GetOldPOBLACIONValue: String; virtual; - procedure SetPOBLACIONValue(const aValue: String); virtual; - function GetPROVINCIAValue: String; virtual; - function GetOldPROVINCIAValue: String; virtual; - procedure SetPROVINCIAValue(const aValue: String); virtual; - function GetCODIGO_POSTALValue: String; virtual; - function GetOldCODIGO_POSTALValue: String; virtual; - procedure SetCODIGO_POSTALValue(const aValue: String); virtual; - function GetTELEFONO_1Value: String; virtual; - function GetOldTELEFONO_1Value: String; virtual; - procedure SetTELEFONO_1Value(const aValue: String); virtual; - function GetTELEFONO_2Value: String; virtual; - function GetOldTELEFONO_2Value: String; virtual; - procedure SetTELEFONO_2Value(const aValue: String); virtual; - function GetMOVIL_1Value: String; virtual; - function GetOldMOVIL_1Value: String; virtual; - procedure SetMOVIL_1Value(const aValue: String); virtual; - function GetMOVIL_2Value: String; virtual; - function GetOldMOVIL_2Value: String; virtual; - procedure SetMOVIL_2Value(const aValue: String); virtual; - function GetFAXValue: String; virtual; - function GetOldFAXValue: String; virtual; - procedure SetFAXValue(const aValue: String); virtual; - function GetEMAIL_1Value: String; virtual; - function GetOldEMAIL_1Value: String; virtual; - procedure SetEMAIL_1Value(const aValue: String); virtual; - function GetEMAIL_2Value: String; virtual; - function GetOldEMAIL_2Value: String; virtual; - procedure SetEMAIL_2Value(const aValue: String); virtual; - function GetPAGINA_WEBValue: String; virtual; - function GetOldPAGINA_WEBValue: String; virtual; - procedure SetPAGINA_WEBValue(const aValue: String); virtual; - function GetNOTASValue: IROStrings; virtual; - function GetOldNOTASValue: IROStrings; virtual; - procedure SetNOTASValue(const aValue: IROStrings); virtual; - function GetFECHA_ALTAValue: DateTime; virtual; - function GetOldFECHA_ALTAValue: DateTime; virtual; - procedure SetFECHA_ALTAValue(const aValue: DateTime); virtual; - function GetFECHA_MODIFICACIONValue: DateTime; virtual; - function GetOldFECHA_MODIFICACIONValue: DateTime; virtual; - procedure SetFECHA_MODIFICACIONValue(const aValue: DateTime); virtual; - function GetUSUARIOValue: String; virtual; - function GetOldUSUARIOValue: String; virtual; - procedure SetUSUARIOValue(const aValue: String); virtual; - function GetLOGOTIPOValue: IROStream; virtual; - function GetOldLOGOTIPOValue: IROStream; virtual; - procedure SetLOGOTIPOValue(const aValue: IROStream); virtual; - function GetREGISTRO_MERCANTILValue: String; virtual; - function GetOldREGISTRO_MERCANTILValue: String; virtual; - procedure SetREGISTRO_MERCANTILValue(const aValue: String); virtual; - function GetIVAValue: Float; virtual; - function GetOldIVAValue: Float; virtual; - procedure SetIVAValue(const aValue: Float); virtual; - - { Properties } - property ID : Integer read GetIDValue write SetIDValue; - property OldID : Integer read GetOldIDValue; - property NIF_CIF : String read GetNIF_CIFValue write SetNIF_CIFValue; - property OldNIF_CIF : String read GetOldNIF_CIFValue; - property NOMBRE : String read GetNOMBREValue write SetNOMBREValue; - property OldNOMBRE : String read GetOldNOMBREValue; - property RAZON_SOCIAL : String read GetRAZON_SOCIALValue write SetRAZON_SOCIALValue; - property OldRAZON_SOCIAL : String read GetOldRAZON_SOCIALValue; - property CALLE : String read GetCALLEValue write SetCALLEValue; - property OldCALLE : String read GetOldCALLEValue; - property POBLACION : String read GetPOBLACIONValue write SetPOBLACIONValue; - property OldPOBLACION : String read GetOldPOBLACIONValue; - property PROVINCIA : String read GetPROVINCIAValue write SetPROVINCIAValue; - property OldPROVINCIA : String read GetOldPROVINCIAValue; - property CODIGO_POSTAL : String read GetCODIGO_POSTALValue write SetCODIGO_POSTALValue; - property OldCODIGO_POSTAL : String read GetOldCODIGO_POSTALValue; - property TELEFONO_1 : String read GetTELEFONO_1Value write SetTELEFONO_1Value; - property OldTELEFONO_1 : String read GetOldTELEFONO_1Value; - property TELEFONO_2 : String read GetTELEFONO_2Value write SetTELEFONO_2Value; - property OldTELEFONO_2 : String read GetOldTELEFONO_2Value; - property MOVIL_1 : String read GetMOVIL_1Value write SetMOVIL_1Value; - property OldMOVIL_1 : String read GetOldMOVIL_1Value; - property MOVIL_2 : String read GetMOVIL_2Value write SetMOVIL_2Value; - property OldMOVIL_2 : String read GetOldMOVIL_2Value; - property FAX : String read GetFAXValue write SetFAXValue; - property OldFAX : String read GetOldFAXValue; - property EMAIL_1 : String read GetEMAIL_1Value write SetEMAIL_1Value; - property OldEMAIL_1 : String read GetOldEMAIL_1Value; - property EMAIL_2 : String read GetEMAIL_2Value write SetEMAIL_2Value; - property OldEMAIL_2 : String read GetOldEMAIL_2Value; - property PAGINA_WEB : String read GetPAGINA_WEBValue write SetPAGINA_WEBValue; - property OldPAGINA_WEB : String read GetOldPAGINA_WEBValue; - property NOTAS : IROStrings read GetNOTASValue write SetNOTASValue; - property OldNOTAS : IROStrings read GetOldNOTASValue; - property FECHA_ALTA : DateTime read GetFECHA_ALTAValue write SetFECHA_ALTAValue; - property OldFECHA_ALTA : DateTime read GetOldFECHA_ALTAValue; - property FECHA_MODIFICACION : DateTime read GetFECHA_MODIFICACIONValue write SetFECHA_MODIFICACIONValue; - property OldFECHA_MODIFICACION : DateTime read GetOldFECHA_MODIFICACIONValue; - property USUARIO : String read GetUSUARIOValue write SetUSUARIOValue; - property OldUSUARIO : String read GetOldUSUARIOValue; - property LOGOTIPO : IROStream read GetLOGOTIPOValue write SetLOGOTIPOValue; - property OldLOGOTIPO : IROStream read GetOldLOGOTIPOValue; - property REGISTRO_MERCANTIL : String read GetREGISTRO_MERCANTILValue write SetREGISTRO_MERCANTILValue; - property OldREGISTRO_MERCANTIL : String read GetOldREGISTRO_MERCANTILValue; - property IVA : Float read GetIVAValue write SetIVAValue; - property OldIVA : Float read GetOldIVAValue; - - public - constructor Create(aBusinessProcessor: TDABusinessProcessor); override; - destructor Destroy; override; - - end; - - { IEmpresasDatosBanco_RefreshDelta } - IEmpresasDatosBanco_RefreshDelta = interface(IEmpresasDatosBanco_Refresh) - ['{BF0D6D54-14FC-4676-B1A0-DF972799F923}'] - { Property getters and setters } - function GetOldIDValue : Integer; - function GetOldID_EMPRESAValue : Integer; - function GetOldNOMBREValue : String; - function GetOldENTIDADValue : String; - function GetOldSUCURSALValue : String; - function GetOldDCValue : String; - function GetOldCUENTAValue : String; - function GetOldSUFIJO_N19Value : String; - function GetOldSUFIJO_N58Value : String; - - { Properties } - property OldID : Integer read GetOldIDValue; - property OldID_EMPRESA : Integer read GetOldID_EMPRESAValue; - property OldNOMBRE : String read GetOldNOMBREValue; - property OldENTIDAD : String read GetOldENTIDADValue; - property OldSUCURSAL : String read GetOldSUCURSALValue; - property OldDC : String read GetOldDCValue; - property OldCUENTA : String read GetOldCUENTAValue; - property OldSUFIJO_N19 : String read GetOldSUFIJO_N19Value; - property OldSUFIJO_N58 : String read GetOldSUFIJO_N58Value; - end; - - { TEmpresasDatosBanco_RefreshBusinessProcessorRules } - TEmpresasDatosBanco_RefreshBusinessProcessorRules = class(TDABusinessProcessorRules, IEmpresasDatosBanco_Refresh, IEmpresasDatosBanco_RefreshDelta) - private - protected - { Property getters and setters } - function GetIDValue: Integer; virtual; - function GetOldIDValue: Integer; virtual; - procedure SetIDValue(const aValue: Integer); virtual; - function GetID_EMPRESAValue: Integer; virtual; - function GetOldID_EMPRESAValue: Integer; virtual; - procedure SetID_EMPRESAValue(const aValue: Integer); virtual; - function GetNOMBREValue: String; virtual; - function GetOldNOMBREValue: String; virtual; - procedure SetNOMBREValue(const aValue: String); virtual; - function GetENTIDADValue: String; virtual; - function GetOldENTIDADValue: String; virtual; - procedure SetENTIDADValue(const aValue: String); virtual; - function GetSUCURSALValue: String; virtual; - function GetOldSUCURSALValue: String; virtual; - procedure SetSUCURSALValue(const aValue: String); virtual; - function GetDCValue: String; virtual; - function GetOldDCValue: String; virtual; - procedure SetDCValue(const aValue: String); virtual; - function GetCUENTAValue: String; virtual; - function GetOldCUENTAValue: String; virtual; - procedure SetCUENTAValue(const aValue: String); virtual; - function GetSUFIJO_N19Value: String; virtual; - function GetOldSUFIJO_N19Value: String; virtual; - procedure SetSUFIJO_N19Value(const aValue: String); virtual; - function GetSUFIJO_N58Value: String; virtual; - function GetOldSUFIJO_N58Value: String; virtual; - procedure SetSUFIJO_N58Value(const aValue: String); virtual; - - { Properties } - property ID : Integer read GetIDValue write SetIDValue; - property OldID : Integer read GetOldIDValue; - property ID_EMPRESA : Integer read GetID_EMPRESAValue write SetID_EMPRESAValue; - property OldID_EMPRESA : Integer read GetOldID_EMPRESAValue; - property NOMBRE : String read GetNOMBREValue write SetNOMBREValue; - property OldNOMBRE : String read GetOldNOMBREValue; - property ENTIDAD : String read GetENTIDADValue write SetENTIDADValue; - property OldENTIDAD : String read GetOldENTIDADValue; - property SUCURSAL : String read GetSUCURSALValue write SetSUCURSALValue; - property OldSUCURSAL : String read GetOldSUCURSALValue; - property DC : String read GetDCValue write SetDCValue; - property OldDC : String read GetOldDCValue; - property CUENTA : String read GetCUENTAValue write SetCUENTAValue; - property OldCUENTA : String read GetOldCUENTAValue; - property SUFIJO_N19 : String read GetSUFIJO_N19Value write SetSUFIJO_N19Value; - property OldSUFIJO_N19 : String read GetOldSUFIJO_N19Value; - property SUFIJO_N58 : String read GetSUFIJO_N58Value write SetSUFIJO_N58Value; - property OldSUFIJO_N58 : String read GetOldSUFIJO_N58Value; - - public - constructor Create(aBusinessProcessor: TDABusinessProcessor); override; - destructor Destroy; override; - - end; - -implementation - -uses - Variants, uROBinaryHelpers; - -{ TEmpresasBusinessProcessorRules } -constructor TEmpresasBusinessProcessorRules.Create(aBusinessProcessor: TDABusinessProcessor); -begin - inherited; -end; - -destructor TEmpresasBusinessProcessorRules.Destroy; -begin - inherited; -end; - -function TEmpresasBusinessProcessorRules.GetIDValue: Integer; -begin - result := BusinessProcessor.CurrentChange.NewValueByName[fld_EmpresasID]; -end; - -function TEmpresasBusinessProcessorRules.GetOldIDValue: Integer; -begin - result := BusinessProcessor.CurrentChange.OldValueByName[fld_EmpresasID]; -end; - -procedure TEmpresasBusinessProcessorRules.SetIDValue(const aValue: Integer); -begin - BusinessProcessor.CurrentChange.NewValueByName[fld_EmpresasID] := aValue; -end; - -function TEmpresasBusinessProcessorRules.GetNIF_CIFValue: String; -begin - result := BusinessProcessor.CurrentChange.NewValueByName[fld_EmpresasNIF_CIF]; -end; - -function TEmpresasBusinessProcessorRules.GetOldNIF_CIFValue: String; -begin - result := BusinessProcessor.CurrentChange.OldValueByName[fld_EmpresasNIF_CIF]; -end; - -procedure TEmpresasBusinessProcessorRules.SetNIF_CIFValue(const aValue: String); -begin - BusinessProcessor.CurrentChange.NewValueByName[fld_EmpresasNIF_CIF] := aValue; -end; - -function TEmpresasBusinessProcessorRules.GetNOMBREValue: String; -begin - result := BusinessProcessor.CurrentChange.NewValueByName[fld_EmpresasNOMBRE]; -end; - -function TEmpresasBusinessProcessorRules.GetOldNOMBREValue: String; -begin - result := BusinessProcessor.CurrentChange.OldValueByName[fld_EmpresasNOMBRE]; -end; - -procedure TEmpresasBusinessProcessorRules.SetNOMBREValue(const aValue: String); -begin - BusinessProcessor.CurrentChange.NewValueByName[fld_EmpresasNOMBRE] := aValue; -end; - -function TEmpresasBusinessProcessorRules.GetRAZON_SOCIALValue: String; -begin - result := BusinessProcessor.CurrentChange.NewValueByName[fld_EmpresasRAZON_SOCIAL]; -end; - -function TEmpresasBusinessProcessorRules.GetOldRAZON_SOCIALValue: String; -begin - result := BusinessProcessor.CurrentChange.OldValueByName[fld_EmpresasRAZON_SOCIAL]; -end; - -procedure TEmpresasBusinessProcessorRules.SetRAZON_SOCIALValue(const aValue: String); -begin - BusinessProcessor.CurrentChange.NewValueByName[fld_EmpresasRAZON_SOCIAL] := aValue; -end; - -function TEmpresasBusinessProcessorRules.GetCALLEValue: String; -begin - result := BusinessProcessor.CurrentChange.NewValueByName[fld_EmpresasCALLE]; -end; - -function TEmpresasBusinessProcessorRules.GetOldCALLEValue: String; -begin - result := BusinessProcessor.CurrentChange.OldValueByName[fld_EmpresasCALLE]; -end; - -procedure TEmpresasBusinessProcessorRules.SetCALLEValue(const aValue: String); -begin - BusinessProcessor.CurrentChange.NewValueByName[fld_EmpresasCALLE] := aValue; -end; - -function TEmpresasBusinessProcessorRules.GetPOBLACIONValue: String; -begin - result := BusinessProcessor.CurrentChange.NewValueByName[fld_EmpresasPOBLACION]; -end; - -function TEmpresasBusinessProcessorRules.GetOldPOBLACIONValue: String; -begin - result := BusinessProcessor.CurrentChange.OldValueByName[fld_EmpresasPOBLACION]; -end; - -procedure TEmpresasBusinessProcessorRules.SetPOBLACIONValue(const aValue: String); -begin - BusinessProcessor.CurrentChange.NewValueByName[fld_EmpresasPOBLACION] := aValue; -end; - -function TEmpresasBusinessProcessorRules.GetPROVINCIAValue: String; -begin - result := BusinessProcessor.CurrentChange.NewValueByName[fld_EmpresasPROVINCIA]; -end; - -function TEmpresasBusinessProcessorRules.GetOldPROVINCIAValue: String; -begin - result := BusinessProcessor.CurrentChange.OldValueByName[fld_EmpresasPROVINCIA]; -end; - -procedure TEmpresasBusinessProcessorRules.SetPROVINCIAValue(const aValue: String); -begin - BusinessProcessor.CurrentChange.NewValueByName[fld_EmpresasPROVINCIA] := aValue; -end; - -function TEmpresasBusinessProcessorRules.GetCODIGO_POSTALValue: String; -begin - result := BusinessProcessor.CurrentChange.NewValueByName[fld_EmpresasCODIGO_POSTAL]; -end; - -function TEmpresasBusinessProcessorRules.GetOldCODIGO_POSTALValue: String; -begin - result := BusinessProcessor.CurrentChange.OldValueByName[fld_EmpresasCODIGO_POSTAL]; -end; - -procedure TEmpresasBusinessProcessorRules.SetCODIGO_POSTALValue(const aValue: String); -begin - BusinessProcessor.CurrentChange.NewValueByName[fld_EmpresasCODIGO_POSTAL] := aValue; -end; - -function TEmpresasBusinessProcessorRules.GetTELEFONO_1Value: String; -begin - result := BusinessProcessor.CurrentChange.NewValueByName[fld_EmpresasTELEFONO_1]; -end; - -function TEmpresasBusinessProcessorRules.GetOldTELEFONO_1Value: String; -begin - result := BusinessProcessor.CurrentChange.OldValueByName[fld_EmpresasTELEFONO_1]; -end; - -procedure TEmpresasBusinessProcessorRules.SetTELEFONO_1Value(const aValue: String); -begin - BusinessProcessor.CurrentChange.NewValueByName[fld_EmpresasTELEFONO_1] := aValue; -end; - -function TEmpresasBusinessProcessorRules.GetTELEFONO_2Value: String; -begin - result := BusinessProcessor.CurrentChange.NewValueByName[fld_EmpresasTELEFONO_2]; -end; - -function TEmpresasBusinessProcessorRules.GetOldTELEFONO_2Value: String; -begin - result := BusinessProcessor.CurrentChange.OldValueByName[fld_EmpresasTELEFONO_2]; -end; - -procedure TEmpresasBusinessProcessorRules.SetTELEFONO_2Value(const aValue: String); -begin - BusinessProcessor.CurrentChange.NewValueByName[fld_EmpresasTELEFONO_2] := aValue; -end; - -function TEmpresasBusinessProcessorRules.GetMOVIL_1Value: String; -begin - result := BusinessProcessor.CurrentChange.NewValueByName[fld_EmpresasMOVIL_1]; -end; - -function TEmpresasBusinessProcessorRules.GetOldMOVIL_1Value: String; -begin - result := BusinessProcessor.CurrentChange.OldValueByName[fld_EmpresasMOVIL_1]; -end; - -procedure TEmpresasBusinessProcessorRules.SetMOVIL_1Value(const aValue: String); -begin - BusinessProcessor.CurrentChange.NewValueByName[fld_EmpresasMOVIL_1] := aValue; -end; - -function TEmpresasBusinessProcessorRules.GetMOVIL_2Value: String; -begin - result := BusinessProcessor.CurrentChange.NewValueByName[fld_EmpresasMOVIL_2]; -end; - -function TEmpresasBusinessProcessorRules.GetOldMOVIL_2Value: String; -begin - result := BusinessProcessor.CurrentChange.OldValueByName[fld_EmpresasMOVIL_2]; -end; - -procedure TEmpresasBusinessProcessorRules.SetMOVIL_2Value(const aValue: String); -begin - BusinessProcessor.CurrentChange.NewValueByName[fld_EmpresasMOVIL_2] := aValue; -end; - -function TEmpresasBusinessProcessorRules.GetFAXValue: String; -begin - result := BusinessProcessor.CurrentChange.NewValueByName[fld_EmpresasFAX]; -end; - -function TEmpresasBusinessProcessorRules.GetOldFAXValue: String; -begin - result := BusinessProcessor.CurrentChange.OldValueByName[fld_EmpresasFAX]; -end; - -procedure TEmpresasBusinessProcessorRules.SetFAXValue(const aValue: String); -begin - BusinessProcessor.CurrentChange.NewValueByName[fld_EmpresasFAX] := aValue; -end; - -function TEmpresasBusinessProcessorRules.GetEMAIL_1Value: String; -begin - result := BusinessProcessor.CurrentChange.NewValueByName[fld_EmpresasEMAIL_1]; -end; - -function TEmpresasBusinessProcessorRules.GetOldEMAIL_1Value: String; -begin - result := BusinessProcessor.CurrentChange.OldValueByName[fld_EmpresasEMAIL_1]; -end; - -procedure TEmpresasBusinessProcessorRules.SetEMAIL_1Value(const aValue: String); -begin - BusinessProcessor.CurrentChange.NewValueByName[fld_EmpresasEMAIL_1] := aValue; -end; - -function TEmpresasBusinessProcessorRules.GetEMAIL_2Value: String; -begin - result := BusinessProcessor.CurrentChange.NewValueByName[fld_EmpresasEMAIL_2]; -end; - -function TEmpresasBusinessProcessorRules.GetOldEMAIL_2Value: String; -begin - result := BusinessProcessor.CurrentChange.OldValueByName[fld_EmpresasEMAIL_2]; -end; - -procedure TEmpresasBusinessProcessorRules.SetEMAIL_2Value(const aValue: String); -begin - BusinessProcessor.CurrentChange.NewValueByName[fld_EmpresasEMAIL_2] := aValue; -end; - -function TEmpresasBusinessProcessorRules.GetPAGINA_WEBValue: String; -begin - result := BusinessProcessor.CurrentChange.NewValueByName[fld_EmpresasPAGINA_WEB]; -end; - -function TEmpresasBusinessProcessorRules.GetOldPAGINA_WEBValue: String; -begin - result := BusinessProcessor.CurrentChange.OldValueByName[fld_EmpresasPAGINA_WEB]; -end; - -procedure TEmpresasBusinessProcessorRules.SetPAGINA_WEBValue(const aValue: String); -begin - BusinessProcessor.CurrentChange.NewValueByName[fld_EmpresasPAGINA_WEB] := aValue; -end; - -function TEmpresasBusinessProcessorRules.GetNOTASValue: IROStrings; -begin - result := NewROStrings(); - result.Text := BusinessProcessor.CurrentChange.NewValueByName[fld_EmpresasNOTAS]; -end; - -function TEmpresasBusinessProcessorRules.GetOldNOTASValue: IROStrings; -begin - result := NewROStrings(); - result.Text := BusinessProcessor.CurrentChange.OldValueByName[fld_EmpresasNOTAS]; -end; - -procedure TEmpresasBusinessProcessorRules.SetNOTASValue(const aValue: IROStrings); -begin - BusinessProcessor.CurrentChange.NewValueByName[fld_EmpresasNOTAS] := aValue.Text; -end; - -function TEmpresasBusinessProcessorRules.GetFECHA_ALTAValue: DateTime; -begin - result := BusinessProcessor.CurrentChange.NewValueByName[fld_EmpresasFECHA_ALTA]; -end; - -function TEmpresasBusinessProcessorRules.GetOldFECHA_ALTAValue: DateTime; -begin - result := BusinessProcessor.CurrentChange.OldValueByName[fld_EmpresasFECHA_ALTA]; -end; - -procedure TEmpresasBusinessProcessorRules.SetFECHA_ALTAValue(const aValue: DateTime); -begin - BusinessProcessor.CurrentChange.NewValueByName[fld_EmpresasFECHA_ALTA] := aValue; -end; - -function TEmpresasBusinessProcessorRules.GetFECHA_MODIFICACIONValue: DateTime; -begin - result := BusinessProcessor.CurrentChange.NewValueByName[fld_EmpresasFECHA_MODIFICACION]; -end; - -function TEmpresasBusinessProcessorRules.GetOldFECHA_MODIFICACIONValue: DateTime; -begin - result := BusinessProcessor.CurrentChange.OldValueByName[fld_EmpresasFECHA_MODIFICACION]; -end; - -procedure TEmpresasBusinessProcessorRules.SetFECHA_MODIFICACIONValue(const aValue: DateTime); -begin - BusinessProcessor.CurrentChange.NewValueByName[fld_EmpresasFECHA_MODIFICACION] := aValue; -end; - -function TEmpresasBusinessProcessorRules.GetUSUARIOValue: String; -begin - result := BusinessProcessor.CurrentChange.NewValueByName[fld_EmpresasUSUARIO]; -end; - -function TEmpresasBusinessProcessorRules.GetOldUSUARIOValue: String; -begin - result := BusinessProcessor.CurrentChange.OldValueByName[fld_EmpresasUSUARIO]; -end; - -procedure TEmpresasBusinessProcessorRules.SetUSUARIOValue(const aValue: String); -begin - BusinessProcessor.CurrentChange.NewValueByName[fld_EmpresasUSUARIO] := aValue; -end; - -function TEmpresasBusinessProcessorRules.GetLOGOTIPOValue: IROStream; -begin - result := NewROStream(); - WriteVariantBinaryToBinary(BusinessProcessor.CurrentChange.NewValueByName[fld_EmpresasLOGOTIPO], result.Stream); -end; - -function TEmpresasBusinessProcessorRules.GetOldLOGOTIPOValue: IROStream; -begin - result := NewROStream(); - WriteVariantBinaryToBinary(BusinessProcessor.CurrentChange.OldValueByName[fld_EmpresasLOGOTIPO], result.Stream); -end; - -procedure TEmpresasBusinessProcessorRules.SetLOGOTIPOValue(const aValue: IROStream); -begin - BusinessProcessor.CurrentChange.NewValueByName[fld_EmpresasLOGOTIPO] := VariantBinaryFromBinary(aValue.Stream); -end; - -function TEmpresasBusinessProcessorRules.GetREGISTRO_MERCANTILValue: String; -begin - result := BusinessProcessor.CurrentChange.NewValueByName[fld_EmpresasREGISTRO_MERCANTIL]; -end; - -function TEmpresasBusinessProcessorRules.GetOldREGISTRO_MERCANTILValue: String; -begin - result := BusinessProcessor.CurrentChange.OldValueByName[fld_EmpresasREGISTRO_MERCANTIL]; -end; - -procedure TEmpresasBusinessProcessorRules.SetREGISTRO_MERCANTILValue(const aValue: String); -begin - BusinessProcessor.CurrentChange.NewValueByName[fld_EmpresasREGISTRO_MERCANTIL] := aValue; -end; - -function TEmpresasBusinessProcessorRules.GetIVAValue: Float; -begin - result := BusinessProcessor.CurrentChange.NewValueByName[fld_EmpresasIVA]; -end; - -function TEmpresasBusinessProcessorRules.GetOldIVAValue: Float; -begin - result := BusinessProcessor.CurrentChange.OldValueByName[fld_EmpresasIVA]; -end; - -procedure TEmpresasBusinessProcessorRules.SetIVAValue(const aValue: Float); -begin - BusinessProcessor.CurrentChange.NewValueByName[fld_EmpresasIVA] := aValue; -end; - - -{ TEmpresasDatosBancoBusinessProcessorRules } -constructor TEmpresasDatosBancoBusinessProcessorRules.Create(aBusinessProcessor: TDABusinessProcessor); -begin - inherited; -end; - -destructor TEmpresasDatosBancoBusinessProcessorRules.Destroy; -begin - inherited; -end; - -function TEmpresasDatosBancoBusinessProcessorRules.GetIDValue: Integer; -begin - result := BusinessProcessor.CurrentChange.NewValueByName[fld_EmpresasDatosBancoID]; -end; - -function TEmpresasDatosBancoBusinessProcessorRules.GetOldIDValue: Integer; -begin - result := BusinessProcessor.CurrentChange.OldValueByName[fld_EmpresasDatosBancoID]; -end; - -procedure TEmpresasDatosBancoBusinessProcessorRules.SetIDValue(const aValue: Integer); -begin - BusinessProcessor.CurrentChange.NewValueByName[fld_EmpresasDatosBancoID] := aValue; -end; - -function TEmpresasDatosBancoBusinessProcessorRules.GetID_EMPRESAValue: Integer; -begin - result := BusinessProcessor.CurrentChange.NewValueByName[fld_EmpresasDatosBancoID_EMPRESA]; -end; - -function TEmpresasDatosBancoBusinessProcessorRules.GetOldID_EMPRESAValue: Integer; -begin - result := BusinessProcessor.CurrentChange.OldValueByName[fld_EmpresasDatosBancoID_EMPRESA]; -end; - -procedure TEmpresasDatosBancoBusinessProcessorRules.SetID_EMPRESAValue(const aValue: Integer); -begin - BusinessProcessor.CurrentChange.NewValueByName[fld_EmpresasDatosBancoID_EMPRESA] := aValue; -end; - -function TEmpresasDatosBancoBusinessProcessorRules.GetNOMBREValue: String; -begin - result := BusinessProcessor.CurrentChange.NewValueByName[fld_EmpresasDatosBancoNOMBRE]; -end; - -function TEmpresasDatosBancoBusinessProcessorRules.GetOldNOMBREValue: String; -begin - result := BusinessProcessor.CurrentChange.OldValueByName[fld_EmpresasDatosBancoNOMBRE]; -end; - -procedure TEmpresasDatosBancoBusinessProcessorRules.SetNOMBREValue(const aValue: String); -begin - BusinessProcessor.CurrentChange.NewValueByName[fld_EmpresasDatosBancoNOMBRE] := aValue; -end; - -function TEmpresasDatosBancoBusinessProcessorRules.GetENTIDADValue: String; -begin - result := BusinessProcessor.CurrentChange.NewValueByName[fld_EmpresasDatosBancoENTIDAD]; -end; - -function TEmpresasDatosBancoBusinessProcessorRules.GetOldENTIDADValue: String; -begin - result := BusinessProcessor.CurrentChange.OldValueByName[fld_EmpresasDatosBancoENTIDAD]; -end; - -procedure TEmpresasDatosBancoBusinessProcessorRules.SetENTIDADValue(const aValue: String); -begin - BusinessProcessor.CurrentChange.NewValueByName[fld_EmpresasDatosBancoENTIDAD] := aValue; -end; - -function TEmpresasDatosBancoBusinessProcessorRules.GetSUCURSALValue: String; -begin - result := BusinessProcessor.CurrentChange.NewValueByName[fld_EmpresasDatosBancoSUCURSAL]; -end; - -function TEmpresasDatosBancoBusinessProcessorRules.GetOldSUCURSALValue: String; -begin - result := BusinessProcessor.CurrentChange.OldValueByName[fld_EmpresasDatosBancoSUCURSAL]; -end; - -procedure TEmpresasDatosBancoBusinessProcessorRules.SetSUCURSALValue(const aValue: String); -begin - BusinessProcessor.CurrentChange.NewValueByName[fld_EmpresasDatosBancoSUCURSAL] := aValue; -end; - -function TEmpresasDatosBancoBusinessProcessorRules.GetDCValue: String; -begin - result := BusinessProcessor.CurrentChange.NewValueByName[fld_EmpresasDatosBancoDC]; -end; - -function TEmpresasDatosBancoBusinessProcessorRules.GetOldDCValue: String; -begin - result := BusinessProcessor.CurrentChange.OldValueByName[fld_EmpresasDatosBancoDC]; -end; - -procedure TEmpresasDatosBancoBusinessProcessorRules.SetDCValue(const aValue: String); -begin - BusinessProcessor.CurrentChange.NewValueByName[fld_EmpresasDatosBancoDC] := aValue; -end; - -function TEmpresasDatosBancoBusinessProcessorRules.GetCUENTAValue: String; -begin - result := BusinessProcessor.CurrentChange.NewValueByName[fld_EmpresasDatosBancoCUENTA]; -end; - -function TEmpresasDatosBancoBusinessProcessorRules.GetOldCUENTAValue: String; -begin - result := BusinessProcessor.CurrentChange.OldValueByName[fld_EmpresasDatosBancoCUENTA]; -end; - -procedure TEmpresasDatosBancoBusinessProcessorRules.SetCUENTAValue(const aValue: String); -begin - BusinessProcessor.CurrentChange.NewValueByName[fld_EmpresasDatosBancoCUENTA] := aValue; -end; - -function TEmpresasDatosBancoBusinessProcessorRules.GetSUFIJO_N19Value: String; -begin - result := BusinessProcessor.CurrentChange.NewValueByName[fld_EmpresasDatosBancoSUFIJO_N19]; -end; - -function TEmpresasDatosBancoBusinessProcessorRules.GetOldSUFIJO_N19Value: String; -begin - result := BusinessProcessor.CurrentChange.OldValueByName[fld_EmpresasDatosBancoSUFIJO_N19]; -end; - -procedure TEmpresasDatosBancoBusinessProcessorRules.SetSUFIJO_N19Value(const aValue: String); -begin - BusinessProcessor.CurrentChange.NewValueByName[fld_EmpresasDatosBancoSUFIJO_N19] := aValue; -end; - -function TEmpresasDatosBancoBusinessProcessorRules.GetSUFIJO_N58Value: String; -begin - result := BusinessProcessor.CurrentChange.NewValueByName[fld_EmpresasDatosBancoSUFIJO_N58]; -end; - -function TEmpresasDatosBancoBusinessProcessorRules.GetOldSUFIJO_N58Value: String; -begin - result := BusinessProcessor.CurrentChange.OldValueByName[fld_EmpresasDatosBancoSUFIJO_N58]; -end; - -procedure TEmpresasDatosBancoBusinessProcessorRules.SetSUFIJO_N58Value(const aValue: String); -begin - BusinessProcessor.CurrentChange.NewValueByName[fld_EmpresasDatosBancoSUFIJO_N58] := aValue; -end; - - -{ TEmpresas_RefreshBusinessProcessorRules } -constructor TEmpresas_RefreshBusinessProcessorRules.Create(aBusinessProcessor: TDABusinessProcessor); -begin - inherited; -end; - -destructor TEmpresas_RefreshBusinessProcessorRules.Destroy; -begin - inherited; -end; - -function TEmpresas_RefreshBusinessProcessorRules.GetIDValue: Integer; -begin - result := BusinessProcessor.CurrentChange.NewValueByName[fld_Empresas_RefreshID]; -end; - -function TEmpresas_RefreshBusinessProcessorRules.GetOldIDValue: Integer; -begin - result := BusinessProcessor.CurrentChange.OldValueByName[fld_Empresas_RefreshID]; -end; - -procedure TEmpresas_RefreshBusinessProcessorRules.SetIDValue(const aValue: Integer); -begin - BusinessProcessor.CurrentChange.NewValueByName[fld_Empresas_RefreshID] := aValue; -end; - -function TEmpresas_RefreshBusinessProcessorRules.GetNIF_CIFValue: String; -begin - result := BusinessProcessor.CurrentChange.NewValueByName[fld_Empresas_RefreshNIF_CIF]; -end; - -function TEmpresas_RefreshBusinessProcessorRules.GetOldNIF_CIFValue: String; -begin - result := BusinessProcessor.CurrentChange.OldValueByName[fld_Empresas_RefreshNIF_CIF]; -end; - -procedure TEmpresas_RefreshBusinessProcessorRules.SetNIF_CIFValue(const aValue: String); -begin - BusinessProcessor.CurrentChange.NewValueByName[fld_Empresas_RefreshNIF_CIF] := aValue; -end; - -function TEmpresas_RefreshBusinessProcessorRules.GetNOMBREValue: String; -begin - result := BusinessProcessor.CurrentChange.NewValueByName[fld_Empresas_RefreshNOMBRE]; -end; - -function TEmpresas_RefreshBusinessProcessorRules.GetOldNOMBREValue: String; -begin - result := BusinessProcessor.CurrentChange.OldValueByName[fld_Empresas_RefreshNOMBRE]; -end; - -procedure TEmpresas_RefreshBusinessProcessorRules.SetNOMBREValue(const aValue: String); -begin - BusinessProcessor.CurrentChange.NewValueByName[fld_Empresas_RefreshNOMBRE] := aValue; -end; - -function TEmpresas_RefreshBusinessProcessorRules.GetRAZON_SOCIALValue: String; -begin - result := BusinessProcessor.CurrentChange.NewValueByName[fld_Empresas_RefreshRAZON_SOCIAL]; -end; - -function TEmpresas_RefreshBusinessProcessorRules.GetOldRAZON_SOCIALValue: String; -begin - result := BusinessProcessor.CurrentChange.OldValueByName[fld_Empresas_RefreshRAZON_SOCIAL]; -end; - -procedure TEmpresas_RefreshBusinessProcessorRules.SetRAZON_SOCIALValue(const aValue: String); -begin - BusinessProcessor.CurrentChange.NewValueByName[fld_Empresas_RefreshRAZON_SOCIAL] := aValue; -end; - -function TEmpresas_RefreshBusinessProcessorRules.GetCALLEValue: String; -begin - result := BusinessProcessor.CurrentChange.NewValueByName[fld_Empresas_RefreshCALLE]; -end; - -function TEmpresas_RefreshBusinessProcessorRules.GetOldCALLEValue: String; -begin - result := BusinessProcessor.CurrentChange.OldValueByName[fld_Empresas_RefreshCALLE]; -end; - -procedure TEmpresas_RefreshBusinessProcessorRules.SetCALLEValue(const aValue: String); -begin - BusinessProcessor.CurrentChange.NewValueByName[fld_Empresas_RefreshCALLE] := aValue; -end; - -function TEmpresas_RefreshBusinessProcessorRules.GetPOBLACIONValue: String; -begin - result := BusinessProcessor.CurrentChange.NewValueByName[fld_Empresas_RefreshPOBLACION]; -end; - -function TEmpresas_RefreshBusinessProcessorRules.GetOldPOBLACIONValue: String; -begin - result := BusinessProcessor.CurrentChange.OldValueByName[fld_Empresas_RefreshPOBLACION]; -end; - -procedure TEmpresas_RefreshBusinessProcessorRules.SetPOBLACIONValue(const aValue: String); -begin - BusinessProcessor.CurrentChange.NewValueByName[fld_Empresas_RefreshPOBLACION] := aValue; -end; - -function TEmpresas_RefreshBusinessProcessorRules.GetPROVINCIAValue: String; -begin - result := BusinessProcessor.CurrentChange.NewValueByName[fld_Empresas_RefreshPROVINCIA]; -end; - -function TEmpresas_RefreshBusinessProcessorRules.GetOldPROVINCIAValue: String; -begin - result := BusinessProcessor.CurrentChange.OldValueByName[fld_Empresas_RefreshPROVINCIA]; -end; - -procedure TEmpresas_RefreshBusinessProcessorRules.SetPROVINCIAValue(const aValue: String); -begin - BusinessProcessor.CurrentChange.NewValueByName[fld_Empresas_RefreshPROVINCIA] := aValue; -end; - -function TEmpresas_RefreshBusinessProcessorRules.GetCODIGO_POSTALValue: String; -begin - result := BusinessProcessor.CurrentChange.NewValueByName[fld_Empresas_RefreshCODIGO_POSTAL]; -end; - -function TEmpresas_RefreshBusinessProcessorRules.GetOldCODIGO_POSTALValue: String; -begin - result := BusinessProcessor.CurrentChange.OldValueByName[fld_Empresas_RefreshCODIGO_POSTAL]; -end; - -procedure TEmpresas_RefreshBusinessProcessorRules.SetCODIGO_POSTALValue(const aValue: String); -begin - BusinessProcessor.CurrentChange.NewValueByName[fld_Empresas_RefreshCODIGO_POSTAL] := aValue; -end; - -function TEmpresas_RefreshBusinessProcessorRules.GetTELEFONO_1Value: String; -begin - result := BusinessProcessor.CurrentChange.NewValueByName[fld_Empresas_RefreshTELEFONO_1]; -end; - -function TEmpresas_RefreshBusinessProcessorRules.GetOldTELEFONO_1Value: String; -begin - result := BusinessProcessor.CurrentChange.OldValueByName[fld_Empresas_RefreshTELEFONO_1]; -end; - -procedure TEmpresas_RefreshBusinessProcessorRules.SetTELEFONO_1Value(const aValue: String); -begin - BusinessProcessor.CurrentChange.NewValueByName[fld_Empresas_RefreshTELEFONO_1] := aValue; -end; - -function TEmpresas_RefreshBusinessProcessorRules.GetTELEFONO_2Value: String; -begin - result := BusinessProcessor.CurrentChange.NewValueByName[fld_Empresas_RefreshTELEFONO_2]; -end; - -function TEmpresas_RefreshBusinessProcessorRules.GetOldTELEFONO_2Value: String; -begin - result := BusinessProcessor.CurrentChange.OldValueByName[fld_Empresas_RefreshTELEFONO_2]; -end; - -procedure TEmpresas_RefreshBusinessProcessorRules.SetTELEFONO_2Value(const aValue: String); -begin - BusinessProcessor.CurrentChange.NewValueByName[fld_Empresas_RefreshTELEFONO_2] := aValue; -end; - -function TEmpresas_RefreshBusinessProcessorRules.GetMOVIL_1Value: String; -begin - result := BusinessProcessor.CurrentChange.NewValueByName[fld_Empresas_RefreshMOVIL_1]; -end; - -function TEmpresas_RefreshBusinessProcessorRules.GetOldMOVIL_1Value: String; -begin - result := BusinessProcessor.CurrentChange.OldValueByName[fld_Empresas_RefreshMOVIL_1]; -end; - -procedure TEmpresas_RefreshBusinessProcessorRules.SetMOVIL_1Value(const aValue: String); -begin - BusinessProcessor.CurrentChange.NewValueByName[fld_Empresas_RefreshMOVIL_1] := aValue; -end; - -function TEmpresas_RefreshBusinessProcessorRules.GetMOVIL_2Value: String; -begin - result := BusinessProcessor.CurrentChange.NewValueByName[fld_Empresas_RefreshMOVIL_2]; -end; - -function TEmpresas_RefreshBusinessProcessorRules.GetOldMOVIL_2Value: String; -begin - result := BusinessProcessor.CurrentChange.OldValueByName[fld_Empresas_RefreshMOVIL_2]; -end; - -procedure TEmpresas_RefreshBusinessProcessorRules.SetMOVIL_2Value(const aValue: String); -begin - BusinessProcessor.CurrentChange.NewValueByName[fld_Empresas_RefreshMOVIL_2] := aValue; -end; - -function TEmpresas_RefreshBusinessProcessorRules.GetFAXValue: String; -begin - result := BusinessProcessor.CurrentChange.NewValueByName[fld_Empresas_RefreshFAX]; -end; - -function TEmpresas_RefreshBusinessProcessorRules.GetOldFAXValue: String; -begin - result := BusinessProcessor.CurrentChange.OldValueByName[fld_Empresas_RefreshFAX]; -end; - -procedure TEmpresas_RefreshBusinessProcessorRules.SetFAXValue(const aValue: String); -begin - BusinessProcessor.CurrentChange.NewValueByName[fld_Empresas_RefreshFAX] := aValue; -end; - -function TEmpresas_RefreshBusinessProcessorRules.GetEMAIL_1Value: String; -begin - result := BusinessProcessor.CurrentChange.NewValueByName[fld_Empresas_RefreshEMAIL_1]; -end; - -function TEmpresas_RefreshBusinessProcessorRules.GetOldEMAIL_1Value: String; -begin - result := BusinessProcessor.CurrentChange.OldValueByName[fld_Empresas_RefreshEMAIL_1]; -end; - -procedure TEmpresas_RefreshBusinessProcessorRules.SetEMAIL_1Value(const aValue: String); -begin - BusinessProcessor.CurrentChange.NewValueByName[fld_Empresas_RefreshEMAIL_1] := aValue; -end; - -function TEmpresas_RefreshBusinessProcessorRules.GetEMAIL_2Value: String; -begin - result := BusinessProcessor.CurrentChange.NewValueByName[fld_Empresas_RefreshEMAIL_2]; -end; - -function TEmpresas_RefreshBusinessProcessorRules.GetOldEMAIL_2Value: String; -begin - result := BusinessProcessor.CurrentChange.OldValueByName[fld_Empresas_RefreshEMAIL_2]; -end; - -procedure TEmpresas_RefreshBusinessProcessorRules.SetEMAIL_2Value(const aValue: String); -begin - BusinessProcessor.CurrentChange.NewValueByName[fld_Empresas_RefreshEMAIL_2] := aValue; -end; - -function TEmpresas_RefreshBusinessProcessorRules.GetPAGINA_WEBValue: String; -begin - result := BusinessProcessor.CurrentChange.NewValueByName[fld_Empresas_RefreshPAGINA_WEB]; -end; - -function TEmpresas_RefreshBusinessProcessorRules.GetOldPAGINA_WEBValue: String; -begin - result := BusinessProcessor.CurrentChange.OldValueByName[fld_Empresas_RefreshPAGINA_WEB]; -end; - -procedure TEmpresas_RefreshBusinessProcessorRules.SetPAGINA_WEBValue(const aValue: String); -begin - BusinessProcessor.CurrentChange.NewValueByName[fld_Empresas_RefreshPAGINA_WEB] := aValue; -end; - -function TEmpresas_RefreshBusinessProcessorRules.GetNOTASValue: IROStrings; -begin - result := NewROStrings(); - result.Text := BusinessProcessor.CurrentChange.NewValueByName[fld_Empresas_RefreshNOTAS]; -end; - -function TEmpresas_RefreshBusinessProcessorRules.GetOldNOTASValue: IROStrings; -begin - result := NewROStrings(); - result.Text := BusinessProcessor.CurrentChange.OldValueByName[fld_Empresas_RefreshNOTAS]; -end; - -procedure TEmpresas_RefreshBusinessProcessorRules.SetNOTASValue(const aValue: IROStrings); -begin - BusinessProcessor.CurrentChange.NewValueByName[fld_Empresas_RefreshNOTAS] := aValue.Text; -end; - -function TEmpresas_RefreshBusinessProcessorRules.GetFECHA_ALTAValue: DateTime; -begin - result := BusinessProcessor.CurrentChange.NewValueByName[fld_Empresas_RefreshFECHA_ALTA]; -end; - -function TEmpresas_RefreshBusinessProcessorRules.GetOldFECHA_ALTAValue: DateTime; -begin - result := BusinessProcessor.CurrentChange.OldValueByName[fld_Empresas_RefreshFECHA_ALTA]; -end; - -procedure TEmpresas_RefreshBusinessProcessorRules.SetFECHA_ALTAValue(const aValue: DateTime); -begin - BusinessProcessor.CurrentChange.NewValueByName[fld_Empresas_RefreshFECHA_ALTA] := aValue; -end; - -function TEmpresas_RefreshBusinessProcessorRules.GetFECHA_MODIFICACIONValue: DateTime; -begin - result := BusinessProcessor.CurrentChange.NewValueByName[fld_Empresas_RefreshFECHA_MODIFICACION]; -end; - -function TEmpresas_RefreshBusinessProcessorRules.GetOldFECHA_MODIFICACIONValue: DateTime; -begin - result := BusinessProcessor.CurrentChange.OldValueByName[fld_Empresas_RefreshFECHA_MODIFICACION]; -end; - -procedure TEmpresas_RefreshBusinessProcessorRules.SetFECHA_MODIFICACIONValue(const aValue: DateTime); -begin - BusinessProcessor.CurrentChange.NewValueByName[fld_Empresas_RefreshFECHA_MODIFICACION] := aValue; -end; - -function TEmpresas_RefreshBusinessProcessorRules.GetUSUARIOValue: String; -begin - result := BusinessProcessor.CurrentChange.NewValueByName[fld_Empresas_RefreshUSUARIO]; -end; - -function TEmpresas_RefreshBusinessProcessorRules.GetOldUSUARIOValue: String; -begin - result := BusinessProcessor.CurrentChange.OldValueByName[fld_Empresas_RefreshUSUARIO]; -end; - -procedure TEmpresas_RefreshBusinessProcessorRules.SetUSUARIOValue(const aValue: String); -begin - BusinessProcessor.CurrentChange.NewValueByName[fld_Empresas_RefreshUSUARIO] := aValue; -end; - -function TEmpresas_RefreshBusinessProcessorRules.GetLOGOTIPOValue: IROStream; -begin - result := NewROStream(); - WriteVariantBinaryToBinary(BusinessProcessor.CurrentChange.NewValueByName[fld_Empresas_RefreshLOGOTIPO], result.Stream); -end; - -function TEmpresas_RefreshBusinessProcessorRules.GetOldLOGOTIPOValue: IROStream; -begin - result := NewROStream(); - WriteVariantBinaryToBinary(BusinessProcessor.CurrentChange.OldValueByName[fld_Empresas_RefreshLOGOTIPO], result.Stream); -end; - -procedure TEmpresas_RefreshBusinessProcessorRules.SetLOGOTIPOValue(const aValue: IROStream); -begin - BusinessProcessor.CurrentChange.NewValueByName[fld_Empresas_RefreshLOGOTIPO] := VariantBinaryFromBinary(aValue.Stream); -end; - -function TEmpresas_RefreshBusinessProcessorRules.GetREGISTRO_MERCANTILValue: String; -begin - result := BusinessProcessor.CurrentChange.NewValueByName[fld_Empresas_RefreshREGISTRO_MERCANTIL]; -end; - -function TEmpresas_RefreshBusinessProcessorRules.GetOldREGISTRO_MERCANTILValue: String; -begin - result := BusinessProcessor.CurrentChange.OldValueByName[fld_Empresas_RefreshREGISTRO_MERCANTIL]; -end; - -procedure TEmpresas_RefreshBusinessProcessorRules.SetREGISTRO_MERCANTILValue(const aValue: String); -begin - BusinessProcessor.CurrentChange.NewValueByName[fld_Empresas_RefreshREGISTRO_MERCANTIL] := aValue; -end; - -function TEmpresas_RefreshBusinessProcessorRules.GetIVAValue: Float; -begin - result := BusinessProcessor.CurrentChange.NewValueByName[fld_Empresas_RefreshIVA]; -end; - -function TEmpresas_RefreshBusinessProcessorRules.GetOldIVAValue: Float; -begin - result := BusinessProcessor.CurrentChange.OldValueByName[fld_Empresas_RefreshIVA]; -end; - -procedure TEmpresas_RefreshBusinessProcessorRules.SetIVAValue(const aValue: Float); -begin - BusinessProcessor.CurrentChange.NewValueByName[fld_Empresas_RefreshIVA] := aValue; -end; - - -{ TEmpresasDatosBanco_RefreshBusinessProcessorRules } -constructor TEmpresasDatosBanco_RefreshBusinessProcessorRules.Create(aBusinessProcessor: TDABusinessProcessor); -begin - inherited; -end; - -destructor TEmpresasDatosBanco_RefreshBusinessProcessorRules.Destroy; -begin - inherited; -end; - -function TEmpresasDatosBanco_RefreshBusinessProcessorRules.GetIDValue: Integer; -begin - result := BusinessProcessor.CurrentChange.NewValueByName[fld_EmpresasDatosBanco_RefreshID]; -end; - -function TEmpresasDatosBanco_RefreshBusinessProcessorRules.GetOldIDValue: Integer; -begin - result := BusinessProcessor.CurrentChange.OldValueByName[fld_EmpresasDatosBanco_RefreshID]; -end; - -procedure TEmpresasDatosBanco_RefreshBusinessProcessorRules.SetIDValue(const aValue: Integer); -begin - BusinessProcessor.CurrentChange.NewValueByName[fld_EmpresasDatosBanco_RefreshID] := aValue; -end; - -function TEmpresasDatosBanco_RefreshBusinessProcessorRules.GetID_EMPRESAValue: Integer; -begin - result := BusinessProcessor.CurrentChange.NewValueByName[fld_EmpresasDatosBanco_RefreshID_EMPRESA]; -end; - -function TEmpresasDatosBanco_RefreshBusinessProcessorRules.GetOldID_EMPRESAValue: Integer; -begin - result := BusinessProcessor.CurrentChange.OldValueByName[fld_EmpresasDatosBanco_RefreshID_EMPRESA]; -end; - -procedure TEmpresasDatosBanco_RefreshBusinessProcessorRules.SetID_EMPRESAValue(const aValue: Integer); -begin - BusinessProcessor.CurrentChange.NewValueByName[fld_EmpresasDatosBanco_RefreshID_EMPRESA] := aValue; -end; - -function TEmpresasDatosBanco_RefreshBusinessProcessorRules.GetNOMBREValue: String; -begin - result := BusinessProcessor.CurrentChange.NewValueByName[fld_EmpresasDatosBanco_RefreshNOMBRE]; -end; - -function TEmpresasDatosBanco_RefreshBusinessProcessorRules.GetOldNOMBREValue: String; -begin - result := BusinessProcessor.CurrentChange.OldValueByName[fld_EmpresasDatosBanco_RefreshNOMBRE]; -end; - -procedure TEmpresasDatosBanco_RefreshBusinessProcessorRules.SetNOMBREValue(const aValue: String); -begin - BusinessProcessor.CurrentChange.NewValueByName[fld_EmpresasDatosBanco_RefreshNOMBRE] := aValue; -end; - -function TEmpresasDatosBanco_RefreshBusinessProcessorRules.GetENTIDADValue: String; -begin - result := BusinessProcessor.CurrentChange.NewValueByName[fld_EmpresasDatosBanco_RefreshENTIDAD]; -end; - -function TEmpresasDatosBanco_RefreshBusinessProcessorRules.GetOldENTIDADValue: String; -begin - result := BusinessProcessor.CurrentChange.OldValueByName[fld_EmpresasDatosBanco_RefreshENTIDAD]; -end; - -procedure TEmpresasDatosBanco_RefreshBusinessProcessorRules.SetENTIDADValue(const aValue: String); -begin - BusinessProcessor.CurrentChange.NewValueByName[fld_EmpresasDatosBanco_RefreshENTIDAD] := aValue; -end; - -function TEmpresasDatosBanco_RefreshBusinessProcessorRules.GetSUCURSALValue: String; -begin - result := BusinessProcessor.CurrentChange.NewValueByName[fld_EmpresasDatosBanco_RefreshSUCURSAL]; -end; - -function TEmpresasDatosBanco_RefreshBusinessProcessorRules.GetOldSUCURSALValue: String; -begin - result := BusinessProcessor.CurrentChange.OldValueByName[fld_EmpresasDatosBanco_RefreshSUCURSAL]; -end; - -procedure TEmpresasDatosBanco_RefreshBusinessProcessorRules.SetSUCURSALValue(const aValue: String); -begin - BusinessProcessor.CurrentChange.NewValueByName[fld_EmpresasDatosBanco_RefreshSUCURSAL] := aValue; -end; - -function TEmpresasDatosBanco_RefreshBusinessProcessorRules.GetDCValue: String; -begin - result := BusinessProcessor.CurrentChange.NewValueByName[fld_EmpresasDatosBanco_RefreshDC]; -end; - -function TEmpresasDatosBanco_RefreshBusinessProcessorRules.GetOldDCValue: String; -begin - result := BusinessProcessor.CurrentChange.OldValueByName[fld_EmpresasDatosBanco_RefreshDC]; -end; - -procedure TEmpresasDatosBanco_RefreshBusinessProcessorRules.SetDCValue(const aValue: String); -begin - BusinessProcessor.CurrentChange.NewValueByName[fld_EmpresasDatosBanco_RefreshDC] := aValue; -end; - -function TEmpresasDatosBanco_RefreshBusinessProcessorRules.GetCUENTAValue: String; -begin - result := BusinessProcessor.CurrentChange.NewValueByName[fld_EmpresasDatosBanco_RefreshCUENTA]; -end; - -function TEmpresasDatosBanco_RefreshBusinessProcessorRules.GetOldCUENTAValue: String; -begin - result := BusinessProcessor.CurrentChange.OldValueByName[fld_EmpresasDatosBanco_RefreshCUENTA]; -end; - -procedure TEmpresasDatosBanco_RefreshBusinessProcessorRules.SetCUENTAValue(const aValue: String); -begin - BusinessProcessor.CurrentChange.NewValueByName[fld_EmpresasDatosBanco_RefreshCUENTA] := aValue; -end; - -function TEmpresasDatosBanco_RefreshBusinessProcessorRules.GetSUFIJO_N19Value: String; -begin - result := BusinessProcessor.CurrentChange.NewValueByName[fld_EmpresasDatosBanco_RefreshSUFIJO_N19]; -end; - -function TEmpresasDatosBanco_RefreshBusinessProcessorRules.GetOldSUFIJO_N19Value: String; -begin - result := BusinessProcessor.CurrentChange.OldValueByName[fld_EmpresasDatosBanco_RefreshSUFIJO_N19]; -end; - -procedure TEmpresasDatosBanco_RefreshBusinessProcessorRules.SetSUFIJO_N19Value(const aValue: String); -begin - BusinessProcessor.CurrentChange.NewValueByName[fld_EmpresasDatosBanco_RefreshSUFIJO_N19] := aValue; -end; - -function TEmpresasDatosBanco_RefreshBusinessProcessorRules.GetSUFIJO_N58Value: String; -begin - result := BusinessProcessor.CurrentChange.NewValueByName[fld_EmpresasDatosBanco_RefreshSUFIJO_N58]; -end; - -function TEmpresasDatosBanco_RefreshBusinessProcessorRules.GetOldSUFIJO_N58Value: String; -begin - result := BusinessProcessor.CurrentChange.OldValueByName[fld_EmpresasDatosBanco_RefreshSUFIJO_N58]; -end; - -procedure TEmpresasDatosBanco_RefreshBusinessProcessorRules.SetSUFIJO_N58Value(const aValue: String); -begin - BusinessProcessor.CurrentChange.NewValueByName[fld_EmpresasDatosBanco_RefreshSUFIJO_N58] := aValue; -end; - - -initialization - RegisterBusinessProcessorRules(RID_EmpresasDelta, TEmpresasBusinessProcessorRules); - RegisterBusinessProcessorRules(RID_EmpresasDatosBancoDelta, TEmpresasDatosBancoBusinessProcessorRules); - RegisterBusinessProcessorRules(RID_Empresas_RefreshDelta, TEmpresas_RefreshBusinessProcessorRules); - RegisterBusinessProcessorRules(RID_EmpresasDatosBanco_RefreshDelta, TEmpresasDatosBanco_RefreshBusinessProcessorRules); - -end. diff --git a/Source/Modulos/Empresas/Plugin/Empresas_plugin.bdsproj b/Source/Modulos/Empresas/Plugin/Empresas_plugin.bdsproj deleted file mode 100644 index f5a22bd8..00000000 --- a/Source/Modulos/Empresas/Plugin/Empresas_plugin.bdsproj +++ /dev/null @@ -1,496 +0,0 @@ - - - - - - - - - - - - Empresas_plugin.dpk - - - 7.0 - - - 8 - 0 - 1 - 1 - 0 - 0 - 1 - 1 - 1 - 0 - 0 - 1 - 0 - 1 - 1 - 1 - 0 - 0 - 0 - 0 - 0 - 1 - 0 - 1 - 1 - 1 - True - True - WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; - - False - - True - True - True - True - True - True - True - True - True - True - True - True - True - True - True - True - True - True - True - True - True - True - True - True - True - True - True - True - True - True - True - True - True - True - True - True - True - True - True - True - True - True - True - True - True - True - False - False - False - True - True - True - True - True - True - - - - 3 - 0 - False - 1 - False - False - False - 16384 - 1048576 - 4194304 - - - - - .\ - ..\..\..\..\Output\Debug\Cliente - ..\..\Lib - ..\..\..\Lib;..\..\Lib - - - - False - - - - - - False - - - True - False - - - - $00000000 - - - - True - False - 1 - 0 - 0 - 0 - False - False - False - False - False - 3082 - 1252 - - - - - 1.0.0.0 - - - - - - 1.0.0.0 - - - JCL Debug IDE extension - JCL Project Analyzer - JCL Open and Save IDE dialogs with favorite folders - - - - diff --git a/Source/Modulos/Empresas/Plugin/Empresas_plugin.drc b/Source/Modulos/Empresas/Plugin/Empresas_plugin.drc deleted file mode 100644 index 7642ac97..00000000 --- a/Source/Modulos/Empresas/Plugin/Empresas_plugin.drc +++ /dev/null @@ -1,14 +0,0 @@ -/* VER180 - Generated by the Borland Delphi Pascal Compiler - because -GD or --drc was supplied to the compiler. - - This file contains compiler-generated resources that - were bound to the executable. - If this file is empty, then no compiler-generated - resources were bound to the produced executable. -*/ - -STRINGTABLE -BEGIN -END - diff --git a/Source/Modulos/Empresas/Plugin/Empresas_plugin.rc b/Source/Modulos/Empresas/Plugin/Empresas_plugin.rc deleted file mode 100644 index e69de29b..00000000 diff --git a/Source/Modulos/Empresas/Plugin/Empresas_plugin.res b/Source/Modulos/Empresas/Plugin/Empresas_plugin.res deleted file mode 100644 index 36f26e23..00000000 Binary files a/Source/Modulos/Empresas/Plugin/Empresas_plugin.res and /dev/null differ diff --git a/Source/Modulos/Empresas/Plugin/uPluginEmpresas.dfm b/Source/Modulos/Empresas/Plugin/uPluginEmpresas.dfm deleted file mode 100644 index cbe91335..00000000 --- a/Source/Modulos/Empresas/Plugin/uPluginEmpresas.dfm +++ /dev/null @@ -1,816 +0,0 @@ -object PluginEmpresas: TPluginEmpresas - OldCreateOrder = True - DefaultAction = actNuevaEmpresa - ModuleMenu = MainMenu - ModuleName = 'Empresas' - SmallImages = SmallImages - LargeImages = LargeImages - Version = '1.0' - Height = 193 - Width = 422 - object LargeImages: TPngImageList - Height = 24 - Width = 24 - PngImages = < - item - PngImage.Data = { - 89504E470D0A1A0A0000000D4948445200000018000000180806000000E0773D - F80000000970485973000017120000171201679FD252000002744944415478DA - 63FCFFFF3F032D01E3F0B060F9D6D334B3056E41A4B729491AFFFCFDCFF0F7EF - 3F869FBFFE80E93FFFFE8169301B887FFDFECB109E5E876A41E249438206FF05 - AAFFF5F72FC3AF3F7FC0F4975FBF207C10065A02932BFAB59C61DED24D9816CC - 373F8F6291F45B6F8626CF660C8BFE010D0361CFD5F60C1F791E800DBF14F082 - 4169A520D8928ABFAB705B00022036B2E11718CF33189F346660B809E4A83330 - 9C353FCBA0F9438BE117D007415B3C189EB2DF66B811FC1AAC566C3137431DC3 - 5AFC3E8019CE7C8A89E1AFD93F300D32FC6CDC5906E379408BB419183EEB7C61 - E0BDC2C3F05AE50D43F84E5F86BD51C718841771817DD0CEB211BB05E841C3BC - 1C684124D082C54C10C39719339C8D02D2B38C193E447C6410D8C2CFF0C2E525 - 43D49E00860B7F2EC0E3A3977D0B911620FBE02A508203887F30807DF056ED1D - 83F02D218627324F18E20E86329CFA79166EC164AEEDF82D40B6E42F50C36596 - 4B9038B80894D087C481DC5B79869F3F7E60180E02382D404E4520C58A1FFC18 - 6A9C6BC196FC03A7F5BF700CE247EF0D841BFE33E50F03E34C46FC16C0003C6D - 03B1CCB31F0C5325B4B1E60BDE877B505C0E03582D40CFA57FA039F3EA444D06 - 09A7200645CB1E86FBC74BC06A5EDC0726E7FBF719E6EE7BCE30A7DA09C3E229 - 4F73312D98B2780756570A7E3BC7A0F4660ED8307450DD928DD3E273AC89080B - BA27CF27584C9C2B7B88553CA5751FA65AA0E12000B680919191A0E1C75A14FF - 93124C404BC3E6EEFBB19A140B4281D42A6CC13467EF77AC96022D6024CA0290 - E196969AABB0C91D3F7E1D6BDC008101D0828BC45A803778402EC5A597681FE0 - 0A1E200087355E0B6809686E0100FA3E2AAB1481BE0E0000000049454E44AE42 - 6082} - Name = 'PngImage1' - Background = clWindow - end - item - PngImage.Data = { - 89504E470D0A1A0A0000000D4948445200000018000000180806000000E0773D - F80000000970485973000017120000171201679FD2520000033B4944415478DA - DD957F68565518C73F77EF0FDFBDB9B94DC1214D5BB2FD61A3B0399236D66424 - 96A32874A1329D2D322C7F24686C0D539318FE964419E29F6AFF5810D982821C - BA0D57292846A4AD36B7D770BEEFF6FEBA7BEF3DF7DEB773A72EDFDE3BD71FEE - 1F0F3CDC7378CEF97E9EE73CE79CAB24934926B3298F07E0EB73BF4E0AE5B5AA - 79CA18400EC61C86162270F93043033D986692E9454B99337F459A80695AA37E - FB6B58D6BDF1DDFE2BAB3EE2D277479D01033FED440FFC4E389C60381263C474 - 31B7BC9EE205B5FF4BDCFED6AC6E7406F47535A1057AE5242FD1689C585C9516 - 27AA06A9ACFB9C278B5F1A136F3A2D1CB766D3E2115E5FFB713A203E78893F2F - 1C401D1A91C571CBA9493C2E055DE80C066F93F55429E5CB0F3D34F251B392BC - D9D09C0E08F67C457FF7492CCD853FD38FCFEB41C142681AAAAA72FD763F351F - 768E8A08C364D797CEC57DAF2A46EDBAEDCE80E16B67F0E1C7E3F64821032104 - 42D7D125E47AD8A2BAE1F4B8D15B7666327A43F657AEDF910E880C7413BAF205 - 198961321419BB5C681806868444E30922D32B295DBC7E42717B5CB761977391 - FBBB5AD16E76CAED37B17DA66167A13310715358BD8D1905CF4C286E5BFDE6DD - CE806B7D17E8ED68656622814716591882802AB893534259453D3373674F286E - FBDED9F2593AE07C7F072DDDFBE9BBF51BCBF4222AF29F261009D13674836EF3 - 0ED5854B787FE106F29E98312AD47CF01BC7226F5C5DC5BAAD2DA980E7E64F65 - 5FE711DA035DA8DE30B9A129AC29A9E5AFE19B7C1B6C079F0F821994E79552B7 - E06D0AB2E7A4446E9FAA0733FBA0716F2A80593DECF9F118514610D3E2E8468C - BC58169A5710F70B7C46164AC84B70B097A5C5AFB2B5E2133E3DDAE698C1BB6F - 95B3A9797F2A2090DDC1DE1F5AC9F6E5626427107E699ABC702E175E251377DC - 872BECE3EF500F453905B4BE71EAA1176DCBF603A90033FF0F769FDD879600F7 - 340F56A620E936E569525074372ED5432C1C269618A4A6A4868D658DEC39FEBD - 63060DCB5F4C07BCFC4211576F5DE5F8C513FC7CE3171991B0B5EDD7027999A5 - 2964E678D95CD6C4B3F9A5E3467EBFA5011695CD1D77D1442FE77FC51D0195CF - 173E327147C08E96238FFA87F62F6032DBA403FE011B7940FEE55D65A3000000 - 0049454E44AE426082} - Name = 'PngImage0' - Background = clWindow - end - item - PngImage.Data = { - 89504E470D0A1A0A0000000D4948445200000018000000180806000000E0773D - F80000000970485973000017120000171201679FD2520000034D4944415478DA - DD957D6855651CC73FE7BE7177CDB9B18A126639175BE8F08F59BE35D199B6DE - 56833057E20B668AA361A953D3A1A6CEA9C3A0242AFA27184134080A05250DCD - 958E06350269D272EE6ED96DBBDEBB7BCFD9BDE7B5E75CB7E1E59E39FF70FFF8 - C08FE739E739E7FBF93EBFDF799E235996C54436E9FE007C7BEE8F09A15495CF - 924601E26274429707E8BD7C9C707F17866EF160D14B3C5EBA2A43C0304C1156 - AAD74C31D6CDD458370D9E5BB98DDF7FF8DC1910FCB11EF56627916842441CC5 - 705358B68EE2A7ABEF4ADCEE5F78B3CE19D07DA68EC4CD6E0CD3472C26138F2B - C46499981266F19A13E4172F1915AF6BD61C53F35E85C2CBAB776602E4DE5FF9 - EBE72694C890288E473C6AE1754BA89A4AA83F44F6F452CA569EB8A3F3549816 - AFAEDD9509E8EF68A1A7A319537513C80A90E5F322218412496445A13314E495 - ED6D29115533D8DBE25CDC9AF218AFBDB5DB1910E96AC14F00AFC72BDCE9689A - 264225994CD2193159BEF11B74DD766CBB3586DDDF726EDA2B13EE3531AEDE58 - 9F0988062F11FEED2B5C43115C2EE15DBCA80F43627282C1BC45CCA9A81D57DC - 4EDBAA9ABDCE45EE69FD84E4F556917E037BEE16402518F550B06C270F4D2B19 - 57DCBEB7A676FF185FD1852B749CFA80470A13784591355DA357D608F72E64D1 - BA2AB2A74E1F57DC9E5BBFE54026A0E7FC4F5C6A384ADFB5106A6125B3AB6FD0 - D716267859D423D44641F97C166C7F075FCE6329A15D4DDF391679CBDA72DEDE - 7A281DB0A46032178F1CA1EFC2797C8ACE40CEC394AC7883484F3703674F8BC2 - 27E87799E4CD5BC8539B5633E9D15969CE353D3D6D353B1AD3014F46BB38D7D4 - 004A9C298A785085786E1E3E3541408EA1FB250644FCF7CF2045CF2F675E7D23 - FB3F3EE9B8824DD565D4BE7F341D907FA595331F1EC69F9B2D003A01D522A999 - 887D86E47321FB5D44B2DC84FFFE979C19C5547EF935FAC8C6BACDF9C8467B77 - CFB1744051F84FBE3F78402422C914B7878010F78883CE1200D52B21FBDC4407 - E3E21819A2E4C50A66D71DA2F1B3D38E2BD8F0FA3399808AF945F475B4F3CBA7 - 5F70B5BD1D53E455B24CEC73DC4C85458EFF01E6EED94CEECC67C7743ED23200 - 4BE73E31E6B992BA678CF4E6B8E28E80C5A533EE99B823605FC347F7FC8F360A - 98C836E180FF01702244FEF5B056BE0000000049454E44AE426082} - Name = 'PngImage2' - Background = clWindow - end - item - PngImage.Data = { - 89504E470D0A1A0A0000000D4948445200000018000000180806000000E0773D - F80000000970485973000017120000171201679FD2520000034D4944415478DA - DD957D6855651CC73FF7E56CF7DEE962EA340397D96C0B97291B8AD95227EA08 - 6706460E476AA60B06C3B7966FC3AD482457D01441A13F842141232128288656 - B4ECC58992F8C760E2CB9DB9DBBABBD773CFDD793F3DF7EA86977B74FDE1FEE9 - 811FCF73CEF39CEFE7FB3C3F7ECFF1388EC37836CFFF0370E6EC9571A1BC5E55 - E619058887D10953FB87FE9E4F8986AF61990E534A5633B3BC2E4BC0B26C114E - BA376C3136EDF4D8B42D56ADDFCDE5AE93EE80F06FCDE8FDBDC4E2AA880449CB - 4771E5664A17D4FE27F154FFEA862677C08DEE26D4F00D2C3B075956482492C8 - 8A829C8CB274E33166942E1B156FEA305C8F666775929AB7F6640394C805FA7E - 6C23191B16C9F18BA50E92CF836EE8440623E43F534EE5FA638F749E0EDB61ED - A6BDD980C1BE4E6E9DEFC0D67D8482218239121E8490AAA12493F446C2BCF6DE - EF6911DDB038D8E99EDC862A9975EFEC7707C4FEEC244008C92F097726866188 - D0D1348DDE98CDCAFA2F31CD94E3945BEBBEFB7BCEEDD4CE847B438C6BEB9BB3 - 01F1F0AF442F9DC63B1CC3EB15DEC587E67D88ACA8DC9DFC0A15D58D638AA78E - ADAEE1A07B926F751F47BBD92D8EDF2235770FA0138EFB99B5620F85452F8C29 - 9E7AB7B1B1D51D702EDC43E287369E5455249164C334E8570C060BCAA858D0C0 - 53D3A78E299E9ADBB2FDC36C40D7A53B1C387599EBB13BAC29FB8275D38AB97D - 37CA2772057FFD022BE7CCA069CB8B4CCE9B9216DADBF6B56B92B76FAA62DBAE - 8F3201739F2FA2F5F38B745D88A048010AF306D85053C2CDDB71BE3D9FC0D182 - F8127FB364DE04EAEBCA78FA89E919CE0D33F3D81ADE3F9C09D0FD797C70F467 - E2092FDAC449E83E93C2608C612B80AC4E2464EAF8E2830CE903AC7969162DDB - 96D17AF41BD71DBC5B5B49E3BE8F33017D4370A8FD27F27373D14205E8B91344 - 21A9A20EFCE488AB30479591E428036A94E78AF339DDF206E648613DE07CA4D0 - 761C389209187682347FF63D9AA8626FA00033370F4792402CF6EA1A929E4051 - 8650BC1A358B4BD9F7F6620E9FF8CE75075BDF7C391B50BDA8848B57FB69FFAA - 873FAE5C4B5F038EED495F171EC716209B40C124F66F9EC3FCA2E2873A1F6959 - 80E50B673FF45E49BFB3467A7B4C7157C0D2F2671F9BB82BA0E550FB63FFA38D - 02C6B38D3BE05FAF5B45FEC8107D9F0000000049454E44AE426082} - Name = 'PngImage3' - Background = clWindow - end - item - PngImage.Data = { - 89504E470D0A1A0A0000000D4948445200000018000000180806000000E0773D - F80000000970485973000017120000171201679FD25200000A4D694343505068 - 6F746F73686F70204943432070726F66696C65000078DA9D53775893F7163EDF - F7650F5642D8F0B1976C81002223AC08C81059A21092006184101240C585880A - 561415119C4855C482D50A489D88E2A028B867418A885A8B555C38EE1FDCA7B5 - 7D7AEFEDEDFBD7FBBCE79CE7FCCE79CF0F8011122691E6A26A003952853C3AD8 - 1F8F4F48C4C9BD80021548E0042010E6CBC26705C50000F00379787E74B03FFC - 01AF6F00020070D52E2412C7E1FF83BA50265700209100E02212E70B01905200 - C82E54C81400C81800B053B3640A009400006C797C422200AA0D00ECF4493E05 - 00D8A993DC1700D8A21CA908008D0100992847240240BB00605581522C02C0C2 - 00A0AC40222E04C0AE018059B632470280BD0500768E58900F4060008099422C - CC0020380200431E13CD03204C03A030D2BFE0A95F7085B8480100C0CB95CD97 - 4BD23314B895D01A77F2F0E0E221E2C26CB142611729106609E4229C979B2313 - 48E7034CCE0C00001AF9D1C1FE383F90E7E6E4E1E666E76CEFF4C5A2FE6BF06F - 223E21F1DFFEBC8C020400104ECFEFDA5FE5E5D60370C701B075BF6BA95B00DA - 560068DFF95D33DB09A05A0AD07AF98B7938FC401E9EA150C83C1D1C0A0B0BED - 2562A1BD30E38B3EFF33E16FE08B7EF6FC401EFEDB7AF000719A4099ADC0A383 - FD71616E76AE528EE7CB0442316EF7E723FEC7857FFD8E29D1E234B15C2C158A - F15889B850224DC779B952914421C995E212E97F32F11F96FD0993770D00AC86 - 4FC04EB607B5CB6CC07EEE01028B0E58D27600407EF32D8C1A0B910010673432 - 79F7000093BFF98F402B0100CD97A4E30000BCE8185CA894174CC608000044A0 - 812AB041070CC114ACC00E9CC11DBCC01702610644400C24C03C104206E4801C - 0AA11896411954C03AD804B5B0031AA0119AE110B4C131380DE7E0125C81EB70 - 170660189EC218BC86090441C8081361213A8811628ED822CE0817998E042261 - 48349280A420E988145122C5C872A402A9426A915D4823F22D7214398D5C40FA - 90DBC820328AFC8ABC47319481B25103D4027540B9A81F1A8AC6A073D174340F - 5D8096A26BD11AB41E3D80B6A2A7D14BE87574007D8A8E6380D1310E668CD961 - 5C8C87456089581A26C71663E55835568F35631D583776151BC09E61EF082402 - 8B8013EC085E8410C26C82909047584C5843A825EC23B412BA085709838431C2 - 272293A84FB4257A12F9C478623AB1905846AC26EE211E219E255E270E135F93 - 48240EC992E44E0A21259032490B496B48DB482DA453A43ED210699C4C26EB90 - 6DC9DEE408B280AC209791B7900F904F92FBC9C3E4B7143AC588E24C09A22452 - A494124A35653FE504A59F324299A0AA51CDA99ED408AA883A9F5A496DA07650 - 2F5387A91334759A25CD9B1643CBA42DA3D5D09A696769F7682FE974BA09DD83 - 1E4597D097D26BE807E9E7E983F4770C0D860D83C7486228196B197B19A718B7 - 192F994CA605D39799C85430D7321B9967980F986F55582AF62A7C1591CA1295 - 3A9556957E95E7AA545573553FD579AA0B54AB550FAB5E567DA64655B350E3A9 - 09D416ABD5A91D55BBA936AECE5277528F50CF515FA3BE5FFD82FA630DB28685 - 46A08648A35463B7C6198D2116C63265F15842D6725603EB2C6B984D625BB2F9 - EC4C7605FB1B762F7B4C534373AA66AC6691669DE671CD010EC6B1E0F039D99C - 4ACE21CE0DCE7B2D032D3F2DB1D66AAD66AD7EAD37DA7ADABEDA62ED72ED16ED - EBDAEF75709D409D2C9DF53A6D3AF77509BA36BA51BA85BADB75CFEA3ED363EB - 79E909F5CAF50EE9DDD147F56DF4A3F517EAEFD6EFD11F373034083690196C31 - 3863F0CC9063E86B9869B8D1F084E1A811CB68BA91C468A3D149A327B826EE87 - 67E33578173E66AC6F1C62AC34DE65DC6B3C61626932DBA4C4A4C5E4BE29CD94 - 6B9A66BAD1B4D374CCCCC82CDCACD8ACC9EC8E39D59C6B9E61BED9BCDBFC8D85 - A5459CC54A8B368BC796DA967CCB05964D96F7AC98563E567956F556D7AC49D6 - 5CEB2CEB6DD6576C501B579B0C9B3A9BCBB6A8AD9BADC4769B6DDF14E2148F29 - D229F5536EDA31ECFCEC0AEC9AEC06ED39F661F625F66DF6CF1DCC1C121DD63B - 743B7C727475CC766C70BCEBA4E134C3A9C4A9C3E957671B67A1739DF33517A6 - 4B90CB1297769717536DA78AA76E9F7ACB95E51AEEBAD2B5D3F5A39BBB9BDCAD - D96DD4DDCC3DC57DABFB4D2E9B1BC95DC33DEF41F4F0F758E271CCE39DA79BA7 - C2F390E72F5E765E595EFBBD1E4FB39C269ED6306DC8DBC45BE0BDCB7B603A3E - 3D65FACEE9033EC63E029F7A9F87BEA6BE22DF3DBE237ED67E997E07FC9EFB3B - FACBFD8FF8BFE179F216F14E056001C101E501BD811A81B3036B031F049904A5 - 0735058D05BB062F0C3E15420C090D591F72936FC017F21BF96333DC672C9AD1 - 15CA089D155A1BFA30CC264C1ED6118E86CF08DF107E6FA6F94CE9CCB60888E0 - 476C88B81F69199917F97D14292A32AA2EEA51B453747174F72CD6ACE459FB67 - BD8EF18FA98CB93BDB6AB6727667AC6A6C526C63EC9BB880B8AAB8817887F845 - F1971274132409ED89E4C4D8C43D89E37302E76C9A339CE49A54967463AEE5DC - A2B917E6E9CECB9E773C593559907C3885981297B23FE5832042502F184FE5A7 - 6E4D1D13F2849B854F45BEA28DA251B1B7B84A3C92E69D5695F638DD3B7D43FA - 68864F4675C633094F522B79911992B923F34D5644D6DEACCFD971D92D39949C - 949CA3520D6996B42BD730B728B74F662B2B930DE479E66DCA1B9387CAF7E423 - F973F3DB156C854CD1A3B452AE500E164C2FA82B785B185B78B848BD485AD433 - DF66FEEAF9230B82167CBD90B050B8B0B3D8B87859F1E022BF45BB16238B5317 - 772E315D52BA647869F0D27DCB68CBB296FD50E2585255F26A79DCF28E5283D2 - A5A5432B82573495A994C9CB6EAEF45AB9631561956455EF6A97D55B567F2A17 - 955FAC70ACA8AEF8B046B8E6E2574E5FD57CF5796DDADADE4AB7CAEDEB48EBA4 - EB6EACF759BFAF4ABD6A41D5D086F00DAD1BF18DE51B5F6D4ADE74A17A6AF58E - CDB4CDCACD03356135ED5BCCB6ACDBF2A136A3F67A9D7F5DCB56FDADABB7BED9 - 26DAD6BFDD777BF30E831D153BDEEF94ECBCB52B78576BBD457DF56ED2EE82DD - 8F1A621BBABFE67EDDB847774FC59E8F7BA57B07F645EFEB6A746F6CDCAFBFBF - B2096D52368D1E483A70E59B806FDA9BED9A77B5705A2A0EC241E5C127DFA67C - 7BE350E8A1CEC3DCC3CDDF997FB7F508EB48792BD23ABF75AC2DA36DA03DA1BD - EFE88CA39D1D5E1D47BEB7FF7EEF31E36375C7358F579EA09D283DF1F9E48293 - E3A764A79E9D4E3F3DD499DC79F74CFC996B5D515DBD6743CF9E3F1774EE4CB7 - 5FF7C9F3DEE78F5DF0BC70F422F762DB25B74BAD3DAE3D477E70FDE148AF5B6F - EB65F7CBED573CAE74F44DEB3BD1EFD37FFA6AC0D573D7F8D72E5D9F79BDEFC6 - EC1BB76E26DD1CB825BAF5F876F6ED17770AEE4CDC5D7A8F78AFFCBEDAFDEA07 - FA0FEA7FB4FEB165C06DE0F860C060CFC3590FEF0E09879EFE94FFD387E1D247 - CC47D52346238D8F9D1F1F1B0D1ABDF264CE93E1A7B2A713CFCA7E56FF79EB73 - ABE7DFFDE2FB4BCF58FCD8F00BF98BCFBFAE79A9F372EFABA9AF3AC723C71FBC - CE793DF1A6FCADCEDB7DEFB8EFBADFC7BD1F9928FC40FE50F3D1FA63C7A7D04F - F73EE77CFEFC2FF784F3FB25D29F330000028C4944415478DADD945F4853511C - C7BF77646942ABE9A061F6BF8690D443427B88A2321123166EDAA21E122308EA - B184407DC887E8A932F0611A3542325F0A0729B432A849CA68CA1CA2B86C0C4B - 43A428EFEEEE9FCE39E8DA9FBB7F0F7BE9073F7EE7DE7BCEF7737EBFF33B9753 - 1405F934EEFF00F43A47F34689026C7555392D1425059224232C882C8AB2CC22 - 1B131722121AAFB6C6030E5BDE6514964540126444C2448CB8F0538448C78204 - 99BC672E8A687FA045CFB357C980B1FEE371A033B53EB4365D4B06911D53AFAE - 71603A50C284BF85CEA174CB73709284B647BAD4006A741C2B3EBEFC05756573 - 88AC7C4541D17638433B602C324010049C35F7C33FA1C5C2623D9B5B5AEC407B - 973E7D066BE2E5C5C308FE3EC622151F5A3A8AD3BAB704B21B538B5530EA47E1 - 0D56A2DEFA12C3AE26E8373E25352419D80DEA80C4D21834BD98976DD8AA7130 - F11A9D1B834B2654970C6166D986FDDA018C7F3F8586F303981C59C7C4E941B5 - F594670788CF60161C0AA18067194C840EA2B2CC8B4FD3FB70E1D220263F70AB - 5D403278B2333D2016229105BE5F417606023F85F585467606DBE44D08F37C92 - 38B59480D82EA2ED6736FBD172B1994164D6EB52D4E973A3CD19155F8C5C815E - D3951E10BD48B4B77985C50D073CF86C79AF7A2FF4B596B89DAF992A20F1968A - AB37D377BF02FA9356EC3D72173323B7D89C85D931708100BA5DF3B0DF3E9104 - EE0C5D4F06743A5EABEE72F31F0FF6FCB033B1446BE9B89112EC29B8FC0F70EF - E1E38CBF09CFCD39D5F7CD1DAEE4B9449C1A03701C9751FCE39D5D4A2E6522D0 - 866E17FF22178095843EB532D9DFACA8420980CB0A40C54DA68A3EB56F6EB75F - F56C881D22006FB680B4E5A13B4DB536EB0C52958718AB755A403E2DEF80BF27 - 2521AB920B52530000000049454E44AE426082} - Name = 'PngImage4' - Background = clWindow - end - item - PngImage.Data = { - 89504E470D0A1A0A0000000D4948445200000018000000180806000000E0773D - F80000000970485973000017120000171201679FD252000003E54944415478DA - DD955D6C145514C7FF33B36D77D952281050902FCB8A74AB8D402DEDBA76B1A6 - 4896501142B028A105DAB47C941A890A292D1FF2D1E00B06358527134D782A1F - 29840A442925D604B5A8444C7830354AA8752DDBD9D9D99DB9D77B6767A69D66 - 1FED0BB3999C7B6736E777CEFF9C7347A094623C2FE1F100745CFF795C286B5E - 29106C00DB180FF99E27450C6BAE09617B40D7990505D1A8F19E101D3AE196DA - D6F82FBBDFA8D987BEABED4E0077A60C0DE2D78BEDF8FD9B0EC8B28CA827170B - CB5F4761C5DB70B927994E4C8754B7D7945BE68007C1D7EBB6A60124D418EE7C - 7E1CA4F7022231050F878731A8C431202B78B1AA162FBDD90C486E23729ED1D1 - F31969A5A90B0D61436DB3135019F2E36EF745F49FD90B414D201257F1AF40E1 - 9A968381070F31F0288EC6CFBAE07DD26F46CD65647270D9A899914EA1D1944C - 5575FB9D80D565F9B87ABA1583D7BE404214214DCAC60CDF2C3CE39B8EC8DFFF - E05CC74D846B0F604E4915AB8268383C71C99D36832DC108DEAA6F7102563140 - E7478DD086EEC0E79F87291327C0EB11118BCAC81029AE7FFD0366966E832FB8 - 1144108D68ADA272ED3592D2DECA64D38E5627201C5C84B30737635AE61F08BC - 5C00558E4361FA27985C2E11E8EAFA0EF35EDB83FCE00626896076162F2A9765 - B473628037EF3AE804AC0C3C8B530DAFB236BA8F70E5327833DC88C754482C7A - 5989E2CBB3DD285AB71F4BC25B98448211A56E69CFB33023B7C0358D879C8015 - A50BF169730DEEF55C4645E83914E64F413291448224D17BBB1FB77AEE21DCF2 - 318A8AD7B276E63520C64DCCF6E4B3414DB998C1D6A631808A121FFA6EF4E0A7 - 96D3C8F5C6E1298940CA5531709F42E99D0C817890D7DE84F94FF8ED880F9CEC - 4C5BE4DDD5E5A87DE7B013505EBC00DD4D9F60EAED3FA16851C4973F40CED224 - 94CE89F0FE32035474E16E2013853BAB91E3CE75E86D4F314D3DE33EEBDE3DE2 - 042C5F9A871B45DB317942162455042D559053C0D4BE928DD85F2C0B68901F25 - F05B830F2BD6541B83F6E1A9CB6933D8B92984FA3D479D80D0923C5C2BAA47B6 - 3B035EC1059A4D206501AE6117D4A40E59D3580308F8FEA9382ACFB419DD4347 - 1D13562DA8D9510DEF1D7302822F3C8D4B8BB761BAC70B8F4B42A628B17162DD - C2A659D535C4182496D0F0E3A22CAC3FD1C29C11B4B577A5CDA061631976BC3F - 0610289C8F6F3BBF427F6F1FD44814601DC465607D0A2231505626A45953915F - 16C0CCD9730D9DC9E813D43A81CD5AECFAE0B81350F2FC1CB3B7C9C884EAB0F7 - 464BEAA39C5A00E33D6CCB01FCD7B8B7CD0928F6CF368FE05427A48668044638 - CC76689DFB23DF0D0B0A3393DDFBC6005A8F9CFCDFBF6836603CAF7107FC0730 - 314BFE0CBC83B80000000049454E44AE426082} - Name = 'PngImage5' - Background = clWindow - end - item - PngImage.Data = { - 89504E470D0A1A0A0000000D4948445200000018000000180806000000E0773D - F8000000097048597300000B3A00000B3A01647F570D000002874944415478DA - B5944D68134114C7DF50C47E585BA2D0B095924095A51E4CA5CA2208D58BE9AD - 154F06CA565452A1A224E736F4165088F45222480881DE6C901EA4274F122FC9 - 0A3DE450684C2FA188C4A6F9EA6EB2CE5BBBC36E13936CA40F1E339999FC7FFB - E63F3344555538CB20670EE864D1FA7AC2471B81E6384DD7C9B044739766C2EB - 15DE760C0804246349F18101A53438A83CE6790EC6C62E82D339C4268B451962 - B1644B5053C0CACA0DF63B184C42A5D20399CC1736B6BC2C6A2004E8B9BD9DC6 - 29FF6908317E7520E022B4EFA1DD18428E8E6428148E211CDE8DD3B9B993B5DA - BCDF3F6102944A0AA4523F1A20C4F8D50B0BEF2012798510D5E79BD0C4313736 - B21ADC58E5E2E2559378B9FCB7CD660F80024853000642D6D65E3071CCADAD1C - 033C7BFE441DE55EC2FCBCA3411C7367A704767B85556102C8721DAAD59A49DC - 66EB856834A301425E507F2AD7A176E91E9CEF7B0A333323267145A9433E9F6F - 345914439B3E9F6796E32E306104A1389AB9B7F75B83B8875D50EBE761F36B11 - F2E7EEC395D1D726F31D8E69AD32FD3FABAB115681872E7C8490C3C3636DF1FE - 7E8196DACF8EA60E79303205A4AA40F0130797C7DDF03EFC81E8772597EB7D83 - 000C141704C16F344E83D0EEAC3EE676BB9B4286732E887EE321994A9B8E396E - 35027471F4A1E54DA65BA7FE0B623C5546006E992EDEF4A2E981860A3C2D5D0A - 811548DB9B6C14770922A43312843E8B5D43483BF14A4E82047D05A44A779590 - 4EC47543AD7A6202B413EFD6786245BC1B08B12A6E1542961EDAD4E93BD7A047 - FE0EF6BE7247E2ED2078D1F055665B74739257EFF2BFC03974D0B1782B087D91 - E31430673279EAF62DB52E172C89378344221F9978C331FD9F40086D4CE2187F - 00FADE10E28785B5A40000000049454E44AE426082} - Name = 'PngImage6' - Background = clWindow - end> - Left = 232 - Top = 16 - Bitmap = {} - end - object ModuleActionList: TActionList - Images = LargeImages - Left = 40 - Top = 72 - object actDatosDe: TAction - Category = 'Empresa' - Caption = 'Datos de...' - OnExecute = actDatosDeExecute - OnUpdate = actDatosDeUpdate - end - object actPreferencias: TAction - Category = 'Empresa' - Caption = 'Preferencias' - Visible = False - end - object actGestionEmpresas: TAction - Category = 'Empresa' - Caption = 'Gesti'#243'n de empresas' - end - object actSucursales: TAction - Category = 'Empresa' - Caption = 'Sucursales' - Visible = False - end - object actNuevaEmpresa: TAction - Category = 'Empresa' - Caption = 'Nueva empresa...' - OnExecute = actNuevaEmpresaExecute - end - end - object MainMenu: TMainMenu - Images = LargeImages - Left = 40 - Top = 16 - object Empresas1: TMenuItem - Caption = 'Empresa' - object Gestindeempresas1: TMenuItem - Tag = -1000 - Action = actGestionEmpresas - end - object N2: TMenuItem - Tag = -100 - Caption = '-' - end - object N1: TMenuItem - Tag = 7000 - Caption = '-' - end - object Sucursales1: TMenuItem - Tag = 8000 - Action = actSucursales - end - object N3: TMenuItem - Tag = 8999 - Caption = '-' - end - object Datosde1: TMenuItem - Tag = 9000 - Action = actDatosDe - end - object Preferencias1: TMenuItem - Tag = 9001 - Action = actPreferencias - end - end - end - object SmallImages: TPngImageList - PngImages = < - item - PngImage.Data = { - 89504E470D0A1A0A0000000D49484452000000100000001008060000001FF3FF - 610000000970485973000017120000171201679FD2520000011A4944415478DA - 63FCFFFF3F032580916203966D3945B60991DEA68C6003D4BD9919269F4CC6AA - E8F7DFBF0CDFFFFC61F8F6FB37C3C71F3FC0ECB9FE5B19523CE6309CDB310D61 - 0008C00C996B760EC3209B6D7270CD208062C02E9134B8429866E6534C1081AB - 0C0C7F13FF81999A6B4519BE035D02728DDCB204220CB80A118319A0B04200AC - 19843556A762370024B9DCFA328617903583BC62B83E13350C40FE074B421581 - 70EF05569C31907DD8036140F7E4F9180AA6DAEE60B04CAE6660905064F8717C - 2AC3F97DE719E6EE7BCE30A5C50BCE9EB3F73B23232E1B8EB528861E7CADB6EA - CEE58358E5939D24C32CABEFADC667C07F8A5D00A456811452D505208D5635F7 - 5783D480F211C92E98BBEF075C0FD8004A73230074DEE0E1BE54FBD500000000 - 49454E44AE426082} - Name = 'PngImage1' - Background = clWindow - end - item - PngImage.Data = { - 89504E470D0A1A0A0000000D49484452000000100000001008060000001FF3FF - 610000000970485973000017120000171201679FD252000001EC4944415478DA - A5934B6813511486BF541B88CD26620DA262A51BDB8520158308D5852055B01B - A3E8CEBD2E7CE063512852D09D2E82E04604AB1B5D4451B059D8A6010D84D842 - 5B6B6B1A8D414A4C9B18EB4C27F3F466D41943ED4233309C3BDC39DFFFDF9F7B - 3C9665D1C8E379323CD510C1061C3DD0697F48C531BEE7A7EDB57F6B072DADBB - 9C1F4DE154D74D34DD70DE43272FB9805AF3975484E56F1A856289C2D23CFB4F - 44D8D4BE17DD30B932A8D629B7358D70F7C1D39F8023FBB6917B35C0D78F590C - 43EC5A06954A8505A5C4B1CB2947F14F07D158D205F48436F03E761E640FEB7C - 3ED660204B3263B9597A2F24ED866B8F59DD414F28C8E7443FDE6A55A883AAA9 - 28F232F3FA7ABA8EDFAC53FEBD1E1A4DBB805A0685370F91E65E0880084BD358 - 9255CCB65EDAF784571E413378F97ABC1E90C8C6C88EDC6687E9150EAAA415D8 - BCFB14DD9D875734D76A2235E102B674A85C1CEEA3B498E374F020A666727F21 - 4E662ECFDBAB19BBB9EFD6B3BA0C423B37BA80A4F188E733A32881327EA91991 - 22924FA7B9E427373B45FADCB4A3ACFD72929E78E702EE1506C8E68B18AD0AEA - 5A595C2F44A02D3495BD7CF8344EF2CC24D7EFC4567770361EA65C2EFCF5AA06 - 0241A2E1215BD5302DBB9AA24ECE645C4077D77606A3F17F9E0307D07F23F2FF - C3D4E838FF008E7263BE13CA147C0000000049454E44AE426082} - Name = 'PngImage5' - Background = clWindow - end - item - PngImage.Data = { - 89504E470D0A1A0A0000000D49484452000000100000001008060000001FF3FF - 610000000970485973000017120000171201679FD252000001FA4944415478DA - A5934B6813511486BF342610A2C50A86A220150BA2145C58D120828ABA2AD2BA - F0B510C48D1B1154A828A55D5877825474AB45375D58A80B9385292DA8A8B151 - 6B6D8DB50F43C1B4C624364C1E73E7E19DA96408B50BCDC0E5CC65E6FFFE7FCE - DCE3324D936A2E577FE46355041BD076B0C9DE280B23E412E3F6FD9A4DDBF107 - 76965F3464524D33109A8E2A7459350E1FBFEC002CF1FCEB1EF28B82F98534C9 - 5C9203A7EFB2A1712F9A6E70A557AD706EA88970FFD1C012E0E8BECDCC3EEF22 - 33338DAECBA7A64E36FB8B5431C389EBB12557B93461D8CED6FE71F8A5036809 - AE271EBA0879177E9F0FB704284A9ED8B7498EB5476D71671F2B276809D63337 - D481B75892EEC86F5429140A7CD7D6D17CEA4E85B3D5070B181A8A3A00AB07C9 - B70F512643567E8410E4F22A46432B8D7B4E2E130BD9C4672F629580A9D02B86 - E76EB0CDF0CA0425A205D8B5F11C5B8F1C5A26B6D6F09B0F0E2058AB11B97495 - D44F95FAB34D881A831F0F26989A9EA0FDEB275B7CEDD6938A1EECDE117000FE - 701FF1A703D4153D28AB6B71E3C2A72C92F6A8C413292E8CBD2F3B8B3F67213A - 3AEE000AB7BB49CC8E11D03CAC92BFDB251D4A5E93B45B90984973FEDD08DDF7 - C22B27889D69239355FE7A54EBD6FA690D0FDAAEBA61DAD59075F4F31707B0BF - 790BBDFD83FF3C076540D7CD9EFF1FA66AC7F93783B161288AF0DFC000000000 - 49454E44AE426082} - Name = 'PngImage3' - Background = clWindow - end - item - PngImage.Data = { - 89504E470D0A1A0A0000000D49484452000000100000001008060000001FF3FF - 610000000970485973000017120000171201679FD252000001FE4944415478DA - A593DD4B145118C69F5574D5458A40DD44FCCA9B42D88B8494104A1242C4AF0B - 4DF1CA3FA08822C110F7C6BA124151BB8990F422304183564165053FD05D575C - 4334694D8D1A97C65DDB666677CE7C78668C1D16F3A276E0F09EC3CCFB7B9EF3 - CEFB9A5455453C8F697C76332E820EA8AF28D60F9C7F0DA1832D7D9F9E7B0396 - CC9BD10F15EA54921410498648641A2554363E31005AF2D14A1FF85F0447FE63 - 302106775B06905D741B92ACE0E9B018A39C9F308B37231367809AF2027C5DB0 - 23B0E7832CD3B7AA8C60F0043FC301343DF79CA9D225114557D6CEEFA7960C40 - 755906761C8F00DE044B6A2A122980E37878F677D1D0EED293BBDEE16207D565 - 567C737622391CA1EAA077142108027E485750D2DC1FA3ACD541033A9C2E03A0 - D58071BF05B7EBD0FC831082102F42C9AF4351E98373C984167166D1130B18DB - 6710986B43B198421D44B0282AB0DAECA8B25D3F97ACADF9D50D0390919783D6 - A14F601358D4DE8B4015C3F8E8B420B8EEC6C1E8333DB9A36732A606B76C9906 - E0C31782B1E94384AC57713999859A988413E112D2FCDFC1B3CBD87EFD38AA4C - FEF482CBBB6500BAE759F8DC8710B27211369B697B9990F29B83F998A1202F36 - 5F3D44F7E0D4C50E1A7A97E92FF4FDBD57D30AE17E795F579515558F0A8DDEED - CF06E04EC9350C8FCFFDF31C4401F6177DFF3F4CF18EF329BD276228E7D4407E - 0000000049454E44AE426082} - Name = 'PngImage2' - Background = clWindow - end - item - PngImage.Data = { - 89504E470D0A1A0A0000000D49484452000000100000001008060000001FF3FF - 610000000970485973000017120000171201679FD25200000A4D694343505068 - 6F746F73686F70204943432070726F66696C65000078DA9D53775893F7163EDF - F7650F5642D8F0B1976C81002223AC08C81059A21092006184101240C585880A - 561415119C4855C482D50A489D88E2A028B867418A885A8B555C38EE1FDCA7B5 - 7D7AEFEDEDFBD7FBBCE79CE7FCCE79CF0F8011122691E6A26A003952853C3AD8 - 1F8F4F48C4C9BD80021548E0042010E6CBC26705C50000F00379787E74B03FFC - 01AF6F00020070D52E2412C7E1FF83BA50265700209100E02212E70B01905200 - C82E54C81400C81800B053B3640A009400006C797C422200AA0D00ECF4493E05 - 00D8A993DC1700D8A21CA908008D0100992847240240BB00605581522C02C0C2 - 00A0AC40222E04C0AE018059B632470280BD0500768E58900F4060008099422C - CC0020380200431E13CD03204C03A030D2BFE0A95F7085B8480100C0CB95CD97 - 4BD23314B895D01A77F2F0E0E221E2C26CB142611729106609E4229C979B2313 - 48E7034CCE0C00001AF9D1C1FE383F90E7E6E4E1E666E76CEFF4C5A2FE6BF06F - 223E21F1DFFEBC8C020400104ECFEFDA5FE5E5D60370C701B075BF6BA95B00DA - 560068DFF95D33DB09A05A0AD07AF98B7938FC401E9EA150C83C1D1C0A0B0BED - 2562A1BD30E38B3EFF33E16FE08B7EF6FC401EFEDB7AF000719A4099ADC0A383 - FD71616E76AE528EE7CB0442316EF7E723FEC7857FFD8E29D1E234B15C2C158A - F15889B850224DC779B952914421C995E212E97F32F11F96FD0993770D00AC86 - 4FC04EB607B5CB6CC07EEE01028B0E58D27600407EF32D8C1A0B910010673432 - 79F7000093BFF98F402B0100CD97A4E30000BCE8185CA894174CC608000044A0 - 812AB041070CC114ACC00E9CC11DBCC01702610644400C24C03C104206E4801C - 0AA11896411954C03AD804B5B0031AA0119AE110B4C131380DE7E0125C81EB70 - 170660189EC218BC86090441C8081361213A8811628ED822CE0817998E042261 - 48349280A420E988145122C5C872A402A9426A915D4823F22D7214398D5C40FA - 90DBC820328AFC8ABC47319481B25103D4027540B9A81F1A8AC6A073D174340F - 5D8096A26BD11AB41E3D80B6A2A7D14BE87574007D8A8E6380D1310E668CD961 - 5C8C87456089581A26C71663E55835568F35631D583776151BC09E61EF082402 - 8B8013EC085E8410C26C82909047584C5843A825EC23B412BA085709838431C2 - 272293A84FB4257A12F9C478623AB1905846AC26EE211E219E255E270E135F93 - 48240EC992E44E0A21259032490B496B48DB482DA453A43ED210699C4C26EB90 - 6DC9DEE408B280AC209791B7900F904F92FBC9C3E4B7143AC588E24C09A22452 - A494124A35653FE504A59F324299A0AA51CDA99ED408AA883A9F5A496DA07650 - 2F5387A91334759A25CD9B1643CBA42DA3D5D09A696769F7682FE974BA09DD83 - 1E4597D097D26BE807E9E7E983F4770C0D860D83C7486228196B197B19A718B7 - 192F994CA605D39799C85430D7321B9967980F986F55582AF62A7C1591CA1295 - 3A9556957E95E7AA545573553FD579AA0B54AB550FAB5E567DA64655B350E3A9 - 09D416ABD5A91D55BBA936AECE5277528F50CF515FA3BE5FFD82FA630DB28685 - 46A08648A35463B7C6198D2116C63265F15842D6725603EB2C6B984D625BB2F9 - EC4C7605FB1B762F7B4C534373AA66AC6691669DE671CD010EC6B1E0F039D99C - 4ACE21CE0DCE7B2D032D3F2DB1D66AAD66AD7EAD37DA7ADABEDA62ED72ED16ED - EBDAEF75709D409D2C9DF53A6D3AF77509BA36BA51BA85BADB75CFEA3ED363EB - 79E909F5CAF50EE9DDD147F56DF4A3F517EAEFD6EFD11F373034083690196C31 - 3863F0CC9063E86B9869B8D1F084E1A811CB68BA91C468A3D149A327B826EE87 - 67E33578173E66AC6F1C62AC34DE65DC6B3C61626932DBA4C4A4C5E4BE29CD94 - 6B9A66BAD1B4D374CCCCC82CDCACD8ACC9EC8E39D59C6B9E61BED9BCDBFC8D85 - A5459CC54A8B368BC796DA967CCB05964D96F7AC98563E567956F556D7AC49D6 - 5CEB2CEB6DD6576C501B579B0C9B3A9BCBB6A8AD9BADC4769B6DDF14E2148F29 - D229F5536EDA31ECFCEC0AEC9AEC06ED39F661F625F66DF6CF1DCC1C121DD63B - 743B7C727475CC766C70BCEBA4E134C3A9C4A9C3E957671B67A1739DF33517A6 - 4B90CB1297769717536DA78AA76E9F7ACB95E51AEEBAD2B5D3F5A39BBB9BDCAD - D96DD4DDCC3DC57DABFB4D2E9B1BC95DC33DEF41F4F0F758E271CCE39DA79BA7 - C2F390E72F5E765E595EFBBD1E4FB39C269ED6306DC8DBC45BE0BDCB7B603A3E - 3D65FACEE9033EC63E029F7A9F87BEA6BE22DF3DBE237ED67E997E07FC9EFB3B - FACBFD8FF8BFE179F216F14E056001C101E501BD811A81B3036B031F049904A5 - 0735058D05BB062F0C3E15420C090D591F72936FC017F21BF96333DC672C9AD1 - 15CA089D155A1BFA30CC264C1ED6118E86CF08DF107E6FA6F94CE9CCB60888E0 - 476C88B81F69199917F97D14292A32AA2EEA51B453747174F72CD6ACE459FB67 - BD8EF18FA98CB93BDB6AB6727667AC6A6C526C63EC9BB880B8AAB8817887F845 - F1971274132409ED89E4C4D8C43D89E37302E76C9A339CE49A54967463AEE5DC - A2B917E6E9CECB9E773C593559907C3885981297B23FE5832042502F184FE5A7 - 6E4D1D13F2849B854F45BEA28DA251B1B7B84A3C92E69D5695F638DD3B7D43FA - 68864F4675C633094F522B79911992B923F34D5644D6DEACCFD971D92D39949C - 949CA3520D6996B42BD730B728B74F662B2B930DE479E66DCA1B9387CAF7E423 - F973F3DB156C854CD1A3B452AE500E164C2FA82B785B185B78B848BD485AD433 - DF66FEEAF9230B82167CBD90B050B8B0B3D8B87859F1E022BF45BB16238B5317 - 772E315D52BA647869F0D27DCB68CBB296FD50E2585255F26A79DCF28E5283D2 - A5A5432B82573495A994C9CB6EAEF45AB9631561956455EF6A97D55B567F2A17 - 955FAC70ACA8AEF8B046B8E6E2574E5FD57CF5796DDADADE4AB7CAEDEB48EBA4 - EB6EACF759BFAF4ABD6A41D5D086F00DAD1BF18DE51B5F6D4ADE74A17A6AF58E - CDB4CDCACD03356135ED5BCCB6ACDBF2A136A3F67A9D7F5DCB56FDADABB7BED9 - 26DAD6BFDD777BF30E831D153BDEEF94ECBCB52B78576BBD457DF56ED2EE82DD - 8F1A621BBABFE67EDDB847774FC59E8F7BA57B07F645EFEB6A746F6CDCAFBFBF - B2096D52368D1E483A70E59B806FDA9BED9A77B5705A2A0EC241E5C127DFA67C - 7BE350E8A1CEC3DCC3CDDF997FB7F508EB48792BD23ABF75AC2DA36DA03DA1BD - EFE88CA39D1D5E1D47BEB7FF7EEF31E36375C7358F579EA09D283DF1F9E48293 - E3A764A79E9D4E3F3DD499DC79F74CFC996B5D515DBD6743CF9E3F1774EE4CB7 - 5FF7C9F3DEE78F5DF0BC70F422F762DB25B74BAD3DAE3D477E70FDE148AF5B6F - EB65F7CBED573CAE74F44DEB3BD1EFD37FFA6AC0D573D7F8D72E5D9F79BDEFC6 - EC1BB76E26DD1CB825BAF5F876F6ED17770AEE4CDC5D7A8F78AFFCBEDAFDEA07 - FA0FEA7FB4FEB165C06DE0F860C060CFC3590FEF0E09879EFE94FFD387E1D247 - CC47D52346238D8F9D1F1F1B0D1ABDF264CE93E1A7B2A713CFCA7E56FF79EB73 - ABE7DFFDE2FB4BCF58FCD8F00BF98BCFBFAE79A9F372EFABA9AF3AC723C71FBC - CE793DF1A6FCADCEDB7DEFB8EFBADFC7BD1F9928FC40FE50F3D1FA63C7A7D04F - F73EE77CFEFC2FF784F3FB25D29F330000012D4944415478DA63FCFFFF3F0325 - 80916203966D3945B60991DEA68C6003B42CC41852B26F6355F4E7E77F86DFDF - FE31FCFEFC97E1FBFBDF60F68E73460C89D19D0CE7764C4318000230434E2E77 - C63048416B135C3308A018D0B7F8235C214CB30CFF5E880B3E3F6278F12F11CC - 16175BC3F0FFF76F06865F7F18E4EC4E103600A41904600688092E076B66001A - 22E77C16BB01BFBEFC6338BFD915C30BC89A19FFFC619075BF881A0620FF8334 - FFFAF297E1D75760A07DF9C3B032A610670C641FF64018D03D793E8682A9B63B - 184C53EA197E89A933309DE86638BFEF3CC3DC7DCF19A6B478C1D973F67E6764 - C465C3B116C5D003AFD556DDBD7C10AB7CB293649865F5BDD5F80CF84FB10B80 - D42A9042AABA00A4D1AAE6FE6A901A503E22D90573F7FD80EB011B40696E0400 - A0BEE1E16734A0290000000049454E44AE426082} - Name = 'PngImage4' - Background = clWindow - end - item - PngImage.Data = { - 89504E470D0A1A0A0000000D49484452000000100000001008060000001FF3FF - 610000000970485973000017120000171201679FD2520000023A4944415478DA - A593DB4B54511487BF39733C3A9A9930A99486541086169598264184522F3D84 - 34200541FF400FD24B17886E6405911111111614158414955866669A1682E565 - 2A310BAF9490CC4C303367CED9E7B4CF0C34F9E043B95FD67ED8EB5BBFF55B7B - B96CDB6621C7D5D436B820421CB07B7B31C1994986EF9E67EAFD6B66748BBCF2 - 6ACA7D07513D5E8430318585B06C4CD38982C58BD2A8F6D5250015856E461E5C - 461DEA623C1060C634980E8428F31DA072DF4999A050FF449B53B95069A3F1F6 - A304C03BD9CC647323564C472CC964457101A1C02CC35F83D41CB9436A762186 - 252B4B15A62930E5BDB5B32F09D0061A098D77B366DD4ABCD919A4692E8C6898 - 573DA394D49C25ABA0848B2D9EF915443A2EE00EFBD9B9AB8C48304A241CC632 - 755E747DA3747F03D9F94508D9BB21EC78741474BCFB90048C3E3CCAD4A7767C - 7B2A599695251FC5181E9BE0D99B097C87EFB1347FAD4C962D1889644B9AD9D9 - DBFF570BD3FD0CDCBCCF6AAF4E6EA5C1AF90CE582B0473F2D871A29E742D33E1 - 813301D38E4FA1BB6F2809C878DA85DA3E82AD06A0761AD70F0DED713ED1F454 - A60E6D60D3C62A4E5F6999E3C1E6F5394940FAB11BA4842268AA0B75AB8EE767 - 1A51BF228D140CE5EA6CB9762A2E3D3E05A705E945EFC0C72440ADBB8AC71064 - A6A8286E05372E624260183018FA4E45CB25CE5D7F3EBF82E8DB1E66FD5F2010 - 469146D96E09502096E2C62A5A4ED5DEDA7875E7273AD1D99F3EFFE724605BE9 - 2A6E35BDFCE73DF803387EA6E1FF9769A1EBFC1BC1A15528DD8924DF00000000 - 49454E44AE426082} - Name = 'PngImage5' - Background = clWindow - end - item - PngImage.Data = { - 89504E470D0A1A0A0000000D49484452000000100000001008060000001FF3FF - 61000000097048597300000B1300000B1301009A9C18000001604944415478DA - A5923F48C34014C6DF81B838A88B145DD22D20D8E8505737330A5D9CE4BA650C - 34739BEE0AE7E658B277A8939364B5A0C6A19231500417A14D177539EF1D5EB8 - E64F1D3C7821B9F7BE1FDFFB08E19CC37F0E512FBE1FE9244FD465C9BCE7FBD6 - 5529000FA58C33E60063B1005A04BFF1BEDBA550AF6F42BFFF5280C8A1C1C025 - CA45ABB507C3E19B04FCDE75D04DAFD780F9FC4BC275880418C649E6220F5060 - D735613A5DC81A8FD3AC4F946D6C4C261FD06CD62008926C40B4F8AC164930CE - A4E937DC3F8E6077E354BA4040470FCCB66D5186B4BAF56E814329C44904EC8E - CAFE6C6D013BDBEB08280D51C274C89949210C23081E4C787A8E899E49BB7DBD - 0CA882DC8ECEA558CF244942C0F00B00DC196D3B37D6D23A7AA895FF8112E3CE - 683BFA647F42489518773E68385E7E9D3C845489D5CE6599E810B24A5C166CFE - 3F918FA343935F1CC7A5E23C44D4AB487FBF900142AAC4ABCE0F9C32EE2C4B99 - 4F200000000049454E44AE426082} - Name = 'PngImage6' - Background = clWindow - end> - PngOptions = [pngBlendOnDisabled, pngGrayscaleOnDisabled] - Left = 308 - Top = 16 - Bitmap = {} - end - object ExtraImages: TPngImageList - Height = 28 - Width = 28 - PngImages = < - item - PngImage.Data = { - 89504E470D0A1A0A0000000D494844520000001C0000001C0806000000720DDF - 940000000970485973000017120000171201679FD252000002D84944415478DA - ED946D48535118C7FF57855EB4171542B01756516845C868B63E4A1F2A7B1996 - 990B845008EA637DD2A828F34BF521D220C98484C28232B24C302329456D380D - A99C75035FB6A5B3E9ACAEBA7BD773CF4D9BEE6E6E23F6217AE0F09C73EE73CE - EF79CEFF9CCB793C1E44D2B8FFC07F0378EF697BC4A833C0DCCC6D616DE0163D - 104589BCC43CEB4B5E7DE62986E6728E9F9D0D3CD69A163448A47593A28849B7 - 5BF1731B01A6BFD7E97AC0F70DA0B0A4DC175899DE310B9CECC8C485DD17FD82 - 25DA58621589D8FB3003A3715F18ACCB60C3DAEA7806ADD759D03768F50F944D - EEABC1CC5C07B4AD5AE0230D3602A6741352845406945B56ED2E0C2CB0E0C3C1 - 2116BFA22A160DBA5E0CDAED812BF48645B745013C1D638EA4F40966CA33417B - 9BC09B00D7E6712C791C07AC0386D60F23A77E1F5E189B91786731ABB029FD33 - ECC343EA40B5A38CAE268844C05C02564529B0BB5A988CE4CBB5701E19C5F2DA - 652CD6B6D30E63830166B77946CFD7DB7938461C2100E5AA2C043CFABBC26E9A - 5C484D00ABD0B16104897509ACC2FE95FDC87B958DB609D30CF08D8EC798CB19 - 18A87661648DDEC574291A76D2C45645C3D58E35EC9B7B6ACA07265B93F613BE - FF189BFF96CA0B34CEFD0C2A6F386EEB467C4F61C0E7B2CADC80AF4B454C14B8 - C1DDE4D8DCCB340B04613C70856A6FABB81DD0E71701491A128B677102FF8C79 - 276F65FE4C45076E1565CC4AE291EB0416C527FB02E7FB7BF4DED882A48C2C68 - F457C0B79C562E09AF3C23F04A02158D569416EFF149E2D0B9165FE0F32673C0 - E31AB0BC45AAAD846DAA66D66F024ACB4EA9262103CBAE5DFD03BC7CBD12C158 - 72AC0B4F4E8E048C29B8D4E83DAC791F73C0F0934B600306E4382E28986CCDC5 - 1A4FA83A5202872B1A8507610383D5D13B010272E102B3694323750D7E426AF2 - F37718E62610165086E9F529F743D08F2540ED3C013BC30106A5DF74356A1632 - 3018FDFE26705EFDBC8FCF2F30921671E02FBE648AC22CC7AE57000000004945 - 4E44AE426082} - Name = 'PngImage0' - Background = clWindow - end - item - PngImage.Data = { - 89504E470D0A1A0A0000000D494844520000001C0000001C0806000000720DDF - 940000000970485973000017120000171201679FD25200000A4D694343505068 - 6F746F73686F70204943432070726F66696C65000078DA9D53775893F7163EDF - F7650F5642D8F0B1976C81002223AC08C81059A21092006184101240C585880A - 561415119C4855C482D50A489D88E2A028B867418A885A8B555C38EE1FDCA7B5 - 7D7AEFEDEDFBD7FBBCE79CE7FCCE79CF0F8011122691E6A26A003952853C3AD8 - 1F8F4F48C4C9BD80021548E0042010E6CBC26705C50000F00379787E74B03FFC - 01AF6F00020070D52E2412C7E1FF83BA50265700209100E02212E70B01905200 - C82E54C81400C81800B053B3640A009400006C797C422200AA0D00ECF4493E05 - 00D8A993DC1700D8A21CA908008D0100992847240240BB00605581522C02C0C2 - 00A0AC40222E04C0AE018059B632470280BD0500768E58900F4060008099422C - CC0020380200431E13CD03204C03A030D2BFE0A95F7085B8480100C0CB95CD97 - 4BD23314B895D01A77F2F0E0E221E2C26CB142611729106609E4229C979B2313 - 48E7034CCE0C00001AF9D1C1FE383F90E7E6E4E1E666E76CEFF4C5A2FE6BF06F - 223E21F1DFFEBC8C020400104ECFEFDA5FE5E5D60370C701B075BF6BA95B00DA - 560068DFF95D33DB09A05A0AD07AF98B7938FC401E9EA150C83C1D1C0A0B0BED - 2562A1BD30E38B3EFF33E16FE08B7EF6FC401EFEDB7AF000719A4099ADC0A383 - FD71616E76AE528EE7CB0442316EF7E723FEC7857FFD8E29D1E234B15C2C158A - F15889B850224DC779B952914421C995E212E97F32F11F96FD0993770D00AC86 - 4FC04EB607B5CB6CC07EEE01028B0E58D27600407EF32D8C1A0B910010673432 - 79F7000093BFF98F402B0100CD97A4E30000BCE8185CA894174CC608000044A0 - 812AB041070CC114ACC00E9CC11DBCC01702610644400C24C03C104206E4801C - 0AA11896411954C03AD804B5B0031AA0119AE110B4C131380DE7E0125C81EB70 - 170660189EC218BC86090441C8081361213A8811628ED822CE0817998E042261 - 48349280A420E988145122C5C872A402A9426A915D4823F22D7214398D5C40FA - 90DBC820328AFC8ABC47319481B25103D4027540B9A81F1A8AC6A073D174340F - 5D8096A26BD11AB41E3D80B6A2A7D14BE87574007D8A8E6380D1310E668CD961 - 5C8C87456089581A26C71663E55835568F35631D583776151BC09E61EF082402 - 8B8013EC085E8410C26C82909047584C5843A825EC23B412BA085709838431C2 - 272293A84FB4257A12F9C478623AB1905846AC26EE211E219E255E270E135F93 - 48240EC992E44E0A21259032490B496B48DB482DA453A43ED210699C4C26EB90 - 6DC9DEE408B280AC209791B7900F904F92FBC9C3E4B7143AC588E24C09A22452 - A494124A35653FE504A59F324299A0AA51CDA99ED408AA883A9F5A496DA07650 - 2F5387A91334759A25CD9B1643CBA42DA3D5D09A696769F7682FE974BA09DD83 - 1E4597D097D26BE807E9E7E983F4770C0D860D83C7486228196B197B19A718B7 - 192F994CA605D39799C85430D7321B9967980F986F55582AF62A7C1591CA1295 - 3A9556957E95E7AA545573553FD579AA0B54AB550FAB5E567DA64655B350E3A9 - 09D416ABD5A91D55BBA936AECE5277528F50CF515FA3BE5FFD82FA630DB28685 - 46A08648A35463B7C6198D2116C63265F15842D6725603EB2C6B984D625BB2F9 - EC4C7605FB1B762F7B4C534373AA66AC6691669DE671CD010EC6B1E0F039D99C - 4ACE21CE0DCE7B2D032D3F2DB1D66AAD66AD7EAD37DA7ADABEDA62ED72ED16ED - EBDAEF75709D409D2C9DF53A6D3AF77509BA36BA51BA85BADB75CFEA3ED363EB - 79E909F5CAF50EE9DDD147F56DF4A3F517EAEFD6EFD11F373034083690196C31 - 3863F0CC9063E86B9869B8D1F084E1A811CB68BA91C468A3D149A327B826EE87 - 67E33578173E66AC6F1C62AC34DE65DC6B3C61626932DBA4C4A4C5E4BE29CD94 - 6B9A66BAD1B4D374CCCCC82CDCACD8ACC9EC8E39D59C6B9E61BED9BCDBFC8D85 - A5459CC54A8B368BC796DA967CCB05964D96F7AC98563E567956F556D7AC49D6 - 5CEB2CEB6DD6576C501B579B0C9B3A9BCBB6A8AD9BADC4769B6DDF14E2148F29 - D229F5536EDA31ECFCEC0AEC9AEC06ED39F661F625F66DF6CF1DCC1C121DD63B - 743B7C727475CC766C70BCEBA4E134C3A9C4A9C3E957671B67A1739DF33517A6 - 4B90CB1297769717536DA78AA76E9F7ACB95E51AEEBAD2B5D3F5A39BBB9BDCAD - D96DD4DDCC3DC57DABFB4D2E9B1BC95DC33DEF41F4F0F758E271CCE39DA79BA7 - C2F390E72F5E765E595EFBBD1E4FB39C269ED6306DC8DBC45BE0BDCB7B603A3E - 3D65FACEE9033EC63E029F7A9F87BEA6BE22DF3DBE237ED67E997E07FC9EFB3B - FACBFD8FF8BFE179F216F14E056001C101E501BD811A81B3036B031F049904A5 - 0735058D05BB062F0C3E15420C090D591F72936FC017F21BF96333DC672C9AD1 - 15CA089D155A1BFA30CC264C1ED6118E86CF08DF107E6FA6F94CE9CCB60888E0 - 476C88B81F69199917F97D14292A32AA2EEA51B453747174F72CD6ACE459FB67 - BD8EF18FA98CB93BDB6AB6727667AC6A6C526C63EC9BB880B8AAB8817887F845 - F1971274132409ED89E4C4D8C43D89E37302E76C9A339CE49A54967463AEE5DC - A2B917E6E9CECB9E773C593559907C3885981297B23FE5832042502F184FE5A7 - 6E4D1D13F2849B854F45BEA28DA251B1B7B84A3C92E69D5695F638DD3B7D43FA - 68864F4675C633094F522B79911992B923F34D5644D6DEACCFD971D92D39949C - 949CA3520D6996B42BD730B728B74F662B2B930DE479E66DCA1B9387CAF7E423 - F973F3DB156C854CD1A3B452AE500E164C2FA82B785B185B78B848BD485AD433 - DF66FEEAF9230B82167CBD90B050B8B0B3D8B87859F1E022BF45BB16238B5317 - 772E315D52BA647869F0D27DCB68CBB296FD50E2585255F26A79DCF28E5283D2 - A5A5432B82573495A994C9CB6EAEF45AB9631561956455EF6A97D55B567F2A17 - 955FAC70ACA8AEF8B046B8E6E2574E5FD57CF5796DDADADE4AB7CAEDEB48EBA4 - EB6EACF759BFAF4ABD6A41D5D086F00DAD1BF18DE51B5F6D4ADE74A17A6AF58E - CDB4CDCACD03356135ED5BCCB6ACDBF2A136A3F67A9D7F5DCB56FDADABB7BED9 - 26DAD6BFDD777BF30E831D153BDEEF94ECBCB52B78576BBD457DF56ED2EE82DD - 8F1A621BBABFE67EDDB847774FC59E8F7BA57B07F645EFEB6A746F6CDCAFBFBF - B2096D52368D1E483A70E59B806FDA9BED9A77B5705A2A0EC241E5C127DFA67C - 7BE350E8A1CEC3DCC3CDDF997FB7F508EB48792BD23ABF75AC2DA36DA03DA1BD - EFE88CA39D1D5E1D47BEB7FF7EEF31E36375C7358F579EA09D283DF1F9E48293 - E3A764A79E9D4E3F3DD499DC79F74CFC996B5D515DBD6743CF9E3F1774EE4CB7 - 5FF7C9F3DEE78F5DF0BC70F422F762DB25B74BAD3DAE3D477E70FDE148AF5B6F - EB65F7CBED573CAE74F44DEB3BD1EFD37FFA6AC0D573D7F8D72E5D9F79BDEFC6 - EC1BB76E26DD1CB825BAF5F876F6ED17770AEE4CDC5D7A8F78AFFCBEDAFDEA07 - FA0FEA7FB4FEB165C06DE0F860C060CFC3590FEF0E09879EFE94FFD387E1D247 - CC47D52346238D8F9D1F1F1B0D1ABDF264CE93E1A7B2A713CFCA7E56FF79EB73 - ABE7DFFDE2FB4BCF58FCD8F00BF98BCFBFAE79A9F372EFABA9AF3AC723C71FBC - CE793DF1A6FCADCEDB7DEFB8EFBADFC7BD1F9928FC40FE50F3D1FA63C7A7D04F - F73EE77CFEFC2FF784F3FB25D29F33000002F94944415478DAED946B48936114 - C7FFAFDA55CD5CD32E46609161D087082129E8B2794B50495B5EBE140C83A2CF - 5DD13E9804111195502441068D04D32C2DCD6181592D2F594CF2B291A6DB9C9A - 3AB3E9DE4BCFFB583ADBC539621FA2030FE7BCCF7B38BF739EFFF3BE8C2008F0 - A531FF81FF06F0C1538DCFA833C0ACE418AF0AB09C008EE389E7A9A7316F1753 - 4F72C8DEE16379738131992F3C06092C814D0AB05949C1499EC6A2E726391AF3 - 53FCF462593434C9A0EFEDC3D9C2DB8E408D4A3E079CBCAF1B79B9B92EC13CE9 - 9CA71371484C54A1B367250519BF1E8454A202C3F2A86F96A1B7DFE01A289A18 - 3B837D1CEE41526427584B3F0282D7A15ABF195181AB29505C29296568D70661 - 602083E64B034BA06E96A3DF64723FA13D6C7D481DB871330C5C268D4558EDE0 - 1EC449EB0874033A0CB1D8145401FFE070B4E9B7233DBD122FEB8F206CF93D90 - 2E50D3120FD3A0D939D0D951AEF55711D10418F82CACF12BA1B07869036A0677 - 412E7D8EAED14C44853CA1B96D2639148A2A68DFF95198B8AA5A1330343CE439 - 904E68311260CEAF097BC060290458E9849FBEEC40B4A49A4EA8698F46764E2D - B48DC20CB0A23901639611F740671746D4483BDA4735B459745814BC916A1881 - 20FA8EB5D91C60A29569E2F07D626CFE5BCA5A05A426E928542C68316A21E938 - E3F6735992B6172B264261669508636ED1BDD2B73258ADE3EE2714619C75F6FB - 12FDFD832711A3CCC754F8162C1EF83C9DA77B4CFD88DE40FDF9E216DC39B77F - 4E138F2CC7B12C34C21138DFDFA3AB681B56C91488DA79091D6F4ED35CB3BE89 - 7A3F5D37F5C56A036E141C70682223BFD111F8EC55ABDBE3EAEB7C8FADC6425A - D49919BE5971B5E894D32644E0CD6B57668197AFDF852716116841E58961B739 - CA8B6AFBC7F2F680D4B41F8C843E5020C3301EC1447B5D10292C5447D280A258 - 6D2DF51AE8A98EF60D1020E32DF01029984DC2341729E54795BBD3FE6CC02BA0 - 088B8D8D7EB800FD6803645D20C00FDE003DD2EFF734CE6CC1404FF4FB9BC079 - F5B33F3E97405F9ACF813F01DF078FC2BAE18F2B0000000049454E44AE426082} - Name = 'PngImage1' - Background = clWindow - end - item - PngImage.Data = { - 89504E470D0A1A0A0000000D494844520000001C0000001C0806000000720DDF - 94000000097048597300004E2000004E2001167D99DE000002C04944415478DA - E5D54D6813411400E0B788D816B1A5150CA99404AA2CF5E02AFE2C82503DA5B7 - 14BD054A2A6A130F5549CE6DDA9BD0424A2F69041B42A517B1417A909E3C497A - 3129F49043A131BD8422129BE6A7CDCF3A6F935932C96E9AB0928B0F1E43B233 - FBCD4CDE4C384992A093C1FD1F20C7712D0FF0F9C22ED2882487490AD5AFA324 - F748861D0E71516BAC6CB50356B1059E37C2D0D025309B7B99E72B2BDB4D6155 - D0E389D6EE7188E4278F47F85805A564B20BE2F16F4A879919BB0C67320525B7 - B662F8C85D8F6A82B3B33795CF73733B0C5A1BA4AF8D346B6EF7080366B34588 - 447E36A00A485E2A555E2070F425881E1F17209D3E05BF7F2F449E8DAB6D334E - D0E9BCC660B95CA54D240E81809C2A88C0E4E41204026F10955CAE1119C35C5F - 4FC893A9C75EBC7C260D1AA76162C2D48061EEEE66C160C82BAB6C0031105D5E - 7EA560989B9BC906D0EB00E957F10694061EC185EEE730367685C18AC532A452 - 2966825353F739062C14CA70725262B0FEFE2E0806E30C8898C803947A78D8F8 - 9E81D4F9C77075F02D534C26D3A8BC722CA8FDFD3F303F1F80D5D5D71590AC6A - C3E5B2598DC68B0A8430627400452926887652186BC09D14E1DD17235C1EB6C0 - 7BFF078E1E1F52CD0B086220268AA29BAC7091AED04666F714D1A3A353B9D3C1 - 419AEC7F8F72DE286AE913642C168F423E1985303901C16D1E7E4462CC96631D - 204831FC1D996381D58928E96BA5832C168B2A6AE5ED4D310AE216534CF31CD6 - 86DDEE95B4D0BEA4A08969454B575B3354EDA8E8026981F8A25EF8176853B0B6 - 1AB140BC5FEDBA514DB01EA30512CDEB5BA92AA885D102D1F39B368067617A0B - 89015BC5F4A00AB8E4E4DAC2CE42F176C17F1D4D70FAC98034FAE03A9C2BEC80 - A13BD712D60C2577738880E39A206EE9ED5BBCF490FF0DE6DEC3B66F905A3410 - F8AC8AA916CD9D7B77A57221DD16568B92461363C04E46C7C1BF0E73BFE74CCD - 6AD20000000049454E44AE426082} - Name = 'PngImage2' - Background = clWindow - end> - Left = 232 - Top = 80 - Bitmap = {} - end -end diff --git a/Source/Modulos/Empresas/Plugin/uPluginEmpresas.pas b/Source/Modulos/Empresas/Plugin/uPluginEmpresas.pas deleted file mode 100644 index b4f7d79f..00000000 --- a/Source/Modulos/Empresas/Plugin/uPluginEmpresas.pas +++ /dev/null @@ -1,142 +0,0 @@ -unit uPluginEmpresas; - -interface - -uses - uModuleController, uInterfaces, uHostManager, Menus, Classes, ActnList, - ImgList, Controls, PngImageList, uBizEmpresas, - uEmpresasController; - -type - IEmpresasPlugin = interface(IInterface) - ['{4E732376-FFD0-4E72-846A-224A6E27FA85}'] - function Empresas : TStringList; - function Controller : IEmpresasController; - end; - - TPluginEmpresas = class(TModuleController, IEmpresasPlugin) - ExtraImages: TPngImageList; - LargeImages: TPngImageList; - MainMenu: TMainMenu; - ModuleActionList: TActionList; - SmallImages: TPngImageList; - Empresas1: TMenuItem; - Preferencias1: TMenuItem; - N1: TMenuItem; - Gestindeempresas1: TMenuItem; - Datosde1: TMenuItem; - actDatosDe: TAction; - actPreferencias: TAction; - actGestionEmpresas: TAction; - N2: TMenuItem; - actSucursales: TAction; - Sucursales1: TMenuItem; - N3: TMenuItem; - actNuevaEmpresa: TAction; - procedure actDatosDeUpdate(Sender: TObject); - procedure actDatosDeExecute(Sender: TObject); - procedure actNuevaEmpresaExecute(Sender: TObject); - protected - function Empresas : TStringList; - function Controller : IEmpresasController; - public - constructor Create(AOwner: TComponent); override; - destructor Destroy; override; - end; - -implementation - -{$R *.dfm} - -uses - Forms, Dialogs, uGUIBase, uCustomEditor, SysUtils, - uDataModuleUsuarios, uEmpresasViewRegister; - -function GetModule : TModuleController; -begin - Result := TPluginEmpresas.Create(NIL); -end; - -exports - GetModule name GET_MODULE_FUNC; - -{ -******************************* TModuleEmpresas ******************************* -} -procedure TPluginEmpresas.actDatosDeExecute(Sender: TObject); -var - AController : IEmpresasController; -begin - AController := TEmpresasController.Create; - AController.Ver(dmUsuarios.EmpresaActual); -end; - -procedure TPluginEmpresas.actDatosDeUpdate(Sender: TObject); -begin - with (Sender as TAction) do - begin - if Assigned(dmUsuarios.EmpresaActual) then - begin - Enabled := True; - Caption := 'Datos de ' + dmUsuarios.EmpresaActual.NOMBRE - end - else begin - Enabled := False; - Caption := 'Datos de la empresa'; - end; - end; -end; - -procedure TPluginEmpresas.actNuevaEmpresaExecute(Sender: TObject); -var - AEmpresasController : IEmpresasController; - AEmpresa : IBizEmpresa; -begin - AEmpresasController := TEmpresasController.Create; - AEmpresa := AEmpresasController.Nuevo; - try - AEmpresasController.Ver(AEmpresa); - finally - AEmpresa := NIL; - end; -end; - -function TPluginEmpresas.Controller: IEmpresasController; -begin - Result := TEmpresasController.Create; -end; - -function TPluginEmpresas.Empresas: TStringList; -var - AEmpresasController : IEmpresasController; - AEmpresas : IBizEmpresa; -begin - AEmpresasController := TEmpresasController.Create; - AEmpresas := AEmpresasController.BuscarTodos; - try - Result := AEmpresasController.ToStringList(AEmpresas); - finally - AEmpresasController := NIL; - end; -end; - -constructor TPluginEmpresas.Create(AOwner: TComponent); -begin - inherited; - uEmpresasViewRegister.RegisterViews; -end; - -destructor TPluginEmpresas.Destroy; -begin - uEmpresasViewRegister.UnregisterViews; - inherited; -end; - - -initialization - uHostManager.RegisterModuleClass(TPluginEmpresas); - -finalization - uHostManager.UnRegisterModuleClass(TPluginEmpresas); - -end. diff --git a/Source/Modulos/Empresas/Servidor/srvEmpresas_Impl.dfm b/Source/Modulos/Empresas/Servidor/srvEmpresas_Impl.dfm deleted file mode 100644 index 7b8f6f27..00000000 --- a/Source/Modulos/Empresas/Servidor/srvEmpresas_Impl.dfm +++ /dev/null @@ -1,2042 +0,0 @@ -object srvEmpresas: TsrvEmpresas - OldCreateOrder = True - OnCreate = DARemoteServiceCreate - RequiresSession = True - AcquireConnection = True - ConnectionName = 'IBX' - ServiceSchema = schEmpresas - ServiceAdapter = BINAdapter - OnBeforeAcquireConnection = DARemoteServiceBeforeAcquireConnection - OnBeforeGetDatasetData = DARemoteServiceBeforeGetDatasetData - Height = 157 - Width = 351 - object schEmpresas: TDASchema - ConnectionManager = dmServer.ConnectionManager - DataDictionary = DataDictionary - Diagrams = Diagrams - Datasets = < - item - Params = <> - Statements = < - item - Connection = 'IBX' - TargetTable = 'EMPRESAS' - SQL = - 'SELECT'#10' ID, NIF_CIF, NOMBRE, RAZON_SOCIAL, CALLE, POBLACION, ' + - #10' PROVINCIA, CODIGO_POSTAL, TELEFONO_1, TELEFONO_2, MOVIL_1, ' + - #10' MOVIL_2, FAX, EMAIL_1, EMAIL_2, PAGINA_WEB, NOTAS, '#10' FEC' + - 'HA_ALTA, FECHA_MODIFICACION, USUARIO, LOGOTIPO,'#10' REGISTRO_MER' + - 'CANTIL, IVA'#10' FROM'#10' EMPRESAS' - StatementType = stSQL - ColumnMappings = < - item - DatasetField = 'ID' - TableField = 'ID' - end - item - DatasetField = 'NIF_CIF' - TableField = 'NIF_CIF' - end - item - DatasetField = 'NOMBRE' - TableField = 'NOMBRE' - end - item - DatasetField = 'RAZON_SOCIAL' - TableField = 'RAZON_SOCIAL' - end - item - DatasetField = 'CALLE' - TableField = 'CALLE' - end - item - DatasetField = 'POBLACION' - TableField = 'POBLACION' - end - item - DatasetField = 'PROVINCIA' - TableField = 'PROVINCIA' - end - item - DatasetField = 'CODIGO_POSTAL' - TableField = 'CODIGO_POSTAL' - end - item - DatasetField = 'TELEFONO_1' - TableField = 'TELEFONO_1' - end - item - DatasetField = 'TELEFONO_2' - TableField = 'TELEFONO_2' - end - item - DatasetField = 'MOVIL_1' - TableField = 'MOVIL_1' - end - item - DatasetField = 'MOVIL_2' - TableField = 'MOVIL_2' - end - item - DatasetField = 'FAX' - TableField = 'FAX' - end - item - DatasetField = 'EMAIL_1' - TableField = 'EMAIL_1' - end - item - DatasetField = 'EMAIL_2' - TableField = 'EMAIL_2' - end - item - DatasetField = 'PAGINA_WEB' - TableField = 'PAGINA_WEB' - end - item - DatasetField = 'NOTAS' - TableField = 'NOTAS' - end - item - DatasetField = 'FECHA_ALTA' - TableField = 'FECHA_ALTA' - end - item - DatasetField = 'FECHA_MODIFICACION' - TableField = 'FECHA_MODIFICACION' - end - item - DatasetField = 'USUARIO' - TableField = 'USUARIO' - end - item - DatasetField = 'LOGOTIPO' - TableField = 'LOGOTIPO' - end - item - DatasetField = 'REGISTRO_MERCANTIL' - TableField = 'REGISTRO_MERCANTIL' - end - item - DatasetField = 'IVA' - TableField = 'IVA' - end> - end> - Name = 'Empresas' - Fields = < - item - Name = 'ID' - DataType = datInteger - BlobType = dabtUnknown - DictionaryEntry = 'Empresas_ID' - InPrimaryKey = True - Calculated = False - Lookup = False - LookupCache = False - end - item - Name = 'NIF_CIF' - DataType = datString - Size = 15 - BlobType = dabtUnknown - DictionaryEntry = 'Empresas_NIF_CIF' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False - end - item - Name = 'NOMBRE' - DataType = datString - Size = 255 - BlobType = dabtUnknown - DictionaryEntry = 'Empresas_NOMBRE' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False - end - item - Name = 'RAZON_SOCIAL' - DataType = datString - Size = 255 - BlobType = dabtUnknown - DictionaryEntry = 'Empresas_RAZON_SOCIAL' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False - end - item - Name = 'CALLE' - DataType = datString - Size = 255 - BlobType = dabtUnknown - DictionaryEntry = 'Empresas_CALLE' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False - end - item - Name = 'POBLACION' - DataType = datString - Size = 255 - BlobType = dabtUnknown - DictionaryEntry = 'Empresas_POBLACION' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False - end - item - Name = 'PROVINCIA' - DataType = datString - Size = 255 - BlobType = dabtUnknown - DictionaryEntry = 'Empresas_PROVINCIA' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False - end - item - Name = 'CODIGO_POSTAL' - DataType = datString - Size = 10 - BlobType = dabtUnknown - DictionaryEntry = 'Empresas_CODIGO_POSTAL' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False - end - item - Name = 'TELEFONO_1' - DataType = datString - Size = 25 - BlobType = dabtUnknown - DictionaryEntry = 'Empresas_TELEFONO_1' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False - end - item - Name = 'TELEFONO_2' - DataType = datString - Size = 25 - BlobType = dabtUnknown - DictionaryEntry = 'Empresas_TELEFONO_2' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False - end - item - Name = 'MOVIL_1' - DataType = datString - Size = 25 - BlobType = dabtUnknown - DictionaryEntry = 'Empresas_MOVIL_1' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False - end - item - Name = 'MOVIL_2' - DataType = datString - Size = 25 - BlobType = dabtUnknown - DictionaryEntry = 'Empresas_MOVIL_2' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False - end - item - Name = 'FAX' - DataType = datString - Size = 25 - BlobType = dabtUnknown - DictionaryEntry = 'Empresas_FAX' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False - end - item - Name = 'EMAIL_1' - DataType = datString - Size = 255 - BlobType = dabtUnknown - DictionaryEntry = 'Empresas_EMAIL_1' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False - end - item - Name = 'EMAIL_2' - DataType = datString - Size = 255 - BlobType = dabtUnknown - DictionaryEntry = 'Empresas_EMAIL_2' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False - end - item - Name = 'PAGINA_WEB' - DataType = datString - Size = 255 - BlobType = dabtUnknown - DictionaryEntry = 'Empresas_PAGINA_WEB' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False - end - item - Name = 'NOTAS' - DataType = datMemo - BlobType = dabtUnknown - DictionaryEntry = 'Empresas_NOTAS' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False - end - item - Name = 'FECHA_ALTA' - DataType = datDateTime - BlobType = dabtUnknown - DictionaryEntry = 'Empresas_FECHA_ALTA' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False - end - item - Name = 'FECHA_MODIFICACION' - DataType = datDateTime - BlobType = dabtUnknown - DictionaryEntry = 'Empresas_FECHA_MODIFICACION' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False - end - item - Name = 'USUARIO' - DataType = datString - Size = 20 - BlobType = dabtUnknown - DictionaryEntry = 'Empresas_USUARIO' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False - end - item - Name = 'LOGOTIPO' - DataType = datBlob - BlobType = dabtBlob - DictionaryEntry = 'Empresas_LOGOTIPO' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False - end - item - Name = 'REGISTRO_MERCANTIL' - DataType = datString - Size = 255 - BlobType = dabtUnknown - DictionaryEntry = 'Empresas_REGISTRO_MERCANTIL' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False - end - item - Name = 'IVA' - DataType = datFloat - BlobType = dabtUnknown - DictionaryEntry = 'Empresas_IVA' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False - end> - BusinessRulesClient.ScriptLanguage = rslPascalScript - BusinessRulesServer.ScriptLanguage = rslPascalScript - end - item - Params = < - item - Name = 'ID_EMPRESA' - DataType = datInteger - BlobType = dabtUnknown - Value = '' - ParamType = daptInput - end> - Statements = < - item - Connection = 'IBX' - TargetTable = 'EMPRESAS_DATOS_BANCO' - SQL = - 'SELECT '#10' ID, ID_EMPRESA, NOMBRE, ENTIDAD, SUCURSAL, DC, CUENT' + - 'A, '#10' SUFIJO_N19, SUFIJO_N58'#10' FROM'#10' EMPRESAS_DATOS_BANCO'#10'W' + - 'HERE ID_EMPRESA = :ID_EMPRESA' - StatementType = stSQL - ColumnMappings = < - item - DatasetField = 'ID' - TableField = 'ID' - end - item - DatasetField = 'ID_EMPRESA' - TableField = 'ID_EMPRESA' - end - item - DatasetField = 'NOMBRE' - TableField = 'NOMBRE' - end - item - DatasetField = 'ENTIDAD' - TableField = 'ENTIDAD' - end - item - DatasetField = 'SUCURSAL' - TableField = 'SUCURSAL' - end - item - DatasetField = 'DC' - TableField = 'DC' - end - item - DatasetField = 'CUENTA' - TableField = 'CUENTA' - end - item - DatasetField = 'SUFIJO_N19' - TableField = 'SUFIJO_N19' - end - item - DatasetField = 'SUFIJO_N58' - TableField = 'SUFIJO_N58' - end> - end> - Name = 'EmpresasDatosBanco' - Fields = < - item - Name = 'ID' - DataType = datInteger - BlobType = dabtUnknown - DictionaryEntry = 'EmpresasDatosBanco_ID' - InPrimaryKey = True - Calculated = False - Lookup = False - LookupCache = False - end - item - Name = 'ID_EMPRESA' - DataType = datInteger - BlobType = dabtUnknown - DictionaryEntry = 'EmpresasDatosBanco_ID_EMPRESA' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False - end - item - Name = 'NOMBRE' - DataType = datString - Size = 255 - BlobType = dabtUnknown - DictionaryEntry = 'EmpresasDatosBanco_NOMBRE' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False - end - item - Name = 'ENTIDAD' - DataType = datString - Size = 15 - BlobType = dabtUnknown - DictionaryEntry = 'EmpresasDatosBanco_ENTIDAD' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False - end - item - Name = 'SUCURSAL' - DataType = datString - Size = 15 - BlobType = dabtUnknown - DictionaryEntry = 'EmpresasDatosBanco_SUCURSAL' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False - end - item - Name = 'DC' - DataType = datString - Size = 15 - BlobType = dabtUnknown - DictionaryEntry = 'EmpresasDatosBanco_DC' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False - end - item - Name = 'CUENTA' - DataType = datString - Size = 15 - BlobType = dabtUnknown - DictionaryEntry = 'EmpresasDatosBanco_CUENTA' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False - end - item - Name = 'SUFIJO_N19' - DataType = datString - Size = 3 - BlobType = dabtUnknown - DictionaryEntry = 'EmpresasDatosBanco_SUFIJO_N19' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False - end - item - Name = 'SUFIJO_N58' - DataType = datString - Size = 3 - BlobType = dabtUnknown - DictionaryEntry = 'EmpresasDatosBanco_SUFIJO_N58' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False - end> - BusinessRulesClient.ScriptLanguage = rslPascalScript - BusinessRulesServer.ScriptLanguage = rslPascalScript - end - item - Params = < - item - Name = 'ID' - DataType = datInteger - BlobType = dabtUnknown - Value = '' - ParamType = daptInput - end> - Statements = < - item - Connection = 'IBX' - TargetTable = 'EMPRESAS' - SQL = - 'SELECT'#10' ID, NIF_CIF, NOMBRE, RAZON_SOCIAL, CALLE, POBLACION, ' + - #10' PROVINCIA, CODIGO_POSTAL, TELEFONO_1, TELEFONO_2, MOVIL_1, ' + - #10' MOVIL_2, FAX, EMAIL_1, EMAIL_2, PAGINA_WEB, NOTAS, '#10' FEC' + - 'HA_ALTA, FECHA_MODIFICACION, USUARIO, LOGOTIPO,'#10' REGISTRO_MER' + - 'CANTIL, IVA'#10' FROM'#10' EMPRESAS'#10'WHERE ID = :ID' - StatementType = stSQL - ColumnMappings = < - item - DatasetField = 'ID' - TableField = 'ID' - end - item - DatasetField = 'NIF_CIF' - TableField = 'NIF_CIF' - end - item - DatasetField = 'NOMBRE' - TableField = 'NOMBRE' - end - item - DatasetField = 'RAZON_SOCIAL' - TableField = 'RAZON_SOCIAL' - end - item - DatasetField = 'CALLE' - TableField = 'CALLE' - end - item - DatasetField = 'POBLACION' - TableField = 'POBLACION' - end - item - DatasetField = 'PROVINCIA' - TableField = 'PROVINCIA' - end - item - DatasetField = 'CODIGO_POSTAL' - TableField = 'CODIGO_POSTAL' - end - item - DatasetField = 'TELEFONO_1' - TableField = 'TELEFONO_1' - end - item - DatasetField = 'TELEFONO_2' - TableField = 'TELEFONO_2' - end - item - DatasetField = 'MOVIL_1' - TableField = 'MOVIL_1' - end - item - DatasetField = 'MOVIL_2' - TableField = 'MOVIL_2' - end - item - DatasetField = 'FAX' - TableField = 'FAX' - end - item - DatasetField = 'EMAIL_1' - TableField = 'EMAIL_1' - end - item - DatasetField = 'EMAIL_2' - TableField = 'EMAIL_2' - end - item - DatasetField = 'PAGINA_WEB' - TableField = 'PAGINA_WEB' - end - item - DatasetField = 'NOTAS' - TableField = 'NOTAS' - end - item - DatasetField = 'FECHA_ALTA' - TableField = 'FECHA_ALTA' - end - item - DatasetField = 'FECHA_MODIFICACION' - TableField = 'FECHA_MODIFICACION' - end - item - DatasetField = 'USUARIO' - TableField = 'USUARIO' - end - item - DatasetField = 'LOGOTIPO' - TableField = 'LOGOTIPO' - end - item - DatasetField = 'REGISTRO_MERCANTIL' - TableField = 'REGISTRO_MERCANTIL' - end - item - DatasetField = 'IVA' - TableField = 'IVA' - end> - end> - Name = 'Empresas_Refresh' - Fields = < - item - Name = 'ID' - DataType = datInteger - BlobType = dabtUnknown - DictionaryEntry = 'Empresas_ID' - InPrimaryKey = True - Calculated = False - Lookup = False - LookupCache = False - end - item - Name = 'NIF_CIF' - DataType = datString - Size = 15 - BlobType = dabtUnknown - DictionaryEntry = 'Empresas_NIF_CIF' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False - end - item - Name = 'NOMBRE' - DataType = datString - Size = 255 - BlobType = dabtUnknown - DictionaryEntry = 'Empresas_NOMBRE' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False - end - item - Name = 'RAZON_SOCIAL' - DataType = datString - Size = 255 - BlobType = dabtUnknown - DictionaryEntry = 'Empresas_RAZON_SOCIAL' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False - end - item - Name = 'CALLE' - DataType = datString - Size = 255 - BlobType = dabtUnknown - DictionaryEntry = 'Empresas_CALLE' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False - end - item - Name = 'POBLACION' - DataType = datString - Size = 255 - BlobType = dabtUnknown - DictionaryEntry = 'Empresas_POBLACION' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False - end - item - Name = 'PROVINCIA' - DataType = datString - Size = 255 - BlobType = dabtUnknown - DictionaryEntry = 'Empresas_PROVINCIA' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False - end - item - Name = 'CODIGO_POSTAL' - DataType = datString - Size = 10 - BlobType = dabtUnknown - DictionaryEntry = 'Empresas_CODIGO_POSTAL' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False - end - item - Name = 'TELEFONO_1' - DataType = datString - Size = 25 - BlobType = dabtUnknown - DictionaryEntry = 'Empresas_TELEFONO_1' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False - end - item - Name = 'TELEFONO_2' - DataType = datString - Size = 25 - BlobType = dabtUnknown - DictionaryEntry = 'Empresas_TELEFONO_2' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False - end - item - Name = 'MOVIL_1' - DataType = datString - Size = 25 - BlobType = dabtUnknown - DictionaryEntry = 'Empresas_MOVIL_1' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False - end - item - Name = 'MOVIL_2' - DataType = datString - Size = 25 - BlobType = dabtUnknown - DictionaryEntry = 'Empresas_MOVIL_2' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False - end - item - Name = 'FAX' - DataType = datString - Size = 25 - BlobType = dabtUnknown - DictionaryEntry = 'Empresas_FAX' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False - end - item - Name = 'EMAIL_1' - DataType = datString - Size = 255 - BlobType = dabtUnknown - DictionaryEntry = 'Empresas_EMAIL_1' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False - end - item - Name = 'EMAIL_2' - DataType = datString - Size = 255 - BlobType = dabtUnknown - DictionaryEntry = 'Empresas_EMAIL_2' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False - end - item - Name = 'PAGINA_WEB' - DataType = datString - Size = 255 - BlobType = dabtUnknown - DictionaryEntry = 'Empresas_PAGINA_WEB' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False - end - item - Name = 'NOTAS' - DataType = datMemo - BlobType = dabtUnknown - DictionaryEntry = 'Empresas_NOTAS' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False - end - item - Name = 'FECHA_ALTA' - DataType = datDateTime - BlobType = dabtUnknown - DictionaryEntry = 'Empresas_FECHA_ALTA' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False - end - item - Name = 'FECHA_MODIFICACION' - DataType = datDateTime - BlobType = dabtUnknown - DictionaryEntry = 'Empresas_FECHA_MODIFICACION' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False - end - item - Name = 'USUARIO' - DataType = datString - Size = 20 - BlobType = dabtUnknown - DictionaryEntry = 'Empresas_USUARIO' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False - end - item - Name = 'LOGOTIPO' - DataType = datBlob - BlobType = dabtBlob - DictionaryEntry = 'Empresas_LOGOTIPO' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False - end - item - Name = 'REGISTRO_MERCANTIL' - DataType = datString - Size = 255 - BlobType = dabtUnknown - DictionaryEntry = 'Empresas_REGISTRO_MERCANTIL' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False - end - item - Name = 'IVA' - DataType = datFloat - BlobType = dabtUnknown - DictionaryEntry = 'Empresas_IVA' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False - end> - BusinessRulesClient.ScriptLanguage = rslPascalScript - BusinessRulesServer.ScriptLanguage = rslPascalScript - end - item - Params = < - item - Name = 'ID' - DataType = datInteger - BlobType = dabtUnknown - Value = '' - ParamType = daptInput - end> - Statements = < - item - Connection = 'IBX' - TargetTable = 'EMPRESAS_DATOS_BANCO' - SQL = - 'SELECT '#10' ID, ID_EMPRESA, NOMBRE, ENTIDAD, SUCURSAL, DC, CUENT' + - 'A, '#10' SUFIJO_N19, SUFIJO_N58'#10' FROM'#10' EMPRESAS_DATOS_BANCO'#10'W' + - 'HERE ID = :ID' - StatementType = stSQL - ColumnMappings = < - item - DatasetField = 'ID' - TableField = 'ID' - end - item - DatasetField = 'ID_EMPRESA' - TableField = 'ID_EMPRESA' - end - item - DatasetField = 'NOMBRE' - TableField = 'NOMBRE' - end - item - DatasetField = 'ENTIDAD' - TableField = 'ENTIDAD' - end - item - DatasetField = 'SUCURSAL' - TableField = 'SUCURSAL' - end - item - DatasetField = 'DC' - TableField = 'DC' - end - item - DatasetField = 'CUENTA' - TableField = 'CUENTA' - end - item - DatasetField = 'SUFIJO_N19' - TableField = 'SUFIJO_N19' - end - item - DatasetField = 'SUFIJO_N58' - TableField = 'SUFIJO_N58' - end> - end> - Name = 'EmpresasDatosBanco_Refresh' - Fields = < - item - Name = 'ID' - DataType = datInteger - BlobType = dabtUnknown - DictionaryEntry = 'EmpresasDatosBanco_ID' - InPrimaryKey = True - Calculated = False - Lookup = False - LookupCache = False - end - item - Name = 'ID_EMPRESA' - DataType = datInteger - BlobType = dabtUnknown - DictionaryEntry = 'EmpresasDatosBanco_ID_EMPRESA' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False - end - item - Name = 'NOMBRE' - DataType = datString - Size = 255 - BlobType = dabtUnknown - DictionaryEntry = 'EmpresasDatosBanco_NOMBRE' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False - end - item - Name = 'ENTIDAD' - DataType = datString - Size = 15 - BlobType = dabtUnknown - DictionaryEntry = 'EmpresasDatosBanco_ENTIDAD' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False - end - item - Name = 'SUCURSAL' - DataType = datString - Size = 15 - BlobType = dabtUnknown - DictionaryEntry = 'EmpresasDatosBanco_SUCURSAL' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False - end - item - Name = 'DC' - DataType = datString - Size = 15 - BlobType = dabtUnknown - DictionaryEntry = 'EmpresasDatosBanco_DC' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False - end - item - Name = 'CUENTA' - DataType = datString - Size = 15 - BlobType = dabtUnknown - DictionaryEntry = 'EmpresasDatosBanco_CUENTA' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False - end - item - Name = 'SUFIJO_N19' - DataType = datString - Size = 3 - BlobType = dabtUnknown - DictionaryEntry = 'EmpresasDatosBanco_SUFIJO_N19' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False - end - item - Name = 'SUFIJO_N58' - DataType = datString - Size = 3 - BlobType = dabtUnknown - DictionaryEntry = 'EmpresasDatosBanco_SUFIJO_N58' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False - end> - BusinessRulesClient.ScriptLanguage = rslPascalScript - BusinessRulesServer.ScriptLanguage = rslPascalScript - end> - Commands = < - item - Params = < - item - Name = 'ID' - DataType = datInteger - BlobType = dabtUnknown - Value = '' - ParamType = daptInput - end - item - Name = 'NIF_CIF' - DataType = datString - Size = 15 - BlobType = dabtUnknown - Value = '' - ParamType = daptInput - end - item - Name = 'NOMBRE' - DataType = datString - Size = 255 - BlobType = dabtUnknown - Value = '' - ParamType = daptInput - end - item - Name = 'RAZON_SOCIAL' - DataType = datString - Size = 255 - BlobType = dabtUnknown - Value = '' - ParamType = daptInput - end - item - Name = 'CALLE' - DataType = datString - Size = 255 - BlobType = dabtUnknown - Value = '' - ParamType = daptInput - end - item - Name = 'POBLACION' - DataType = datString - Size = 255 - BlobType = dabtUnknown - Value = '' - ParamType = daptInput - end - item - Name = 'PROVINCIA' - DataType = datString - Size = 255 - BlobType = dabtUnknown - Value = '' - ParamType = daptInput - end - item - Name = 'CODIGO_POSTAL' - DataType = datString - Size = 10 - BlobType = dabtUnknown - Value = '' - ParamType = daptInput - end - item - Name = 'TELEFONO_1' - DataType = datString - Size = 25 - BlobType = dabtUnknown - Value = '' - ParamType = daptInput - end - item - Name = 'TELEFONO_2' - DataType = datString - Size = 25 - BlobType = dabtUnknown - Value = '' - ParamType = daptInput - end - item - Name = 'MOVIL_1' - DataType = datString - Size = 25 - BlobType = dabtUnknown - Value = '' - ParamType = daptInput - end - item - Name = 'MOVIL_2' - DataType = datString - Size = 25 - BlobType = dabtUnknown - Value = '' - ParamType = daptInput - end - item - Name = 'FAX' - DataType = datString - Size = 25 - BlobType = dabtUnknown - Value = '' - ParamType = daptInput - end - item - Name = 'EMAIL_1' - DataType = datString - Size = 255 - BlobType = dabtUnknown - Value = '' - ParamType = daptInput - end - item - Name = 'EMAIL_2' - DataType = datString - Size = 255 - BlobType = dabtUnknown - Value = '' - ParamType = daptInput - end - item - Name = 'PAGINA_WEB' - DataType = datString - Size = 255 - BlobType = dabtUnknown - Value = '' - ParamType = daptInput - end - item - Name = 'NOTAS' - DataType = datMemo - BlobType = dabtUnknown - Value = '' - ParamType = daptInput - end - item - Name = 'FECHA_ALTA' - DataType = datDateTime - BlobType = dabtUnknown - Value = '' - ParamType = daptInput - end - item - Name = 'FECHA_MODIFICACION' - DataType = datDateTime - BlobType = dabtUnknown - Value = '' - ParamType = daptInput - end - item - Name = 'USUARIO' - DataType = datString - Size = 20 - BlobType = dabtUnknown - Value = '' - ParamType = daptInput - end - item - Name = 'LOGOTIPO' - DataType = datBlob - BlobType = dabtUnknown - Value = '' - ParamType = daptInput - end - item - Name = 'REGISTRO_MERCANTIL' - DataType = datString - Size = 255 - BlobType = dabtUnknown - Value = '' - ParamType = daptInput - end - item - Name = 'IVA' - DataType = datFloat - BlobType = dabtUnknown - Value = '' - ParamType = daptInput - end> - Statements = < - item - Connection = 'IBX' - TargetTable = 'EMPRESAS' - SQL = - 'INSERT'#10' INTO EMPRESAS'#10' (ID, NIF_CIF, NOMBRE, RAZON_SOCIAL, C' + - 'ALLE, POBLACION, '#10' PROVINCIA, CODIGO_POSTAL, TELEFONO_1, TEL' + - 'EFONO_2, MOVIL_1, '#10' MOVIL_2, FAX, EMAIL_1, EMAIL_2, PAGINA_W' + - 'EB, NOTAS, '#10' FECHA_ALTA, FECHA_MODIFICACION, USUARIO, LOGOTI' + - 'PO, '#10' REGISTRO_MERCANTIL, IVA)'#10' VALUES'#10' (:ID, :NIF_CIF, ' + - ':NOMBRE, :RAZON_SOCIAL, :CALLE, :POBLACION, '#10' :PROVINCIA, :C' + - 'ODIGO_POSTAL, :TELEFONO_1, :TELEFONO_2, '#10' :MOVIL_1, :MOVIL_2' + - ', :FAX, :EMAIL_1, :EMAIL_2, :PAGINA_WEB, '#10' :NOTAS, :FECHA_AL' + - 'TA, :FECHA_MODIFICACION, :USUARIO, '#10' :LOGOTIPO, :REGISTRO_ME' + - 'RCANTIL, :IVA)' - StatementType = stSQL - ColumnMappings = <> - end> - Name = 'Insert_Empresas' - end - item - Params = < - item - Name = 'OLD_ID' - DataType = datInteger - BlobType = dabtUnknown - Value = '' - ParamType = daptInput - end> - Statements = < - item - Connection = 'IBX' - TargetTable = 'EMPRESAS' - SQL = 'DELETE '#10' FROM'#10' EMPRESAS'#10' WHERE'#10' (ID = :OLD_ID)' - StatementType = stSQL - ColumnMappings = <> - end> - Name = 'Delete_Empresas' - end - item - Params = < - item - Name = 'NIF_CIF' - DataType = datString - Size = 15 - BlobType = dabtUnknown - Value = '' - ParamType = daptInput - end - item - Name = 'NOMBRE' - DataType = datString - Size = 255 - BlobType = dabtUnknown - Value = '' - ParamType = daptInput - end - item - Name = 'RAZON_SOCIAL' - DataType = datString - Size = 255 - BlobType = dabtUnknown - Value = '' - ParamType = daptInput - end - item - Name = 'CALLE' - DataType = datString - Size = 255 - BlobType = dabtUnknown - Value = '' - ParamType = daptInput - end - item - Name = 'POBLACION' - DataType = datString - Size = 255 - BlobType = dabtUnknown - Value = '' - ParamType = daptInput - end - item - Name = 'PROVINCIA' - DataType = datString - Size = 255 - BlobType = dabtUnknown - Value = '' - ParamType = daptInput - end - item - Name = 'CODIGO_POSTAL' - DataType = datString - Size = 10 - BlobType = dabtUnknown - Value = '' - ParamType = daptInput - end - item - Name = 'TELEFONO_1' - DataType = datString - Size = 25 - BlobType = dabtUnknown - Value = '' - ParamType = daptInput - end - item - Name = 'TELEFONO_2' - DataType = datString - Size = 25 - BlobType = dabtUnknown - Value = '' - ParamType = daptInput - end - item - Name = 'MOVIL_1' - DataType = datString - Size = 25 - BlobType = dabtUnknown - Value = '' - ParamType = daptInput - end - item - Name = 'MOVIL_2' - DataType = datString - Size = 25 - BlobType = dabtUnknown - Value = '' - ParamType = daptInput - end - item - Name = 'FAX' - DataType = datString - Size = 25 - BlobType = dabtUnknown - Value = '' - ParamType = daptInput - end - item - Name = 'EMAIL_1' - DataType = datString - Size = 255 - BlobType = dabtUnknown - Value = '' - ParamType = daptInput - end - item - Name = 'EMAIL_2' - DataType = datString - Size = 255 - BlobType = dabtUnknown - Value = '' - ParamType = daptInput - end - item - Name = 'PAGINA_WEB' - DataType = datString - Size = 255 - BlobType = dabtUnknown - Value = '' - ParamType = daptInput - end - item - Name = 'NOTAS' - DataType = datMemo - BlobType = dabtUnknown - Value = '' - ParamType = daptInput - end - item - Name = 'FECHA_ALTA' - DataType = datDateTime - BlobType = dabtUnknown - Value = '' - ParamType = daptInput - end - item - Name = 'FECHA_MODIFICACION' - DataType = datDateTime - BlobType = dabtUnknown - Value = '' - ParamType = daptInput - end - item - Name = 'USUARIO' - DataType = datString - Size = 20 - BlobType = dabtUnknown - Value = '' - ParamType = daptInput - end - item - Name = 'LOGOTIPO' - DataType = datBlob - BlobType = dabtUnknown - Value = '' - ParamType = daptInput - end - item - Name = 'REGISTRO_MERCANTIL' - DataType = datString - Size = 255 - BlobType = dabtUnknown - Value = '' - ParamType = daptInput - end - item - Name = 'IVA' - DataType = datFloat - BlobType = dabtUnknown - Value = '' - ParamType = daptInput - end - item - Name = 'OLD_ID' - DataType = datInteger - BlobType = dabtUnknown - Value = '' - ParamType = daptInput - end> - Statements = < - item - Connection = 'IBX' - TargetTable = 'EMPRESAS' - SQL = - 'UPDATE EMPRESAS'#10' SET '#10' NIF_CIF = :NIF_CIF,'#10' NOMBRE = :NOM' + - 'BRE, '#10' RAZON_SOCIAL = :RAZON_SOCIAL, '#10' CALLE = :CALLE, '#10' ' + - ' POBLACION = :POBLACION, '#10' PROVINCIA = :PROVINCIA, '#10' CODI' + - 'GO_POSTAL = :CODIGO_POSTAL, '#10' TELEFONO_1 = :TELEFONO_1, '#10' ' + - 'TELEFONO_2 = :TELEFONO_2, '#10' MOVIL_1 = :MOVIL_1, '#10' MOVIL_2 ' + - '= :MOVIL_2, '#10' FAX = :FAX, '#10' EMAIL_1 = :EMAIL_1, '#10' EMAIL' + - '_2 = :EMAIL_2, '#10' PAGINA_WEB = :PAGINA_WEB, '#10' NOTAS = :NOTA' + - 'S, '#10' FECHA_ALTA = :FECHA_ALTA, '#10' FECHA_MODIFICACION = :FEC' + - 'HA_MODIFICACION, '#10' USUARIO = :USUARIO, '#10' LOGOTIPO = :LOGOT' + - 'IPO, '#10' REGISTRO_MERCANTIL = :REGISTRO_MERCANTIL, '#10' IVA = :' + - 'IVA'#10' WHERE'#10' (ID = :OLD_ID)' - StatementType = stSQL - ColumnMappings = <> - end> - Name = 'Update_Empresas' - end - item - Params = < - item - Name = 'ID' - DataType = datInteger - BlobType = dabtUnknown - Value = '' - ParamType = daptInput - end - item - Name = 'ID_EMPRESA' - DataType = datInteger - BlobType = dabtUnknown - Value = '' - ParamType = daptInput - end - item - Name = 'NOMBRE' - DataType = datString - Size = 255 - BlobType = dabtUnknown - Value = '' - ParamType = daptInput - end - item - Name = 'ENTIDAD' - DataType = datString - Size = 15 - BlobType = dabtUnknown - Value = '' - ParamType = daptInput - end - item - Name = 'SUCURSAL' - DataType = datString - Size = 15 - BlobType = dabtUnknown - Value = '' - ParamType = daptInput - end - item - Name = 'DC' - DataType = datString - Size = 15 - BlobType = dabtUnknown - Value = '' - ParamType = daptInput - end - item - Name = 'CUENTA' - DataType = datString - Size = 15 - BlobType = dabtUnknown - Value = '' - ParamType = daptInput - end - item - Name = 'SUFIJO_N19' - DataType = datString - Size = 3 - BlobType = dabtUnknown - Value = '' - ParamType = daptInput - end - item - Name = 'SUFIJO_N58' - DataType = datString - Size = 3 - BlobType = dabtUnknown - Value = '' - ParamType = daptInput - end> - Statements = < - item - Connection = 'IBX' - TargetTable = 'EMPRESAS_DATOS_BANCO' - SQL = - 'INSERT'#10' INTO EMPRESAS_DATOS_BANCO'#10' (ID, ID_EMPRESA, NOMBRE, ' + - 'ENTIDAD, SUCURSAL, DC, CUENTA, '#10' SUFIJO_N19, SUFIJO_N58)'#10' V' + - 'ALUES'#10' (:ID, :ID_EMPRESA, :NOMBRE, :ENTIDAD, :SUCURSAL, :DC, ' + - #10' :CUENTA, :SUFIJO_N19, :SUFIJO_N58)' - StatementType = stSQL - ColumnMappings = <> - end> - Name = 'Insert_EmpresasDatosBanco' - end - item - Params = < - item - Name = 'OLD_ID' - DataType = datInteger - BlobType = dabtUnknown - Value = '' - ParamType = daptInput - end> - Statements = < - item - Connection = 'IBX' - TargetTable = 'EMPRESAS_DATOS_BANCO' - SQL = - 'DELETE '#10' FROM'#10' EMPRESAS_DATOS_BANCO'#10' WHERE'#10' (ID = :OLD_I' + - 'D)' - StatementType = stSQL - ColumnMappings = <> - end> - Name = 'Delete_EmpresasDatosBanco' - end - item - Params = < - item - Name = 'ID_EMPRESA' - DataType = datInteger - BlobType = dabtUnknown - Value = '' - ParamType = daptInput - end - item - Name = 'NOMBRE' - DataType = datString - Size = 255 - BlobType = dabtUnknown - Value = '' - ParamType = daptInput - end - item - Name = 'ENTIDAD' - DataType = datString - Size = 15 - BlobType = dabtUnknown - Value = '' - ParamType = daptInput - end - item - Name = 'SUCURSAL' - DataType = datString - Size = 15 - BlobType = dabtUnknown - Value = '' - ParamType = daptInput - end - item - Name = 'DC' - DataType = datString - Size = 15 - BlobType = dabtUnknown - Value = '' - ParamType = daptInput - end - item - Name = 'CUENTA' - DataType = datString - Size = 15 - BlobType = dabtUnknown - Value = '' - ParamType = daptInput - end - item - Name = 'SUFIJO_N19' - DataType = datString - Size = 3 - BlobType = dabtUnknown - Value = '' - ParamType = daptInput - end - item - Name = 'SUFIJO_N58' - DataType = datString - Size = 3 - BlobType = dabtUnknown - Value = '' - ParamType = daptInput - end - item - Name = 'OLD_ID' - DataType = datInteger - BlobType = dabtUnknown - Value = '' - ParamType = daptInput - end> - Statements = < - item - Connection = 'IBX' - TargetTable = 'EMPRESAS_DATOS_BANCO' - SQL = - 'UPDATE EMPRESAS_DATOS_BANCO'#10' SET '#10' ID_EMPRESA = :ID_EMPRESA,' + - #10' NOMBRE = :NOMBRE, '#10' ENTIDAD = :ENTIDAD, '#10' SUCURSAL = ' + - ':SUCURSAL, '#10' DC = :DC, '#10' CUENTA = :CUENTA, '#10' SUFIJO_N19' + - ' = :SUFIJO_N19, '#10' SUFIJO_N58 = :SUFIJO_N58'#10' WHERE'#10' (ID = ' + - ':OLD_ID)' - StatementType = stSQL - ColumnMappings = <> - end> - Name = 'Update_EmpresasDatosBanco' - end> - RelationShips = <> - UpdateRules = < - item - Name = 'Insert Empresas' - DoUpdate = False - DoInsert = True - DoDelete = False - DatasetName = 'Empresas' - FailureBehaviour = fbRaiseException - end - item - Name = 'Insert EmpresasDatosBanco' - DoUpdate = False - DoInsert = True - DoDelete = False - DatasetName = 'EmpresasDatosBanco' - FailureBehaviour = fbRaiseException - end - item - Name = 'Update Empresas' - DoUpdate = True - DoInsert = False - DoDelete = False - DatasetName = 'Empresas' - FailureBehaviour = fbRaiseException - end - item - Name = 'Update EmpresasDatosBanco' - DoUpdate = True - DoInsert = False - DoDelete = False - DatasetName = 'EmpresasDatosBanco' - FailureBehaviour = fbRaiseException - end - item - Name = 'Delete EmpresasDatosBanco' - DoUpdate = False - DoInsert = False - DoDelete = True - DatasetName = 'EmpresasDatosBanco' - FailureBehaviour = fbRaiseException - end - item - Name = 'Delete Empresas' - DoUpdate = False - DoInsert = False - DoDelete = True - DatasetName = 'Empresas' - FailureBehaviour = fbRaiseException - end> - Left = 30 - Top = 14 - end - object BINAdapter: TDABINAdapter - Left = 30 - Top = 82 - end - object DataDictionary: TDADataDictionary - Fields = < - item - Name = 'Empresas_ID' - DataType = datInteger - BlobType = dabtUnknown - DisplayWidth = 0 - DisplayLabel = 'ID' - Alignment = taLeftJustify - end - item - Name = 'Empresas_NIF_CIF' - DataType = datString - Size = 15 - BlobType = dabtUnknown - DisplayWidth = 0 - DisplayLabel = 'CIF' - Alignment = taLeftJustify - end - item - Name = 'Empresas_NOMBRE' - DataType = datString - Size = 255 - BlobType = dabtUnknown - DisplayWidth = 0 - DisplayLabel = 'Nombre' - Alignment = taLeftJustify - end - item - Name = 'Empresas_RAZON_SOCIAL' - DataType = datString - Size = 255 - BlobType = dabtUnknown - DisplayWidth = 0 - DisplayLabel = 'Raz'#243'n Social' - Alignment = taLeftJustify - end - item - Name = 'Empresas_CALLE' - DataType = datString - Size = 255 - BlobType = dabtUnknown - DisplayWidth = 0 - DisplayLabel = 'Calle' - Alignment = taLeftJustify - end - item - Name = 'Empresas_POBLACION' - DataType = datString - Size = 255 - BlobType = dabtUnknown - DisplayWidth = 0 - DisplayLabel = 'Poblaci'#243'n' - Alignment = taLeftJustify - end - item - Name = 'Empresas_PROVINCIA' - DataType = datString - Size = 255 - BlobType = dabtUnknown - DisplayWidth = 0 - DisplayLabel = 'Provincia' - Alignment = taLeftJustify - end - item - Name = 'Empresas_CODIGO_POSTAL' - DataType = datString - Size = 10 - BlobType = dabtUnknown - DisplayWidth = 0 - DisplayLabel = 'C'#243'd. postal' - Alignment = taLeftJustify - end - item - Name = 'Empresas_TELEFONO_1' - DataType = datString - Size = 25 - BlobType = dabtUnknown - DisplayWidth = 0 - DisplayLabel = 'Tel'#233'fono 1' - Alignment = taLeftJustify - end - item - Name = 'Empresas_TELEFONO_2' - DataType = datString - Size = 25 - BlobType = dabtUnknown - DisplayWidth = 0 - DisplayLabel = 'Tel'#233'fono 2' - Alignment = taLeftJustify - end - item - Name = 'Empresas_MOVIL_1' - DataType = datString - Size = 25 - BlobType = dabtUnknown - DisplayWidth = 0 - DisplayLabel = 'M'#243'vil 1' - Alignment = taLeftJustify - end - item - Name = 'Empresas_MOVIL_2' - DataType = datString - Size = 25 - BlobType = dabtUnknown - DisplayWidth = 0 - DisplayLabel = 'M'#243'vil 2' - Alignment = taLeftJustify - end - item - Name = 'Empresas_FAX' - DataType = datString - Size = 25 - BlobType = dabtUnknown - DisplayWidth = 0 - DisplayLabel = 'Fax' - Alignment = taLeftJustify - end - item - Name = 'Empresas_EMAIL_1' - DataType = datString - Size = 255 - BlobType = dabtUnknown - DisplayWidth = 0 - DisplayLabel = 'E-mail 1' - Alignment = taLeftJustify - end - item - Name = 'Empresas_EMAIL_2' - DataType = datString - Size = 255 - BlobType = dabtUnknown - DisplayWidth = 0 - DisplayLabel = 'E-mail 2' - Alignment = taLeftJustify - end - item - Name = 'Empresas_PAGINA_WEB' - DataType = datString - Size = 255 - BlobType = dabtUnknown - DisplayWidth = 0 - DisplayLabel = 'P'#225'gina web' - Alignment = taLeftJustify - end - item - Name = 'Empresas_NOTAS' - DataType = datMemo - BlobType = dabtUnknown - DisplayWidth = 0 - DisplayLabel = 'Notas' - Alignment = taLeftJustify - end - item - Name = 'Empresas_FECHA_ALTA' - DataType = datDateTime - BlobType = dabtUnknown - DisplayWidth = 0 - Alignment = taLeftJustify - end - item - Name = 'Empresas_FECHA_MODIFICACION' - DataType = datDateTime - BlobType = dabtUnknown - DisplayWidth = 0 - Alignment = taLeftJustify - end - item - Name = 'Empresas_USUARIO' - DataType = datString - Size = 20 - BlobType = dabtUnknown - DisplayWidth = 0 - Alignment = taLeftJustify - end - item - Name = 'Empresas_LOGOTIPO' - DataType = datBlob - BlobType = dabtBlob - DisplayWidth = 0 - DisplayLabel = 'Logotipo' - Alignment = taLeftJustify - end - item - Name = 'Empresas_REGISTRO_MERCANTIL' - DataType = datString - Size = 255 - BlobType = dabtUnknown - DisplayWidth = 0 - DisplayLabel = 'Registro mercantil' - Alignment = taLeftJustify - end - item - Name = 'Empresas_IVA' - DataType = datFloat - BlobType = dabtUnknown - DisplayWidth = 0 - DisplayLabel = 'IVA' - Alignment = taLeftJustify - end - item - Name = 'EmpresasDatosBanco_ID' - DataType = datInteger - BlobType = dabtUnknown - DisplayWidth = 0 - DisplayLabel = 'ID' - Alignment = taLeftJustify - end - item - Name = 'EmpresasDatosBanco_ID_EMPRESA' - DataType = datInteger - BlobType = dabtUnknown - DisplayWidth = 0 - Alignment = taLeftJustify - end - item - Name = 'EmpresasDatosBanco_NOMBRE' - DataType = datString - Size = 255 - BlobType = dabtUnknown - DisplayWidth = 0 - DisplayLabel = 'Nombre del banco' - Alignment = taLeftJustify - end - item - Name = 'EmpresasDatosBanco_ENTIDAD' - DataType = datString - Size = 15 - BlobType = dabtUnknown - DisplayWidth = 0 - DisplayLabel = 'Entidad' - Alignment = taLeftJustify - end - item - Name = 'EmpresasDatosBanco_SUCURSAL' - DataType = datString - Size = 15 - BlobType = dabtUnknown - DisplayWidth = 0 - DisplayLabel = 'Sucursal' - Alignment = taLeftJustify - end - item - Name = 'EmpresasDatosBanco_DC' - DataType = datString - Size = 15 - BlobType = dabtUnknown - DisplayWidth = 0 - DisplayLabel = 'DC' - Alignment = taLeftJustify - end - item - Name = 'EmpresasDatosBanco_CUENTA' - DataType = datString - Size = 15 - BlobType = dabtUnknown - DisplayWidth = 0 - DisplayLabel = 'Cuenta' - Alignment = taLeftJustify - end - item - Name = 'EmpresasDatosBanco_SUFIJO_N19' - DataType = datString - Size = 3 - BlobType = dabtUnknown - DisplayWidth = 0 - DisplayLabel = 'Sufijo 19' - Alignment = taLeftJustify - end - item - Name = 'EmpresasDatosBanco_SUFIJO_N58' - DataType = datString - Size = 3 - BlobType = dabtUnknown - DisplayWidth = 0 - DisplayLabel = 'Sufijo 58' - Alignment = taLeftJustify - end> - Left = 126 - Top = 14 - end - object Diagrams: TDADiagrams - Left = 126 - Top = 82 - DiagramData = - ''#13#10' '#13#10' '#13#10''#13#10 - end - object bpEmpresas: TDABusinessProcessor - Schema = schEmpresas - InsertCommandName = 'Insert_Empresas' - DeleteCommandName = 'Delete_Empresas' - UpdateCommandName = 'Update_Empresas' - ReferencedDataset = 'Empresas' - ProcessorOptions = [poPrepareCommands] - UpdateMode = updWhereKeyOnly - Left = 248 - Top = 16 - end - object bpEmpresasDatosBanco: TDABusinessProcessor - Schema = schEmpresas - InsertCommandName = 'Insert_EmpresasDatosBanco' - DeleteCommandName = 'Delete_EmpresasDatosBanco' - UpdateCommandName = 'Update_EmpresasDatosBanco' - RefreshDatasetName = 'EmpresasDatosBanco_Refresh' - ReferencedDataset = 'EmpresasDatosBanco' - ProcessorOptions = [poPrepareCommands] - UpdateMode = updWhereKeyOnly - Left = 248 - Top = 80 - end -end diff --git a/Source/Modulos/Empresas/Views/Empresas_view.bdsproj b/Source/Modulos/Empresas/Views/Empresas_view.bdsproj deleted file mode 100644 index df17f8a0..00000000 --- a/Source/Modulos/Empresas/Views/Empresas_view.bdsproj +++ /dev/null @@ -1,543 +0,0 @@ - - - - - - - - - - - - Empresas_view.dpk - - - 7.0 - - - 8 - 0 - 1 - 1 - 0 - 0 - 1 - 1 - 1 - 0 - 0 - 1 - 0 - 1 - 1 - 1 - 0 - 0 - 0 - 0 - 0 - 1 - 0 - 1 - 1 - 1 - True - True - WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; - - False - - True - True - True - True - True - True - True - True - True - True - True - True - True - True - True - True - True - True - True - True - True - True - True - True - True - True - True - True - True - True - True - True - True - True - True - True - True - True - True - True - True - True - True - True - True - True - False - False - False - True - True - True - True - True - True - - - - 3 - 0 - False - 1 - False - False - False - 16384 - 1048576 - 4194304 - - - - - .\ - ..\..\..\..\Output\Debug\Cliente - ..\..\Lib - ..\..\..\Lib;..\..\Lib - - - - False - - - - - - False - - - True - False - - - - $00000000 - - - - True - False - 1 - 0 - 0 - 0 - False - False - False - False - False - 3082 - 1252 - - - - - 1.0.0.0 - - - - - - 1.0.0.0 - - - ExpressBars extended items by Developer Express Inc. - ExpressCommonLibrary by Developer Express Inc. - ExpressBars by Developer Express Inc. - Express Cross Platform Library by Developer Express Inc. - Express XP Theme Manager by Developer Express Inc. - ExpressEditors Library 5 by Developer Express Inc. - ExpressDataController by Developer Express Inc. - ExpressExtendedEditors Library 5 by Developer Express Inc. - ExpressQuantumGrid 5 by Developer Express Inc. - Express Cross Platform PageControl by Developer Express Inc. - Express Cross Platform Export Library by Developer Express Inc. - ExpressScheduler 2 by Developer Express Inc. - ExpressQuantumTreeList 4 by Developer Express Inc. - ExpressVerticalGrid by Developer Express Inc. - ExpressBars DBNavigator by Developer Express Inc. - ExpressBars extended DB items by Developer Express Inc. - ExpressDocking Library by Developer Express Inc. - ExpressLayout Control by Developer Express Inc. - ExpressNavBar by Developer Express Inc. - ExpressPrinting System by Developer Express Inc. - ExpressSideBar by Developer Express Inc. - JVCL Application and Form Components Runtime Package - JVCL Core Runtime Package - JEDI Code Library RTL package - JEDI Code Library VCL package - JVCL System Runtime Package - JVCL Standard Controls Runtime Package - JVCL Band Objects Runtime Package - JVCL BDE Components Runtime Package - JVCL Controls Runtime Package - JVCL Components Runtime Package - JVCL DotNet Controls Runtime Package - JVCL EDI Components - JVCL Globus Components - JVCL HMI Controls runtime package - JVCL Interpreter Components Runtime Package - JVCL Jans Components - JVCL Managed Threads - runtime package - JVCL Multimedia and Image Components Runtime Package - JVCL Network Components Runtime Package - JVCL Page Style Components Runtime Package - JVCL Plugin Components Runtime Package - JVCL Print Preview Components - JVCL Runtime Design Components Runtime Package - JVCL Time Framework - JVCL Validators and Error Indicator Components - JVCL Wizard Run Time Package - JVCL XP Controls Runtime Package - (untitled) - ExpressGDI+ Library by Developer Express Inc. - - - - diff --git a/Source/Modulos/Empresas/Views/Empresas_view.dpk b/Source/Modulos/Empresas/Views/Empresas_view.dpk deleted file mode 100644 index 87476849..00000000 --- a/Source/Modulos/Empresas/Views/Empresas_view.dpk +++ /dev/null @@ -1,84 +0,0 @@ -package Empresas_view; - -{$R *.res} -{$ALIGN 8} -{$ASSERTIONS ON} -{$BOOLEVAL OFF} -{$DEBUGINFO ON} -{$EXTENDEDSYNTAX ON} -{$IMPORTEDDATA ON} -{$IOCHECKS ON} -{$LOCALSYMBOLS ON} -{$LONGSTRINGS ON} -{$OPENSTRINGS ON} -{$OPTIMIZATION ON} -{$OVERFLOWCHECKS OFF} -{$RANGECHECKS OFF} -{$REFERENCEINFO ON} -{$SAFEDIVIDE OFF} -{$STACKFRAMES OFF} -{$TYPEDADDRESS OFF} -{$VARSTRINGCHECKS ON} -{$WRITEABLECONST OFF} -{$MINENUMSIZE 1} -{$IMAGEBASE $400000} -{$IMPLICITBUILD OFF} - -requires - rtl, - vcl, - dbrtl, - vcldb, - cxLibraryD10, - dxThemeD10, - cxEditorsD10, - cxDataD10, - vcljpg, - cxGridD10, - cxPageControlD10, - cxExtEditorsD10, - vclx, - cxExportD10, - tbx_d10, - tb2k_d10, - dsnap, - adortl, - dxLayoutControlD10, - dxComnD10, - dxPSCoreD10, - dxPScxCommonD10, - dxPSLnksD10, - designide, - xmlrtl, - vclactnband, - vclshlctrls, - dxPScxGridLnkD10, - dclcxLibraryD10, - JvCoreD10R, - Jcl, - JclVcl, - JvSystemD10R, - JvStdCtrlsD10R, - JvAppFrmD10R, - JvPageCompsD10R, - PNG_D10, - PngComponentsD10, - GUISDK_D10, - ccpack10, - cfpack_d10, - DataAbstract_D10, - Base, - GUIBase, - Empresas_model, - Empresas_controller, - JvCtrlsD10R, - JvJansD10R; - -contains - uEmpresasViewRegister in 'uEmpresasViewRegister.pas', - uEditorEmpresa in 'uEditorEmpresa.pas' {fEditorEmpresa: TForm}, - uViewEmpresa in 'uViewEmpresa.pas' {frViewEmpresa: TFrame}, - uViewDatosBancarios in 'uViewDatosBancarios.pas' {frViewDatosBancarios: TFrame}, - uEditorDatosBancariosEmpresa in 'uEditorDatosBancariosEmpresa.pas' {fEditorDatosBancariosEmpresa}; - -end. diff --git a/Source/Modulos/Empresas/Views/Empresas_view.drc b/Source/Modulos/Empresas/Views/Empresas_view.drc deleted file mode 100644 index 7642ac97..00000000 --- a/Source/Modulos/Empresas/Views/Empresas_view.drc +++ /dev/null @@ -1,14 +0,0 @@ -/* VER180 - Generated by the Borland Delphi Pascal Compiler - because -GD or --drc was supplied to the compiler. - - This file contains compiler-generated resources that - were bound to the executable. - If this file is empty, then no compiler-generated - resources were bound to the produced executable. -*/ - -STRINGTABLE -BEGIN -END - diff --git a/Source/Modulos/Empresas/Views/Empresas_view.rc b/Source/Modulos/Empresas/Views/Empresas_view.rc deleted file mode 100644 index e69de29b..00000000 diff --git a/Source/Modulos/Empresas/Views/Empresas_view.res b/Source/Modulos/Empresas/Views/Empresas_view.res deleted file mode 100644 index 36f26e23..00000000 Binary files a/Source/Modulos/Empresas/Views/Empresas_view.res and /dev/null differ diff --git a/Source/Modulos/Familias/Controller/Familias_controller.dpk b/Source/Modulos/Familias/Controller/Familias_controller.dpk index 40ceaed6..2791236d 100644 --- a/Source/Modulos/Familias/Controller/Familias_controller.dpk +++ b/Source/Modulos/Familias/Controller/Familias_controller.dpk @@ -22,29 +22,16 @@ package Familias_controller; {$WRITEABLECONST OFF} {$MINENUMSIZE 1} {$IMAGEBASE $400000} -{$IMPLICITBUILD OFF} +{$IMPLICITBUILD ON} requires rtl, vcl, - dbrtl, - cxLibraryD10, - dxThemeD10, - dsnap, - vcldb, - adortl, + Base, + GUIBase, + ApplicationBase, Familias_model, - Familias_data, - ControllerBase, - dxBarExtItemsD10, - dxComnD10, - dxBarD10, - dxLayoutControlD10, - dxPSCoreD10, - dxPScxCommonD10, - dxPScxGridLnkD10, - dxPsPrVwAdvD10, - GUIBase; + Familias_data; contains uFamiliasController in 'uFamiliasController.pas', diff --git a/Source/Modulos/Empresas/Model/Empresas_model.dpk b/Source/Modulos/Familias/Controller/Familias_controller.dpk.bak similarity index 51% rename from Source/Modulos/Empresas/Model/Empresas_model.dpk rename to Source/Modulos/Familias/Controller/Familias_controller.dpk.bak index 1de1c0f6..40ceaed6 100644 --- a/Source/Modulos/Empresas/Model/Empresas_model.dpk +++ b/Source/Modulos/Familias/Controller/Familias_controller.dpk.bak @@ -1,4 +1,4 @@ -package Empresas_model; +package Familias_controller; {$R *.res} {$ALIGN 8} @@ -22,32 +22,32 @@ package Empresas_model; {$WRITEABLECONST OFF} {$MINENUMSIZE 1} {$IMAGEBASE $400000} -{$DESCRIPTION 'Empresas'} {$IMPLICITBUILD OFF} requires rtl, - dbrtl, vcl, + dbrtl, + cxLibraryD10, + dxThemeD10, dsnap, vcldb, adortl, - vcljpg, - cxLibraryD10, - dxThemeD10, - cxEditorsD10, - cxDataD10, - cxExtEditorsD10, - cxGridD10, - cxPageControlD10, - DataAbstract_D10, - Base; + Familias_model, + Familias_data, + ControllerBase, + dxBarExtItemsD10, + dxComnD10, + dxBarD10, + dxLayoutControlD10, + dxPSCoreD10, + dxPScxCommonD10, + dxPScxGridLnkD10, + dxPsPrVwAdvD10, + GUIBase; contains - uBizEmpresas in 'uBizEmpresas.pas', - uIDataModuleEmpresas in 'Data\uIDataModuleEmpresas.pas', - schEmpresasClient_Intf in 'schEmpresasClient_Intf.pas', - schEmpresasServer_Intf in 'schEmpresasServer_Intf.pas', - uBizEmpresasDatosBancarios in 'uBizEmpresasDatosBancarios.pas'; + uFamiliasController in 'uFamiliasController.pas', + uIEditorFamilias in 'View\uIEditorFamilias.pas'; end. diff --git a/Source/Modulos/Familias/Controller/Familias_controller.dproj b/Source/Modulos/Familias/Controller/Familias_controller.dproj new file mode 100644 index 00000000..467cc692 --- /dev/null +++ b/Source/Modulos/Familias/Controller/Familias_controller.dproj @@ -0,0 +1,542 @@ + + + {7f80f8aa-6912-4714-986d-aed73035472b} + Familias_controller.dpk + Debug + AnyCPU + DCC32 + ..\..\..\..\Output\Debug\Cliente\Familias_controller.bpl + + + 7.0 + False + False + 0 + .\ + .\ + .\ + ..\..\..\..\Output\Debug\Cliente + ..\..\Lib + ..\..\..\Lib;..\..\Lib + ..\..\..\Lib;..\..\Lib + ..\..\..\Lib;..\..\Lib + ..\..\..\Lib;..\..\Lib + RELEASE + + + 7.0 + .\ + .\ + .\ + ..\..\..\..\Output\Debug\Cliente + ..\..\Lib + ..\..\..\Lib;..\..\Lib + ..\..\..\Lib;..\..\Lib + ..\..\..\Lib;..\..\Lib + ..\..\..\Lib;..\..\Lib + + + Delphi.Personality + Package + +FalseTrueFalseTrueFalseFalseTrueFalse1000FalseFalseFalseFalseFalse308212521.0.0.01.0.0.0Familias_controller.dpk + + + + + MainSource + + + + + + + + + + + + + diff --git a/Source/Modulos/Familias/Controller/Familias_controller.rc b/Source/Modulos/Familias/Controller/Familias_controller.rc index e69de29b..153736af 100644 --- a/Source/Modulos/Familias/Controller/Familias_controller.rc +++ b/Source/Modulos/Familias/Controller/Familias_controller.rc @@ -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 diff --git a/Source/Modulos/Familias/Controller/Familias_controller.res b/Source/Modulos/Familias/Controller/Familias_controller.res index 36f26e23..8b251f31 100644 Binary files a/Source/Modulos/Familias/Controller/Familias_controller.res and b/Source/Modulos/Familias/Controller/Familias_controller.res differ diff --git a/Source/Modulos/Familias/Data/Familias_data.dpk b/Source/Modulos/Familias/Data/Familias_data.dpk index 232c1c42..d99e5821 100644 --- a/Source/Modulos/Familias/Data/Familias_data.dpk +++ b/Source/Modulos/Familias/Data/Familias_data.dpk @@ -22,19 +22,15 @@ package Familias_data; {$WRITEABLECONST OFF} {$MINENUMSIZE 1} {$IMAGEBASE $400000} -{$IMPLICITBUILD OFF} +{$IMPLICITBUILD ON} requires rtl, - dbrtl, - cxLibraryD10, - dxThemeD10, vcl, - dsnap, - vcldb, - adortl, - Familias_model, - Base; + Base, + GUIBase, + ApplicationBase, + Familias_model; contains uDataModuleFamilias in 'uDataModuleFamilias.pas' {DataModuleFamilias}; diff --git a/Source/Base/ControllerBase/ControllerBase.dpk b/Source/Modulos/Familias/Data/Familias_data.dpk.bak similarity index 61% rename from Source/Base/ControllerBase/ControllerBase.dpk rename to Source/Modulos/Familias/Data/Familias_data.dpk.bak index 900e7f3b..232c1c42 100644 --- a/Source/Base/ControllerBase/ControllerBase.dpk +++ b/Source/Modulos/Familias/Data/Familias_data.dpk.bak @@ -1,4 +1,4 @@ -package ControllerBase; +package Familias_data; {$R *.res} {$ALIGN 8} @@ -11,12 +11,12 @@ package ControllerBase; {$LOCALSYMBOLS ON} {$LONGSTRINGS ON} {$OPENSTRINGS ON} -{$OPTIMIZATION OFF} +{$OPTIMIZATION ON} {$OVERFLOWCHECKS OFF} {$RANGECHECKS OFF} {$REFERENCEINFO ON} {$SAFEDIVIDE OFF} -{$STACKFRAMES ON} +{$STACKFRAMES OFF} {$TYPEDADDRESS OFF} {$VARSTRINGCHECKS ON} {$WRITEABLECONST OFF} @@ -26,18 +26,17 @@ package ControllerBase; requires rtl, - vcl, dbrtl, - dsnap, - DataAbstract_D10, cxLibraryD10, dxThemeD10, + vcl, + dsnap, vcldb, - adortl; + adortl, + Familias_model, + Base; contains - uControllerBase in 'uControllerBase.pas', - uControllerDetallesBase in 'uControllerDetallesBase.pas', - uControllerDetallesDTO in 'uControllerDetallesDTO.pas'; + uDataModuleFamilias in 'uDataModuleFamilias.pas' {DataModuleFamilias}; end. diff --git a/Source/Modulos/Familias/Data/Familias_data.dproj b/Source/Modulos/Familias/Data/Familias_data.dproj new file mode 100644 index 00000000..d0fb29da --- /dev/null +++ b/Source/Modulos/Familias/Data/Familias_data.dproj @@ -0,0 +1,553 @@ + + + {28b6d86e-fac2-4bfd-97d9-fcea860835eb} + Familias_data.dpk + Debug + AnyCPU + DCC32 + ..\..\..\..\Output\Debug\Cliente\Familias_data.bpl + + + 7.0 + False + False + 0 + .\ + .\ + .\ + ..\..\..\..\Output\Debug\Cliente + ..\..\Lib + ..\..\..\Lib;..\..\Lib + ..\..\..\Lib;..\..\Lib + ..\..\..\Lib;..\..\Lib + ..\..\..\Lib;..\..\Lib + RELEASE + + + 7.0 + .\ + .\ + .\ + ..\..\..\..\Output\Debug\Cliente + ..\..\Lib + ..\..\..\Lib;..\..\Lib + ..\..\..\Lib;..\..\Lib + ..\..\..\Lib;..\..\Lib + ..\..\..\Lib;..\..\Lib + + + Delphi.Personality + Package + +FalseTrueFalseTrueFalseFalseTrueFalse1000FalseFalseFalseFalseFalse308212521.0.0.01.0.0.0Familias_data.dpk + + + + + MainSource + + + + + + + + + + + + + + + + + + + +
DataModuleFamilias
+
+
+
+ diff --git a/Source/Modulos/Familias/Data/Familias_data.rc b/Source/Modulos/Familias/Data/Familias_data.rc index e69de29b..153736af 100644 --- a/Source/Modulos/Familias/Data/Familias_data.rc +++ b/Source/Modulos/Familias/Data/Familias_data.rc @@ -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 diff --git a/Source/Modulos/Familias/Data/Familias_data.res b/Source/Modulos/Familias/Data/Familias_data.res index 36f26e23..8b251f31 100644 Binary files a/Source/Modulos/Familias/Data/Familias_data.res and b/Source/Modulos/Familias/Data/Familias_data.res differ diff --git a/Source/Modulos/Familias/Data/uDataModuleFamilias.dfm b/Source/Modulos/Familias/Data/uDataModuleFamilias.dfm index 9411f06c..97ccd415 100644 --- a/Source/Modulos/Familias/Data/uDataModuleFamilias.dfm +++ b/Source/Modulos/Familias/Data/uDataModuleFamilias.dfm @@ -1,186 +1,50 @@ object DataModuleFamilias: TDataModuleFamilias OldCreateOrder = True OnCreate = DAClientDataModuleCreate - RemoteService = RORemoteService - Adapter = DABinAdapter - SchemaCall.MethodName = 'GetSchemaAsXML' - SchemaCall.Params = < - item - Name = 'Result' - ParamType = fResult - DataType = rtString - end> - Height = 414 - Width = 518 + Height = 176 + Width = 361 object RORemoteService: TRORemoteService + Message = dmConexion.ROMessage + Channel = dmConexion.ROChannel ServiceName = 'srvFamilias' - Message = ROBinMessage1 - Channel = ROWinInetHTTPChannel1 Left = 48 Top = 24 end - object DABinAdapter: TDABINAdapter - Left = 48 - Top = 80 + object rda_Familias: TDARemoteDataAdapter + GetSchemaCall.RemoteService = RORemoteService + GetDataCall.RemoteService = RORemoteService + UpdateDataCall.RemoteService = RORemoteService + GetScriptsCall.RemoteService = RORemoteService + RemoteService = RORemoteService + DataStreamer = Bin2DataStreamer + Left = 203 + Top = 23 end - object DADesigntimeCall1: TDADesigntimeCall - RemoteRequest.MethodName = 'Login' - RemoteRequest.Params = < - item - Name = 'Result' - ParamType = fResult - DataType = rtBoolean - end - item - Name = 'User' - ParamType = fIn - DataType = rtString - Value = 'Administrador' - end - item - Name = 'Password' - ParamType = fIn - DataType = rtString - Value = '1' - end - item - Name = 'LoginInfo' - ParamType = fOut - DataType = rtUserDefined - UserClassName = 'TRdxLoginInfo' - end> - RemoteService = LoginRemoteService + object Bin2DataStreamer: TDABin2DataStreamer Left = 48 - Top = 160 + Top = 88 end - object LoginRemoteService: TRORemoteService - ServiceName = 'srvLogin' - Message = ROBinMessage1 - Channel = ROWinInetHTTPChannel1 - Left = 48 - Top = 216 - end - object ROWinInetHTTPChannel1: TROWinInetHTTPChannel - ServerLocators = <> - DispatchOptions = [] - ProbeServers = False - ProbeFrequency = 60000 - UserAgent = 'RemObjects SDK' - TargetURL = 'http://localhost:8099/bin' - Left = 48 - Top = 272 - end - object ROBinMessage1: TROBinMessage - Left = 48 - Top = 324 - end - object tbl_Familias: TDACDSDataTable + object tbl_Familias: TDAMemDataTable RemoteUpdatesOptions = [] Fields = < item Name = 'DESCRIPCION' DataType = datString Size = 255 - BlobType = dabtUnknown - DisplayWidth = 0 - Alignment = taLeftJustify - InPrimaryKey = True - Calculated = False - Lookup = False - LookupCache = False end> Params = <> - MasterMappingMode = mmDataRequest StreamingOptions = [soDisableEventsWhileStreaming] - SchemaCall.MethodName = 'GetDatasetSchema' - SchemaCall.Params = < - item - Name = 'Result' - ParamType = fResult - DataType = rtBinary - end - item - Name = 'aDatasetName' - ParamType = fIn - DataType = rtString - Value = 'Familias' - end> - DataRequestCall.MethodName = 'GetDatasetDataEx' - DataRequestCall.Params = < - item - Name = 'Result' - ParamType = fResult - DataType = rtBinary - end - item - Name = 'DatasetName' - ParamType = fIn - DataType = rtString - Value = 'Familias' - end - item - Name = 'Params' - ParamType = fIn - DataType = rtUserDefined - UserClassName = 'TDADatasetParamArray' - end - item - Name = 'UserFilter' - ParamType = fIn - DataType = rtString - Value = '' - end - item - Name = 'IncludeSchema' - ParamType = fIn - DataType = rtBoolean - Value = False - end - item - Name = 'MaxRecords' - ParamType = fIn - DataType = rtInteger - Value = -1 - end> - DataUpdateCall.MethodName = 'UpdateData' - DataUpdateCall.Params = < - item - Name = 'Result' - ParamType = fResult - DataType = rtBinary - end - item - Name = 'Delta' - ParamType = fIn - DataType = rtBinary - end> - ScriptCall.MethodName = 'GetDatasetScripts' - ScriptCall.Params = < - item - Name = 'Result' - ParamType = fResult - DataType = rtString - Value = '' - end - item - Name = 'DatasetNames' - ParamType = fIn - DataType = rtString - Value = 'Familias' - end> - ReadOnly = False - RemoteService = RORemoteService - Adapter = DABinAdapter + RemoteDataAdapter = rda_Familias DetailOptions = [dtCascadeOpenClose, dtCascadeApplyUpdates, dtAutoFetch, dtCascadeDelete, dtCascadeUpdate, dtDisableLogOfCascadeDeletes, dtDisableLogOfCascadeUpdates, dtIncludeInAllInOneFetch] MasterOptions = [moCascadeOpenClose, moCascadeApplyUpdates, moCascadeDelete, moCascadeUpdate, moDisableLogOfCascadeDeletes, moDisableLogOfCascadeUpdates] LogicalName = 'Familias' - IndexDefs = <> - Left = 248 - Top = 104 + Left = 280 + Top = 24 end object ds_Familias: TDADataSource + DataSet = tbl_Familias.Dataset DataTable = tbl_Familias - Left = 248 - Top = 40 + Left = 280 + Top = 88 end end diff --git a/Source/Modulos/Familias/Data/uDataModuleFamilias.pas b/Source/Modulos/Familias/Data/uDataModuleFamilias.pas index 81837378..4a66623a 100644 --- a/Source/Modulos/Familias/Data/uDataModuleFamilias.pas +++ b/Source/Modulos/Familias/Data/uDataModuleFamilias.pas @@ -3,27 +3,20 @@ unit uDataModuleFamilias; interface uses - SysUtils, Classes, DB, uDAClientDataModule, uDADataTable, uDABINAdapter, - uDAScriptingProvider, uDACDSDataTable, uROWinInetHttpChannel, uROTypes, - uROServiceComponent, uRORemoteService, uROClient, uROBinMessage, - uDADesigntimeCall, - uIDataModuleFamilias, uBizFamilias; + SysUtils, Classes, DB, uIDataModuleFamilias, uBizFamilias, uDAInterfaces, uDADataTable, + uDAScriptingProvider, uDAMemDataTable, uDADataStreamer, uDABin2DataStreamer, + uDARemoteDataAdapter, uROClient, uRORemoteService; type - TDataModuleFamilias = class(TDAClientDataModule, IDataModuleFamilias) + TDataModuleFamilias = class(TDataModule, IDataModuleFamilias) RORemoteService: TRORemoteService; - DABinAdapter: TDABINAdapter; - DADesigntimeCall1: TDADesigntimeCall; - LoginRemoteService: TRORemoteService; - ROWinInetHTTPChannel1: TROWinInetHTTPChannel; - ROBinMessage1: TROBinMessage; - tbl_Familias: TDACDSDataTable; + rda_Familias: TDARemoteDataAdapter; + Bin2DataStreamer: TDABin2DataStreamer; + tbl_Familias: TDAMemDataTable; ds_Familias: TDADataSource; procedure DAClientDataModuleCreate(Sender: TObject); - protected - function _CloneDataTable (const ADataTable : TDACDSDataTable): TDACDSDataTable; overload; - procedure AsignarClaseNegocio(var AFamilia: TDACDSDataTable); virtual; + procedure AsignarClaseNegocio(AFamilia: TDADataTable); public function GetItems : IBizFamilia; end; @@ -32,12 +25,12 @@ implementation {$R *.DFM} uses - FactuGES_Intf, uDataModuleConexion, uDataTableUtils, cxControls, uDAInterfaces, + FactuGES_Intf, uDataModuleConexion, uDataTableUtils, cxControls, schFamiliasClient_Intf; { TdmFamilias } -procedure TDataModuleFamilias.AsignarClaseNegocio(var AFamilia: TDACDSDataTable); +procedure TDataModuleFamilias.AsignarClaseNegocio(AFamilia: TDADataTable); begin AFamilia.BusinessRulesID := BIZ_CLIENT_FAMILIA; end; @@ -48,24 +41,13 @@ begin RORemoteService.Message := dmConexion.Message; end; -function TDataModuleFamilias._CloneDataTable(const ADataTable : TDACDSDataTable): TDACDSDataTable; -begin - Result := NIL; - - if not Assigned(ADataTable) then - raise Exception.Create ('No se ha asignado la tabla de origen (CloneDataTable)'); - - Result := TDACDSDataTable.Create(NIL); - CloneDataTable(ADataTable, Result); -end; - function TDataModuleFamilias.GetItems: IBizFamilia; var - AFamilia : TDACDSDataTable; + AFamilia : TDAMemDataTable; begin ShowHourglassCursor; try - AFamilia := _CloneDataTable(tbl_Familias); + AFamilia := CloneDataTable(tbl_Familias); AsignarClaseNegocio(AFamilia); Result := (AFamilia as IBizFamilia); finally diff --git a/Source/Modulos/Familias/Familias_Group.groupproj b/Source/Modulos/Familias/Familias_Group.groupproj new file mode 100644 index 00000000..5aea7da8 --- /dev/null +++ b/Source/Modulos/Familias/Familias_Group.groupproj @@ -0,0 +1,104 @@ + + + {9a7cc043-5043-46ff-a039-c4103c4aa6b2} + + + + + + + + + + + + + + Default.Personality + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/Source/Modulos/Familias/Model/Familias_model.dpk b/Source/Modulos/Familias/Model/Familias_model.dpk index 294487f1..49b0a991 100644 --- a/Source/Modulos/Familias/Model/Familias_model.dpk +++ b/Source/Modulos/Familias/Model/Familias_model.dpk @@ -22,16 +22,14 @@ package Familias_model; {$WRITEABLECONST OFF} {$MINENUMSIZE 1} {$IMAGEBASE $400000} -{$IMPLICITBUILD OFF} +{$IMPLICITBUILD ON} requires rtl, - dsnap, - dbrtl, - vcldb, vcl, - adortl, - DataAbstract_D10; + Base, + GUIBase, + ApplicationBase; contains uBizFamilias in 'uBizFamilias.pas', diff --git a/Source/Modulos/Familias/Model/Familias_model.dpk.bak b/Source/Modulos/Familias/Model/Familias_model.dpk.bak new file mode 100644 index 00000000..294487f1 --- /dev/null +++ b/Source/Modulos/Familias/Model/Familias_model.dpk.bak @@ -0,0 +1,41 @@ +package Familias_model; + +{$R *.res} +{$ALIGN 8} +{$ASSERTIONS ON} +{$BOOLEVAL OFF} +{$DEBUGINFO ON} +{$EXTENDEDSYNTAX ON} +{$IMPORTEDDATA ON} +{$IOCHECKS ON} +{$LOCALSYMBOLS ON} +{$LONGSTRINGS ON} +{$OPENSTRINGS ON} +{$OPTIMIZATION ON} +{$OVERFLOWCHECKS OFF} +{$RANGECHECKS OFF} +{$REFERENCEINFO ON} +{$SAFEDIVIDE OFF} +{$STACKFRAMES OFF} +{$TYPEDADDRESS OFF} +{$VARSTRINGCHECKS ON} +{$WRITEABLECONST OFF} +{$MINENUMSIZE 1} +{$IMAGEBASE $400000} +{$IMPLICITBUILD OFF} + +requires + rtl, + dsnap, + dbrtl, + vcldb, + vcl, + adortl, + DataAbstract_D10; + +contains + uBizFamilias in 'uBizFamilias.pas', + uIDataModuleFamilias in 'Data\uIDataModuleFamilias.pas', + schFamiliasClient_Intf in 'schFamiliasClient_Intf.pas'; + +end. diff --git a/Source/Modulos/Familias/Model/Familias_model.dproj b/Source/Modulos/Familias/Model/Familias_model.dproj new file mode 100644 index 00000000..4e04c5fa --- /dev/null +++ b/Source/Modulos/Familias/Model/Familias_model.dproj @@ -0,0 +1,552 @@ + + + {73acd39c-b2f0-49b7-9acf-10945bbac8c1} + Familias_model.dpk + Debug + AnyCPU + DCC32 + ..\..\..\..\Output\Debug\Cliente\Familias_model.bpl + + + 7.0 + False + False + 0 + .\ + .\ + .\ + ..\..\..\..\Output\Debug\Cliente + ..\..\Lib + ..\..\..\Lib;..\..\Lib + ..\..\..\Lib;..\..\Lib + ..\..\..\Lib;..\..\Lib + ..\..\..\Lib;..\..\Lib + RELEASE + + + 7.0 + .\ + .\ + .\ + ..\..\..\..\Output\Debug\Cliente + ..\..\Lib + ..\..\..\Lib;..\..\Lib + ..\..\..\Lib;..\..\Lib + ..\..\..\Lib;..\..\Lib + ..\..\..\Lib;..\..\Lib + + + Delphi.Personality + Package + +FalseTrueFalseTrueFalseFalseTrueFalse1000FalseFalseFalseFalseFalse308212521.0.0.01.0.0.0Familias_model.dpk + + + + + MainSource + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Source/Modulos/Familias/Model/Familias_model.rc b/Source/Modulos/Familias/Model/Familias_model.rc index e69de29b..153736af 100644 --- a/Source/Modulos/Familias/Model/Familias_model.rc +++ b/Source/Modulos/Familias/Model/Familias_model.rc @@ -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 diff --git a/Source/Modulos/Familias/Model/Familias_model.res b/Source/Modulos/Familias/Model/Familias_model.res index 36f26e23..8b251f31 100644 Binary files a/Source/Modulos/Familias/Model/Familias_model.res and b/Source/Modulos/Familias/Model/Familias_model.res differ diff --git a/Source/Modulos/Familias/Plugin/Familias_plugin.dpk b/Source/Modulos/Familias/Plugin/Familias_plugin.dpk index 14300abe..6a51cb66 100644 --- a/Source/Modulos/Familias/Plugin/Familias_plugin.dpk +++ b/Source/Modulos/Familias/Plugin/Familias_plugin.dpk @@ -22,15 +22,14 @@ package Familias_plugin; {$WRITEABLECONST OFF} {$MINENUMSIZE 1} {$IMAGEBASE $400000} -{$IMPLICITBUILD OFF} +{$IMPLICITBUILD ON} requires rtl, vcl, - PngComponentsD10, - PNG_D10, - vclactnband, - vclx, + Base, + GUIBase, + ApplicationBase, Familias_model, Familias_controller, Familias_view, diff --git a/Source/Modulos/Empresas/Plugin/Empresas_plugin.dpk b/Source/Modulos/Familias/Plugin/Familias_plugin.dpk.bak similarity index 56% rename from Source/Modulos/Empresas/Plugin/Empresas_plugin.dpk rename to Source/Modulos/Familias/Plugin/Familias_plugin.dpk.bak index b3ef334c..14300abe 100644 --- a/Source/Modulos/Empresas/Plugin/Empresas_plugin.dpk +++ b/Source/Modulos/Familias/Plugin/Familias_plugin.dpk.bak @@ -1,4 +1,4 @@ -package Empresas_plugin; +package Familias_plugin; {$R *.res} {$ALIGN 8} @@ -27,29 +27,16 @@ package Empresas_plugin; requires rtl, vcl, - GUISDK_D10, - ccpack10, - designide, - xmlrtl, - vclactnband, - vclx, - cfpack_d10, - JvAppFrmD10R, - vcljpg, - JclVcl, - Jcl, - JvSystemD10R, - JvCoreD10R, - PluginSDK_D10R, PngComponentsD10, PNG_D10, - Usuarios, - Empresas_model, - Empresas_data, - Empresas_controller, - Empresas_view; + vclactnband, + vclx, + Familias_model, + Familias_controller, + Familias_view, + PluginSDK_D10R; contains - uPluginEmpresas in 'uPluginEmpresas.pas' {PluginEmpresas: TDataModule}; + uPluginFamilias in 'uPluginFamilias.pas'; end. diff --git a/Source/Modulos/Familias/Plugin/Familias_plugin.dproj b/Source/Modulos/Familias/Plugin/Familias_plugin.dproj new file mode 100644 index 00000000..4171306c --- /dev/null +++ b/Source/Modulos/Familias/Plugin/Familias_plugin.dproj @@ -0,0 +1,543 @@ + + + {82e36812-58c4-491b-b463-6b951e95da51} + Familias_plugin.dpk + Debug + AnyCPU + DCC32 + ..\..\..\..\Output\Debug\Cliente\Familias_plugin.bpl + + + 7.0 + False + False + 0 + .\ + .\ + .\ + ..\..\..\..\Output\Debug\Cliente + ..\..\Lib + ..\..\..\Lib;..\..\Lib + ..\..\..\Lib;..\..\Lib + ..\..\..\Lib;..\..\Lib + ..\..\..\Lib;..\..\Lib + RELEASE + + + 7.0 + .\ + .\ + .\ + ..\..\..\..\Output\Debug\Cliente + ..\..\Lib + ..\..\..\Lib;..\..\Lib + ..\..\..\Lib;..\..\Lib + ..\..\..\Lib;..\..\Lib + ..\..\..\Lib;..\..\Lib + + + Delphi.Personality + Package + +FalseTrueFalseTrueFalseFalseTrueFalse1000FalseFalseFalseFalseFalse308212521.0.0.01.0.0.0Familias_plugin.dpk + + + + + MainSource + + + + + + + + + + + + + + diff --git a/Source/Modulos/Familias/Plugin/Familias_plugin.rc b/Source/Modulos/Familias/Plugin/Familias_plugin.rc index e69de29b..153736af 100644 --- a/Source/Modulos/Familias/Plugin/Familias_plugin.rc +++ b/Source/Modulos/Familias/Plugin/Familias_plugin.rc @@ -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 diff --git a/Source/Modulos/Familias/Plugin/Familias_plugin.res b/Source/Modulos/Familias/Plugin/Familias_plugin.res index 36f26e23..8b251f31 100644 Binary files a/Source/Modulos/Familias/Plugin/Familias_plugin.res and b/Source/Modulos/Familias/Plugin/Familias_plugin.res differ diff --git a/Source/Modulos/Familias/Servidor/srvFamilias_Impl.dfm b/Source/Modulos/Familias/Servidor/srvFamilias_Impl.dfm index c13e2cf8..80875138 100644 --- a/Source/Modulos/Familias/Servidor/srvFamilias_Impl.dfm +++ b/Source/Modulos/Familias/Servidor/srvFamilias_Impl.dfm @@ -1,18 +1,18 @@ object srvFamilias: TsrvFamilias OldCreateOrder = True OnCreate = DARemoteServiceCreate - RequiresSession = True SessionManager = dmServer.SessionManager - AcquireConnection = True ConnectionName = 'IBX' ServiceSchema = schFamilias - ServiceAdapter = DABINAdapter - OnBeforeAcquireConnection = DARemoteServiceBeforeAcquireConnection + ServiceDataStreamer = Bin2DataStreamer + AllowExecuteSQL = True + ExportedDataTables = <> + BeforeAcquireConnection = DataAbstractServiceBeforeAcquireConnection Height = 249 Width = 343 object Diagrams: TDADiagrams Left = 150 - Top = 74 + Top = 82 DiagramData = ''#13#10''#13#10 end object DataDictionary: TDADataDictionary @@ -20,124 +20,79 @@ object srvFamilias: TsrvFamilias item Name = 'Montajes_ID' DataType = datInteger - BlobType = dabtUnknown Required = True - DisplayWidth = 0 DisplayLabel = 'ID' - Alignment = taLeftJustify end item Name = 'Montajes_ID_EMPRESA' DataType = datInteger - BlobType = dabtUnknown - DisplayWidth = 0 DisplayLabel = 'ID_EMPRESA' - Alignment = taLeftJustify end item Name = 'Montajes_FECHA_ALTA' DataType = datDateTime - BlobType = dabtUnknown - DisplayWidth = 0 DisplayLabel = 'FECHA_ALTA' - Alignment = taLeftJustify end item Name = 'Almacenes_CALLE' DataType = datString Size = 255 - BlobType = dabtUnknown - DisplayWidth = 0 - Alignment = taLeftJustify end item Name = 'Almacenes_PROVINCIA' DataType = datString Size = 255 - BlobType = dabtUnknown - DisplayWidth = 0 - Alignment = taLeftJustify end item Name = 'Almacenes_POBLACION' DataType = datString Size = 255 - BlobType = dabtUnknown - DisplayWidth = 0 - Alignment = taLeftJustify end item Name = 'Almacenes_CODIGO_POSTAL' DataType = datString Size = 10 - BlobType = dabtUnknown - DisplayWidth = 0 - Alignment = taLeftJustify end item Name = 'Almacenes_TELEFONO' DataType = datString Size = 25 - BlobType = dabtUnknown - DisplayWidth = 0 - Alignment = taLeftJustify end item Name = 'Almacenes_MOVIL' DataType = datString Size = 25 - BlobType = dabtUnknown - DisplayWidth = 0 - Alignment = taLeftJustify end item Name = 'Almacenes_FAX' DataType = datString Size = 25 - BlobType = dabtUnknown - DisplayWidth = 0 - Alignment = taLeftJustify end item Name = 'Almacenes_PERSONACONTACTO' DataType = datString Size = 255 - BlobType = dabtUnknown - DisplayWidth = 0 - Alignment = taLeftJustify end item Name = 'Almacenes_OBSERVACIONES' DataType = datMemo - BlobType = dabtUnknown - DisplayWidth = 0 - Alignment = taLeftJustify end item Name = 'Montajes_FECHA_MODIFICACION' DataType = datDateTime - BlobType = dabtUnknown - DisplayWidth = 0 DisplayLabel = 'FECHA_MODIFICACION' - Alignment = taLeftJustify end item Name = 'Montajes_USUARIO' DataType = datString Size = 20 - BlobType = dabtUnknown - DisplayWidth = 0 DisplayLabel = 'USUARIO' - Alignment = taLeftJustify end item Name = 'Montajes_NOMBRE' DataType = datString Size = 255 - BlobType = dabtUnknown - DisplayWidth = 0 DisplayLabel = 'Nombre' - Alignment = taLeftJustify end> Left = 150 Top = 22 @@ -153,8 +108,7 @@ object srvFamilias: TsrvFamilias item Connection = 'IBX' TargetTable = 'FAMILIAS' - SQL = 'SELECT DESCRIPCION'#10#10'FROM FAMILIAS' - StatementType = stSQL + StatementType = stAutoSQL ColumnMappings = < item DatasetField = 'DESCRIPCION' @@ -167,49 +121,40 @@ object srvFamilias: TsrvFamilias Name = 'DESCRIPCION' DataType = datString Size = 255 - BlobType = dabtUnknown - DisplayWidth = 0 - Alignment = taLeftJustify - InPrimaryKey = True - Calculated = False - Lookup = False - LookupCache = False end> - BusinessRulesClient.ScriptLanguage = rslPascalScript - BusinessRulesServer.ScriptLanguage = rslPascalScript end> + JoinDataTables = <> + UnionDataTables = <> Commands = <> RelationShips = <> UpdateRules = < item Name = 'Insert Familias' DoUpdate = False - DoInsert = True DoDelete = False DatasetName = 'Familias' - FailureBehaviour = fbRaiseException + FailureBehavior = fbRaiseException end item Name = 'Update Familias' - DoUpdate = True DoInsert = False DoDelete = False DatasetName = 'Familias' - FailureBehaviour = fbRaiseException + FailureBehavior = fbRaiseException end item Name = 'Delete Familias' DoUpdate = False DoInsert = False - DoDelete = True DatasetName = 'Familias' - FailureBehaviour = fbRaiseException + FailureBehavior = fbRaiseException end> + Version = 0 Left = 48 Top = 24 end - object DABINAdapter: TDABINAdapter + object Bin2DataStreamer: TDABin2DataStreamer Left = 48 - Top = 72 + Top = 80 end end diff --git a/Source/Modulos/Familias/Servidor/srvFamilias_Impl.pas b/Source/Modulos/Familias/Servidor/srvFamilias_Impl.pas index 516a0226..8287643b 100644 --- a/Source/Modulos/Familias/Servidor/srvFamilias_Impl.pas +++ b/Source/Modulos/Familias/Servidor/srvFamilias_Impl.pas @@ -12,21 +12,22 @@ interface uses {vcl:} Classes, SysUtils, {RemObjects:} uROClientIntf, uROTypes, uROServer, uROServerIntf, uROSessions, - {Ancestor Implementation:} DARemoteService_Impl, - {Used RODLs:} DataAbstract_Intf, + {Ancestor Implementation:} DataAbstractService_Impl, + {Used RODLs:} DataAbstract4_Intf, {Generated:} FactuGES_Intf, uDADataTable, uDABINAdapter, uDAClasses, - uDAScriptingProvider, uDABusinessProcessor, uDAInterfaces; + uDAScriptingProvider, uDABusinessProcessor, uDAInterfaces, uDADataStreamer, + uDABin2DataStreamer; type { TsrvFamilias } - TsrvFamilias = class(TDARemoteService, IsrvFamilias) + TsrvFamilias = class(TDataAbstractService, IsrvFamilias) Diagrams: TDADiagrams; - DABINAdapter: TDABINAdapter; + Bin2DataStreamer: TDABin2DataStreamer; schFamilias: TDASchema; DataDictionary: TDADataDictionary; - procedure DARemoteServiceBeforeAcquireConnection(Sender: TDARemoteService; - var ConnectionName: string); procedure DARemoteServiceCreate(Sender: TObject); + procedure DataAbstractServiceBeforeAcquireConnection(aSender: TObject; + var aConnectionName: string); { IsrvFamilias methods } end; @@ -43,17 +44,17 @@ begin end; { srvFamilias } -procedure TsrvFamilias.DARemoteServiceBeforeAcquireConnection( - Sender: TDARemoteService; var ConnectionName: string); -begin - ConnectionName := dmServer.ConnectionName; -end; - procedure TsrvFamilias.DARemoteServiceCreate(Sender: TObject); begin SessionManager := dmServer.SessionManager; end; +procedure TsrvFamilias.DataAbstractServiceBeforeAcquireConnection( + aSender: TObject; var aConnectionName: string); +begin + ConnectionName := dmServer.ConnectionName; +end; + initialization TROClassFactory.Create('srvFamilias', Create_srvFamilias, TsrvFamilias_Invoker); diff --git a/Source/Modulos/Familias/Views/Familias_view.dpk b/Source/Modulos/Familias/Views/Familias_view.dpk index 28a23ff4..11943d04 100644 --- a/Source/Modulos/Familias/Views/Familias_view.dpk +++ b/Source/Modulos/Familias/Views/Familias_view.dpk @@ -22,17 +22,15 @@ package Familias_view; {$WRITEABLECONST OFF} {$MINENUMSIZE 1} {$IMAGEBASE $400000} -{$IMPLICITBUILD OFF} +{$IMPLICITBUILD ON} requires rtl, vcl, - dbrtl, - vcldb, - dsnap, - adortl, + Base, GUIBase, - DataAbstract_D10, + ApplicationBase, + Familias_model, Familias_controller; contains diff --git a/Source/Modulos/Familias/Views/Familias_view.dpk.bak b/Source/Modulos/Familias/Views/Familias_view.dpk.bak new file mode 100644 index 00000000..28a23ff4 --- /dev/null +++ b/Source/Modulos/Familias/Views/Familias_view.dpk.bak @@ -0,0 +1,42 @@ +package Familias_view; + +{$R *.res} +{$ALIGN 8} +{$ASSERTIONS ON} +{$BOOLEVAL OFF} +{$DEBUGINFO ON} +{$EXTENDEDSYNTAX ON} +{$IMPORTEDDATA ON} +{$IOCHECKS ON} +{$LOCALSYMBOLS ON} +{$LONGSTRINGS ON} +{$OPENSTRINGS ON} +{$OPTIMIZATION ON} +{$OVERFLOWCHECKS OFF} +{$RANGECHECKS OFF} +{$REFERENCEINFO ON} +{$SAFEDIVIDE OFF} +{$STACKFRAMES OFF} +{$TYPEDADDRESS OFF} +{$VARSTRINGCHECKS ON} +{$WRITEABLECONST OFF} +{$MINENUMSIZE 1} +{$IMAGEBASE $400000} +{$IMPLICITBUILD OFF} + +requires + rtl, + vcl, + dbrtl, + vcldb, + dsnap, + adortl, + GUIBase, + DataAbstract_D10, + Familias_controller; + +contains + uEditorFamilias in 'uEditorFamilias.pas' {fEditorFamilias: TfEditorFamilias}, + uFamiliasViewRegister in 'uFamiliasViewRegister.pas'; + +end. diff --git a/Source/Modulos/Familias/Views/Familias_view.dproj b/Source/Modulos/Familias/Views/Familias_view.dproj new file mode 100644 index 00000000..f0dd6a45 --- /dev/null +++ b/Source/Modulos/Familias/Views/Familias_view.dproj @@ -0,0 +1,558 @@ + + + {e3d36a6f-7004-4c89-9f3d-f2d77e386d1b} + Familias_view.dpk + Debug + AnyCPU + DCC32 + ..\..\..\..\Output\Debug\Cliente\Familias_view.bpl + + + 7.0 + False + False + 0 + .\ + .\ + .\ + ..\..\..\..\Output\Debug\Cliente + ..\..\Lib + ..\..\..\Lib;..\..\Lib + ..\..\..\Lib;..\..\Lib + ..\..\..\Lib;..\..\Lib + ..\..\..\Lib;..\..\Lib + RELEASE + + + 7.0 + .\ + .\ + .\ + ..\..\..\..\Output\Debug\Cliente + ..\..\Lib + ..\..\..\Lib;..\..\Lib + ..\..\..\Lib;..\..\Lib + ..\..\..\Lib;..\..\Lib + ..\..\..\Lib;..\..\Lib + + + Delphi.Personality + Package + +FalseTrueFalseTrueFalseFalseTrueFalse1000FalseFalseFalseFalseFalse308212521.0.0.01.0.0.0Familias_view.dpk + + + + + MainSource + + + + + + + + + + + + + + + + + + + + + + + +
fEditorFamilias
+
+ +
+
+ diff --git a/Source/Modulos/Familias/Views/Familias_view.rc b/Source/Modulos/Familias/Views/Familias_view.rc index e69de29b..153736af 100644 --- a/Source/Modulos/Familias/Views/Familias_view.rc +++ b/Source/Modulos/Familias/Views/Familias_view.rc @@ -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 diff --git a/Source/Modulos/Familias/Views/Familias_view.res b/Source/Modulos/Familias/Views/Familias_view.res index 36f26e23..8b251f31 100644 Binary files a/Source/Modulos/Familias/Views/Familias_view.res and b/Source/Modulos/Familias/Views/Familias_view.res differ diff --git a/Source/Modulos/Formas de pago/Controller/FormasPago_controller.dpk b/Source/Modulos/Formas de pago/Controller/FormasPago_controller.dpk index 803a3614..745b31c4 100644 --- a/Source/Modulos/Formas de pago/Controller/FormasPago_controller.dpk +++ b/Source/Modulos/Formas de pago/Controller/FormasPago_controller.dpk @@ -22,26 +22,15 @@ package FormasPago_controller; {$WRITEABLECONST OFF} {$MINENUMSIZE 1} {$IMAGEBASE $400000} -{$IMPLICITBUILD OFF} +{$IMPLICITBUILD ON} +{$DEFINE DEBUG} requires rtl, vcl, - dbrtl, - cxLibraryD10, - dxThemeD10, - dsnap, - vcldb, - adortl, - ControllerBase, - dxBarExtItemsD10, - dxComnD10, - dxBarD10, - dxLayoutControlD10, - dxPSCoreD10, - dxPScxCommonD10, - dxPScxGridLnkD10, - dxPsPrVwAdvD10, + Base, + GUIBase, + ApplicationBase, FormasPago_model, FormasPago_data; diff --git a/Source/Modulos/Formas de pago/Controller/FormasPago_controller.dpk.bak b/Source/Modulos/Formas de pago/Controller/FormasPago_controller.dpk.bak new file mode 100644 index 00000000..803a3614 --- /dev/null +++ b/Source/Modulos/Formas de pago/Controller/FormasPago_controller.dpk.bak @@ -0,0 +1,54 @@ +package FormasPago_controller; + +{$R *.res} +{$ALIGN 8} +{$ASSERTIONS ON} +{$BOOLEVAL OFF} +{$DEBUGINFO ON} +{$EXTENDEDSYNTAX ON} +{$IMPORTEDDATA ON} +{$IOCHECKS ON} +{$LOCALSYMBOLS ON} +{$LONGSTRINGS ON} +{$OPENSTRINGS ON} +{$OPTIMIZATION ON} +{$OVERFLOWCHECKS OFF} +{$RANGECHECKS OFF} +{$REFERENCEINFO ON} +{$SAFEDIVIDE OFF} +{$STACKFRAMES OFF} +{$TYPEDADDRESS OFF} +{$VARSTRINGCHECKS ON} +{$WRITEABLECONST OFF} +{$MINENUMSIZE 1} +{$IMAGEBASE $400000} +{$IMPLICITBUILD OFF} + +requires + rtl, + vcl, + dbrtl, + cxLibraryD10, + dxThemeD10, + dsnap, + vcldb, + adortl, + ControllerBase, + dxBarExtItemsD10, + dxComnD10, + dxBarD10, + dxLayoutControlD10, + dxPSCoreD10, + dxPScxCommonD10, + dxPScxGridLnkD10, + dxPsPrVwAdvD10, + FormasPago_model, + FormasPago_data; + +contains + uFormasPagoController in 'uFormasPagoController.pas', + uIEditorFormaPago in 'View\uIEditorFormaPago.pas', + uFormasPagoPlazosController in 'uFormasPagoPlazosController.pas', + uIEditorFormasPago in 'View\uIEditorFormasPago.pas'; + +end. diff --git a/Source/Modulos/Formas de pago/Controller/FormasPago_controller.dproj b/Source/Modulos/Formas de pago/Controller/FormasPago_controller.dproj new file mode 100644 index 00000000..7e7f2bf6 --- /dev/null +++ b/Source/Modulos/Formas de pago/Controller/FormasPago_controller.dproj @@ -0,0 +1,62 @@ + + + {7f80f8aa-6912-4714-986d-aed73035472b} + FormasPago_controller.dpk + Debug + AnyCPU + DCC32 + ..\..\..\..\Output\Debug\Cliente\FormasPago_controller.bpl + + + 7.0 + False + False + 0 + .\ + .\ + .\ + ..\..\..\..\Output\Debug\Cliente + ..\..\Lib + ..\..\..\Lib;..\..\Lib + ..\..\..\Lib;..\..\Lib + ..\..\..\Lib;..\..\Lib + ..\..\..\Lib;..\..\Lib + RELEASE + + + 7.0 + .\ + .\ + .\ + ..\..\..\..\Output\Debug\Cliente + ..\..\Lib + ..\..\..\Lib;..\..\Lib + ..\..\..\Lib;..\..\Lib + ..\..\..\Lib;..\..\Lib + ..\..\..\Lib;..\..\Lib + DEBUG + + + Delphi.Personality + Package + +FalseTrueFalseTrueFalseFalseTrueFalse1000FalseFalseFalseFalseFalse308212521.0.0.01.0.0.0FormasPago_controller.dpk + + + + + MainSource + + + + + + + + + + + + + + diff --git a/Source/Modulos/Formas de pago/Controller/FormasPago_controller.identcache b/Source/Modulos/Formas de pago/Controller/FormasPago_controller.identcache new file mode 100644 index 00000000..e5f013b9 Binary files /dev/null and b/Source/Modulos/Formas de pago/Controller/FormasPago_controller.identcache differ diff --git a/Source/Modulos/Formas de pago/Controller/FormasPago_controller.rc b/Source/Modulos/Formas de pago/Controller/FormasPago_controller.rc index e69de29b..153736af 100644 --- a/Source/Modulos/Formas de pago/Controller/FormasPago_controller.rc +++ b/Source/Modulos/Formas de pago/Controller/FormasPago_controller.rc @@ -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 diff --git a/Source/Modulos/Formas de pago/Controller/FormasPago_controller.res b/Source/Modulos/Formas de pago/Controller/FormasPago_controller.res index 36f26e23..8b251f31 100644 Binary files a/Source/Modulos/Formas de pago/Controller/FormasPago_controller.res and b/Source/Modulos/Formas de pago/Controller/FormasPago_controller.res differ diff --git a/Source/Modulos/Formas de pago/Controller/uFormasPagoController.pas b/Source/Modulos/Formas de pago/Controller/uFormasPagoController.pas index 804915c6..dff77db5 100644 --- a/Source/Modulos/Formas de pago/Controller/uFormasPagoController.pas +++ b/Source/Modulos/Formas de pago/Controller/uFormasPagoController.pas @@ -32,7 +32,6 @@ type function ValidarFormaPago(AFormaPago: IBizFormaPago): Boolean; procedure AsignarDataModule; - procedure AsignarID(AFormaPago: IBizFormaPago; const IDNuevo: Integer); public constructor Create; virtual; @@ -70,37 +69,16 @@ begin FDataModule := TDataModuleFormasPago.Create(Nil); end; -procedure TFormasPagoController.AsignarID(AFormaPago: IBizFormaPago; - const IDNuevo: Integer); -begin - if not Assigned(AFormaPago) then - raise Exception.Create ('Forma de pago no asignada'); - - { Los plazos hay que comprobarlos siempre - tanto en inserción como en modificación. } - if Assigned(AFormaPago.Plazos) then - FPlazosController.AsignarID(AFormaPago.Plazos, IDNuevo, AFormaPago.EsNuevo); - - if AFormaPago.EsNuevo then - begin - AFormaPago.Edit; - AFormaPago.ID := IDNuevo; - AFormaPago.Post; - end; -end; - function TFormasPagoController.Buscar(ID: Integer): IBizFormaPago; begin ShowHourglassCursor; try Result := BuscarTodos; - with Result.DataTable.Where do + with Result.DataTable.DynamicWhere do begin - if NotEmpty then - AddOperator(opAND); - OpenBraket; - AddText(fld_FormasPagoID + ' = ' + IntToStr(ID)); - CloseBraket; + // (ID = :ID) + Expression := NewBinaryExpression(NewField('', fld_FormasPagoID), + NewConstant(ID, datInteger), dboEqual); end; finally HideHourglassCursor; @@ -184,11 +162,6 @@ begin if Length(AFormaPago.DESCRIPCION) = 0 then raise Exception.Create('Debe indicar una descripción para esta forma de pago.'); - if not Assigned(AFormaPago.Plazos) - or (AFormaPago.Plazos.RecordCount = 0) then - if (ShowConfirmMessage('¿La forma de pago no tiene plazos establecidos, por lo tanto no se generarán recibos para facturas con esta forma de pago, ¿desea continuar?', '') = IDNO) then - Exit; - Result := True; end; @@ -266,8 +239,6 @@ begin end; function TFormasPagoController.Guardar(AFormaPago: IBizFormaPago): Boolean; -var - NuevoID : Integer; begin Result := False; @@ -275,14 +246,7 @@ begin begin ShowHourglassCursor; try - if AFormaPago.EsNuevo then - NuevoID := FDataModule.GetNextID(AFormaPago.DataTable.LogicalName) - else - NuevoID := AFormaPago.ID; - - AsignarID(AFormaPago, NuevoID); AFormaPago.DataTable.ApplyUpdates; - Result := True; finally HideHourglassCursor; diff --git a/Source/Modulos/Formas de pago/Controller/uFormasPagoPlazosController.pas b/Source/Modulos/Formas de pago/Controller/uFormasPagoPlazosController.pas index ddcb9c64..d0991d08 100644 --- a/Source/Modulos/Formas de pago/Controller/uFormasPagoPlazosController.pas +++ b/Source/Modulos/Formas de pago/Controller/uFormasPagoPlazosController.pas @@ -9,14 +9,12 @@ uses type IFormasPagoPlazosController = interface ['{3FCE2A31-9783-45F9-96D6-1157165AB8DB}'] - procedure AsignarID(ADetalles: IBizFormaPagoPlazos; IDCabecera: Integer; AEsNuevo:Boolean); end; TFormasPagoPlazosController = class(TInterfacedObject, IFormasPagoPlazosController) private FDataModule : IDataModuleFormasPago; public - procedure AsignarID(ADetalles: IBizFormaPagoPlazos; IDCabecera: Integer; AEsNuevo:Boolean); constructor Create; virtual; destructor Destroy; override; end; @@ -29,75 +27,6 @@ uses uDataModuleFormasPago, uEditorRegistryUtils, cxControls, schFormasPagoClient_Intf; -procedure TFormasPagoPlazosController.AsignarID( - ADetalles: IBizFormaPagoPlazos; IDCabecera: Integer; - AEsNuevo: Boolean); -begin - with ADetalles do - begin - DataTable.DisableControls; - try - if not DataTable.Active then - DataTable.Active := True; - -// AuxPosicion := POSICION; - - { ¡¡¡¡ OJO !!!! - Para asignar el ID en los detalles hay - que tener en cuenta una cosa: - Si se cambia el ID, ese detalle ya no - pertenece a esa cabecera porque ya no se - cumple la condición de la relacion: - Master.ID = Detail.ID_PRESUPUESTO. - - Por esa razón no sirve hacer un recorrido - desde el principio hasta el final porque - las detalles van desapareciendo según asignamos - el valor al campo ID y nos mueve aleatoriamente - la posición del registro actual. - - Es mejor hacer un bucle sencillo hasta que - "se gasten" todos los detalles. Cuando el - RecordCount llegue a 0 quiere decir que hemos - tratado todos los detalles. - - El bucle cambia en el caso de ser llamada esta funcion desde modificar - un presupuesto ya que en ese caso si que hay que hacer un recorrido - total de las tuplas de detalle. - } - - if AEsNuevo then - begin - while RecordCount > 0 do - begin - DataTable.First; - Edit; - ID := FDataModule.GetNextID(DataTable.LogicalName); - ID_FORMA_PAGO := IDCabecera; - Post - end - end - else - begin - DataTable.First; - while not DataTable.EOF do - begin - if ADetalles.EsNuevo then - begin - Edit; - ID := FDataModule.GetNextID(DataTable.LogicalName); - ID_FORMA_PAGO := IDCabecera; - Post - end; - DataTable.Next - end; - end; - finally - DataTable.EnableControls; - end; - end; -end; - constructor TFormasPagoPlazosController.Create; begin inherited; diff --git a/Source/Modulos/Formas de pago/Data/FormasPago_data.dpk b/Source/Modulos/Formas de pago/Data/FormasPago_data.dpk index 81db00df..4d459fe9 100644 --- a/Source/Modulos/Formas de pago/Data/FormasPago_data.dpk +++ b/Source/Modulos/Formas de pago/Data/FormasPago_data.dpk @@ -22,18 +22,15 @@ package FormasPago_data; {$WRITEABLECONST OFF} {$MINENUMSIZE 1} {$IMAGEBASE $400000} -{$IMPLICITBUILD OFF} +{$IMPLICITBUILD ON} +{$DEFINE DEBUG} requires rtl, - dbrtl, - cxLibraryD10, - dxThemeD10, vcl, - dsnap, - vcldb, - adortl, Base, + GUIBase, + ApplicationBase, FormasPago_model; contains diff --git a/Source/Modulos/Empresas/Data/Empresas_data.dpk b/Source/Modulos/Formas de pago/Data/FormasPago_data.dpk.bak similarity index 59% rename from Source/Modulos/Empresas/Data/Empresas_data.dpk rename to Source/Modulos/Formas de pago/Data/FormasPago_data.dpk.bak index c4ff6683..81db00df 100644 --- a/Source/Modulos/Empresas/Data/Empresas_data.dpk +++ b/Source/Modulos/Formas de pago/Data/FormasPago_data.dpk.bak @@ -1,4 +1,4 @@ -package Empresas_data; +package FormasPago_data; {$R *.res} {$ALIGN 8} @@ -22,30 +22,21 @@ package Empresas_data; {$WRITEABLECONST OFF} {$MINENUMSIZE 1} {$IMAGEBASE $400000} -{$DESCRIPTION 'Empresas'} {$IMPLICITBUILD OFF} -{%TogetherDiagram 'ModelSupport_Empresas_data\default.txaPackage'} requires rtl, - vcl, dbrtl, - dsnap, - vcldb, - DataAbstract_D10, - adortl, - vcljpg, cxLibraryD10, dxThemeD10, - cxEditorsD10, - cxDataD10, - cxExtEditorsD10, - cxGridD10, - cxPageControlD10, + vcl, + dsnap, + vcldb, + adortl, Base, - Empresas_model; + FormasPago_model; contains - uDataModuleEmpresas in 'uDataModuleEmpresas.pas' {DataModuleEmpresas}; + uDataModuleFormasPago in 'uDataModuleFormasPago.pas' {DataModuleFormasPago}; end. diff --git a/Source/Modulos/Formas de pago/Data/FormasPago_data.dproj b/Source/Modulos/Formas de pago/Data/FormasPago_data.dproj new file mode 100644 index 00000000..b8f727d1 --- /dev/null +++ b/Source/Modulos/Formas de pago/Data/FormasPago_data.dproj @@ -0,0 +1,60 @@ + + + {c8118762-09b6-432f-ba26-058fa36c39d9} + FormasPago_data.dpk + Debug + AnyCPU + DCC32 + ..\..\..\..\Output\Debug\Cliente\FormasPago_data.bpl + + + 7.0 + False + False + 0 + .\ + .\ + .\ + ..\..\..\..\Output\Debug\Cliente + ..\..\Lib + ..\..\..\Lib;..\..\Lib + ..\..\..\Lib;..\..\Lib + ..\..\..\Lib;..\..\Lib + ..\..\..\Lib;..\..\Lib + RELEASE + + + 7.0 + .\ + .\ + .\ + ..\..\..\..\Output\Debug\Cliente + ..\..\Lib + ..\..\..\Lib;..\..\Lib + ..\..\..\Lib;..\..\Lib + ..\..\..\Lib;..\..\Lib + ..\..\..\Lib;..\..\Lib + DEBUG + + + Delphi.Personality + Package + +FalseTrueFalseTrueFalseFalseTrueFalse1000FalseFalseFalseFalseFalse308212521.0.0.01.0.0.0FormasPago_data.dpk + + + + + MainSource + + + + + + + + +
DataModuleFormasPago
+
+
+
diff --git a/Source/Modulos/Formas de pago/Data/FormasPago_data.identcache b/Source/Modulos/Formas de pago/Data/FormasPago_data.identcache new file mode 100644 index 00000000..641e3d11 Binary files /dev/null and b/Source/Modulos/Formas de pago/Data/FormasPago_data.identcache differ diff --git a/Source/Modulos/Formas de pago/Data/FormasPago_data.rc b/Source/Modulos/Formas de pago/Data/FormasPago_data.rc index e69de29b..153736af 100644 --- a/Source/Modulos/Formas de pago/Data/FormasPago_data.rc +++ b/Source/Modulos/Formas de pago/Data/FormasPago_data.rc @@ -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 diff --git a/Source/Modulos/Formas de pago/Data/FormasPago_data.res b/Source/Modulos/Formas de pago/Data/FormasPago_data.res index 36f26e23..8b251f31 100644 Binary files a/Source/Modulos/Formas de pago/Data/FormasPago_data.res and b/Source/Modulos/Formas de pago/Data/FormasPago_data.res differ diff --git a/Source/Modulos/Formas de pago/Data/uDataModuleFormasPago.dfm b/Source/Modulos/Formas de pago/Data/uDataModuleFormasPago.dfm index 8789e8bf..1ebc2a36 100644 --- a/Source/Modulos/Formas de pago/Data/uDataModuleFormasPago.dfm +++ b/Source/Modulos/Formas de pago/Data/uDataModuleFormasPago.dfm @@ -1,445 +1,154 @@ object DataModuleFormasPago: TDataModuleFormasPago OldCreateOrder = True OnCreate = DAClientDataModuleCreate - RemoteService = RORemoteService - Adapter = DABinAdapter - SchemaCall.MethodName = 'GetSchemaAsXML' - SchemaCall.Params = < - item - Name = 'Result' - ParamType = fResult - DataType = rtString - end> - Height = 414 - Width = 518 + Height = 251 + Width = 445 object RORemoteService: TRORemoteService + Message = dmConexion.ROMessage + Channel = dmConexion.ROChannel ServiceName = 'srvFormasPago' - Message = ROBinMessage1 - Channel = ROWinInetHTTPChannel1 Left = 48 Top = 24 end - object DABinAdapter: TDABINAdapter + object Bin2DataStreamer: TDABin2DataStreamer Left = 48 - Top = 80 + Top = 104 end - object DADesigntimeCall1: TDADesigntimeCall - RemoteRequest.MethodName = 'Login' - RemoteRequest.Params = < - item - Name = 'Result' - ParamType = fResult - DataType = rtBoolean - end - item - Name = 'User' - ParamType = fIn - DataType = rtString - Value = 'Administrador' - end - item - Name = 'Password' - ParamType = fIn - DataType = rtString - Value = '1' - end - item - Name = 'LoginInfo' - ParamType = fOut - DataType = rtUserDefined - UserClassName = 'TRdxLoginInfo' - end> - RemoteService = LoginRemoteService - Left = 48 - Top = 160 + object rda_FormasPago: TDARemoteDataAdapter + GetSchemaCall.RemoteService = RORemoteService + GetDataCall.RemoteService = RORemoteService + UpdateDataCall.RemoteService = RORemoteService + GetScriptsCall.RemoteService = RORemoteService + RemoteService = RORemoteService + DataStreamer = Bin2DataStreamer + Left = 208 + Top = 24 end - object LoginRemoteService: TRORemoteService - ServiceName = 'srvLogin' - Message = ROBinMessage1 - Channel = ROWinInetHTTPChannel1 - Left = 48 - Top = 216 - end - object ROWinInetHTTPChannel1: TROWinInetHTTPChannel - ServerLocators = <> - DispatchOptions = [] - ProbeServers = False - ProbeFrequency = 60000 - UserAgent = 'RemObjects SDK' - TargetURL = 'http://localhost:8099/bin' - Left = 48 - Top = 272 - end - object ROBinMessage1: TROBinMessage - Left = 48 - Top = 324 - end - object tbl_FormasPago: TDACDSDataTable + object tbl_FormasPago: TDAMemDataTable RemoteUpdatesOptions = [] Fields = < item Name = 'ID' - DataType = datInteger - BlobType = dabtUnknown - DisplayWidth = 0 - Alignment = taLeftJustify + DataType = datAutoInc + GeneratorName = 'GEN_FORMAS_PAGO_ID' + Required = True + ServerAutoRefresh = True DictionaryEntry = 'FormasPago_ID' InPrimaryKey = True - Calculated = False - Lookup = False - LookupCache = False end item Name = 'REFERENCIA' DataType = datString Size = 255 - BlobType = dabtUnknown - DisplayWidth = 0 DisplayLabel = 'Referencia' - Alignment = taLeftJustify DictionaryEntry = 'FormasPago_REFERENCIA' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False end item Name = 'DESCRIPCION' DataType = datString Size = 255 - BlobType = dabtUnknown - DisplayWidth = 0 DisplayLabel = 'Descripci'#243'n' - Alignment = taLeftJustify DictionaryEntry = 'FormasPago_DESCRIPCION' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False end item Name = 'TITULAR' DataType = datString Size = 255 - BlobType = dabtUnknown - DisplayWidth = 0 DisplayLabel = 'Titular' - Alignment = taLeftJustify DictionaryEntry = 'FormasPago_TITULAR' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False end item Name = 'ENTIDAD' DataType = datString Size = 15 - BlobType = dabtUnknown - DisplayWidth = 0 DisplayLabel = 'C'#243'd. Entidad' - Alignment = taLeftJustify DictionaryEntry = 'FormasPago_ENTIDAD' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False end item Name = 'SUCURSAL' DataType = datString Size = 15 - BlobType = dabtUnknown - DisplayWidth = 0 DisplayLabel = 'C'#243'd. Sucusal' - Alignment = taLeftJustify DictionaryEntry = 'FormasPago_SUCURSAL' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False end item Name = 'DC' DataType = datString Size = 15 - BlobType = dabtUnknown - DisplayWidth = 0 - Alignment = taLeftJustify DictionaryEntry = 'FormasPago_DC' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False end item Name = 'CUENTA' DataType = datString Size = 15 - BlobType = dabtUnknown - DisplayWidth = 0 DisplayLabel = 'C'#243'd. Cuenta' - Alignment = taLeftJustify DictionaryEntry = 'FormasPago_CUENTA' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False end> Params = <> - MasterMappingMode = mmDataRequest StreamingOptions = [soDisableEventsWhileStreaming] - SchemaCall.MethodName = 'GetDatasetSchema' - SchemaCall.Params = < - item - Name = 'Result' - ParamType = fResult - DataType = rtBinary - end - item - Name = 'aDatasetName' - ParamType = fIn - DataType = rtString - Value = 'FormasPago' - end> - DataRequestCall.MethodName = 'GetDatasetDataEx' - DataRequestCall.Params = < - item - Name = 'Result' - ParamType = fResult - DataType = rtBinary - end - item - Name = 'DatasetName' - ParamType = fIn - DataType = rtString - Value = 'FormasPago' - end - item - Name = 'Params' - ParamType = fIn - DataType = rtUserDefined - UserClassName = 'TDADatasetParamArray' - end - item - Name = 'UserFilter' - ParamType = fIn - DataType = rtString - Value = '' - end - item - Name = 'IncludeSchema' - ParamType = fIn - DataType = rtBoolean - Value = False - end - item - Name = 'MaxRecords' - ParamType = fIn - DataType = rtInteger - Value = -1 - end> - DataUpdateCall.MethodName = 'UpdateData' - DataUpdateCall.Params = < - item - Name = 'Result' - ParamType = fResult - DataType = rtBinary - end - item - Name = 'Delta' - ParamType = fIn - DataType = rtBinary - end> - ScriptCall.MethodName = 'GetDatasetScripts' - ScriptCall.Params = < - item - Name = 'Result' - ParamType = fResult - DataType = rtString - Value = '' - end - item - Name = 'DatasetNames' - ParamType = fIn - DataType = rtString - Value = 'FormasPago' - end> - ReadOnly = False - RemoteService = RORemoteService - Adapter = DABinAdapter + RemoteDataAdapter = rda_FormasPago DetailOptions = [dtCascadeOpenClose, dtCascadeApplyUpdates, dtAutoFetch, dtCascadeDelete, dtCascadeUpdate, dtDisableLogOfCascadeDeletes, dtDisableLogOfCascadeUpdates, dtIncludeInAllInOneFetch] MasterOptions = [moCascadeOpenClose, moCascadeApplyUpdates, moCascadeDelete, moCascadeUpdate, moDisableLogOfCascadeDeletes, moDisableLogOfCascadeUpdates] LogicalName = 'FormasPago' - IndexDefs = <> - Left = 168 - Top = 88 + Left = 208 + Top = 104 end object ds_FormasPago: TDADataSource + DataSet = tbl_FormasPago.Dataset DataTable = tbl_FormasPago - Left = 168 - Top = 24 + Left = 208 + Top = 176 end - object tbl_FormasPagoPlazos: TDACDSDataTable + object tbl_FormasPagoPlazos: TDAMemDataTable RemoteUpdatesOptions = [] Fields = < item Name = 'ID' - DataType = datInteger - BlobType = dabtUnknown - DisplayWidth = 0 + DataType = datAutoInc + GeneratorName = 'GEN_FORMAS_PAGO_PLAZOS_ID' + Required = True DisplayLabel = 'FormasPagoPlazos_ID' - Alignment = taLeftJustify + ServerAutoRefresh = True DictionaryEntry = 'FormasPagoPlazos_ID' InPrimaryKey = True - Calculated = False - Lookup = False - LookupCache = False end item Name = 'ID_FORMA_PAGO' DataType = datInteger - BlobType = dabtUnknown - DisplayWidth = 0 + Required = True DisplayLabel = 'FormasPagoPlazos_ID_FORMA_PAGO' - Alignment = taLeftJustify DictionaryEntry = 'FormasPagoPlazos_ID_FORMA_PAGO' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False end item Name = 'NUM_DIAS' - DataType = datInteger - BlobType = dabtUnknown - DisplayWidth = 0 + DataType = datSmallInt DisplayLabel = 'Num. d'#237'as' - Alignment = taLeftJustify DictionaryEntry = 'FormasPagoPlazos_NUM_DIAS' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False end item Name = 'PORCENTAJE' DataType = datFloat - BlobType = dabtUnknown - DisplayWidth = 0 DisplayLabel = '% aplazado' - DisplayFormat = ',0.00 %;-,0.00 %' Alignment = taRightJustify DictionaryEntry = 'FormasPagoPlazos_PORCENTAJE' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False end> - Params = < - item - Name = 'ID_FORMA_PAGO' - DataType = datInteger - BlobType = dabtUnknown - Value = '' - ParamType = daptInput - end> - MasterMappingMode = mmParams - MasterParamsMappings.Strings = ( - 'ID_FORMA_PAGO=ID') + Params = <> + MasterMappingMode = mmWhere StreamingOptions = [soDisableEventsWhileStreaming] - SchemaCall.MethodName = 'GetDatasetSchema' - SchemaCall.Params = < - item - Name = 'Result' - ParamType = fResult - DataType = rtBinary - end - item - Name = 'aDatasetName' - ParamType = fIn - DataType = rtString - Value = 'FormasPagoPlazos' - end> - DataRequestCall.MethodName = 'GetDatasetDataEx' - DataRequestCall.Params = < - item - Name = 'Result' - ParamType = fResult - DataType = rtBinary - end - item - Name = 'DatasetName' - ParamType = fIn - DataType = rtString - Value = 'FormasPagoPlazos' - end - item - Name = 'Params' - ParamType = fIn - DataType = rtUserDefined - UserClassName = 'TDADatasetParamArray' - end - item - Name = 'UserFilter' - ParamType = fIn - DataType = rtString - Value = '' - end - item - Name = 'IncludeSchema' - ParamType = fIn - DataType = rtBoolean - Value = False - end - item - Name = 'MaxRecords' - ParamType = fIn - DataType = rtInteger - Value = -1 - end> - DataUpdateCall.MethodName = 'UpdateData' - DataUpdateCall.Params = < - item - Name = 'Result' - ParamType = fResult - DataType = rtBinary - end - item - Name = 'Delta' - ParamType = fIn - DataType = rtBinary - end> - ScriptCall.MethodName = 'GetDatasetScripts' - ScriptCall.Params = < - item - Name = 'Result' - ParamType = fResult - DataType = rtString - Value = '' - end - item - Name = 'DatasetNames' - ParamType = fIn - DataType = rtString - Value = 'FormasPagoPlazos' - end> - ReadOnly = False - RemoteService = RORemoteService - Adapter = DABinAdapter + RemoteDataAdapter = rda_FormasPago MasterSource = ds_FormasPago MasterFields = 'ID' DetailFields = 'ID_FORMA_PAGO' DetailOptions = [dtCascadeOpenClose, dtCascadeApplyUpdates, dtAutoFetch, dtCascadeDelete, dtCascadeUpdate, dtDisableLogOfCascadeDeletes, dtDisableLogOfCascadeUpdates, dtIncludeInAllInOneFetch] MasterOptions = [moCascadeOpenClose, moCascadeApplyUpdates, moCascadeDelete, moCascadeUpdate, moDisableLogOfCascadeDeletes, moDisableLogOfCascadeUpdates] LogicalName = 'FormasPagoPlazos' - IndexDefs = <> - Left = 280 - Top = 88 + Left = 344 + Top = 104 end object ds_FormasPagoPlazos: TDADataSource + DataSet = tbl_FormasPagoPlazos.Dataset DataTable = tbl_FormasPagoPlazos - Left = 280 - Top = 24 + Left = 344 + Top = 176 end end diff --git a/Source/Modulos/Formas de pago/Data/uDataModuleFormasPago.pas b/Source/Modulos/Formas de pago/Data/uDataModuleFormasPago.pas index aeefdece..a9fc29b6 100644 --- a/Source/Modulos/Formas de pago/Data/uDataModuleFormasPago.pas +++ b/Source/Modulos/Formas de pago/Data/uDataModuleFormasPago.pas @@ -3,32 +3,28 @@ unit uDataModuleFormasPago; interface uses - SysUtils, Classes, DB, uDAClientDataModule, uDADataTable, uDABINAdapter, + SysUtils, Classes, DB, uDADataTable, uDABINAdapter, uDAScriptingProvider, uDACDSDataTable, uROWinInetHttpChannel, uROTypes, - uROServiceComponent, uRORemoteService, uROClient, uROBinMessage, + uRORemoteService, uROClient, uROBinMessage, uDADesigntimeCall, - uIDataModuleFormasPago, uBizFormasPago, uBizFormasPagoPlazos; + uIDataModuleFormasPago, uBizFormasPago, uBizFormasPagoPlazos, + uDARemoteDataAdapter, uDADataStreamer, uDAInterfaces, uRODynamicRequest, + uDABin2DataStreamer, uDAMemDataTable; type - TDataModuleFormasPago = class(TDAClientDataModule, IDataModuleFormasPago) + TDataModuleFormasPago = class(TDataModule, IDataModuleFormasPago) RORemoteService: TRORemoteService; - DABinAdapter: TDABINAdapter; - DADesigntimeCall1: TDADesigntimeCall; - LoginRemoteService: TRORemoteService; - ROWinInetHTTPChannel1: TROWinInetHTTPChannel; - ROBinMessage1: TROBinMessage; - tbl_FormasPago: TDACDSDataTable; + Bin2DataStreamer: TDABin2DataStreamer; + rda_FormasPago: TDARemoteDataAdapter; + tbl_FormasPago: TDAMemDataTable; ds_FormasPago: TDADataSource; - tbl_FormasPagoPlazos: TDACDSDataTable; + tbl_FormasPagoPlazos: TDAMemDataTable; ds_FormasPagoPlazos: TDADataSource; procedure DAClientDataModuleCreate(Sender: TObject); protected - function DarNombreGenerador(DataSetName: String): String; virtual; - function _CloneDataTable (const ADataTable : TDACDSDataTable): TDACDSDataTable; overload; function _GetPlazos: IBizFormaPagoPlazos; public function GetItems: IBizFormaPago; - function GetNextID(const DataSetName : String) : Integer; end; implementation @@ -36,7 +32,7 @@ implementation {$R *.DFM} uses - FactuGES_Intf, uDataModuleConexion, uDataTableUtils, cxControls, uDAInterfaces, + FactuGES_Intf, uDataModuleConexion, uDataTableUtils, cxControls, schFormasPagoClient_Intf; { TdmAlmacens } @@ -47,42 +43,13 @@ begin RORemoteService.Message := dmConexion.Message; end; -function TDataModuleFormasPago.DarNombreGenerador(DataSetName: String): String; -begin - Result := ''; - if DataSetName = nme_FormasPago then - Result := 'GEN_FORMAS_PAGO_ID' - else - if DataSetName = nme_FormasPagoPlazos then - Result := 'GEN_FORMAS_PAGO_PLAZOS_ID'; -end; - -function TDataModuleFormasPago.GetNextID(const DataSetName: String): Integer; -var - aGeneratorName : String; -begin - aGeneratorName := DarNombreGenerador(DataSetName); - Result := (RORemoteService as IsrvFormasPago).GetNextAutoInc(aGeneratorName) -end; - -function TDataModuleFormasPago._CloneDataTable(const ADataTable : TDACDSDataTable): TDACDSDataTable; -begin - Result := NIL; - - if not Assigned(ADataTable) then - raise Exception.Create ('No se ha asignado la tabla de origen (CloneDataTable)'); - - Result := TDACDSDataTable.Create(NIL); - CloneDataTable(ADataTable, Result); -end; - function TDataModuleFormasPago._GetPlazos: IBizFormaPagoPlazos; var - APlazos : TDACDSDataTable; + APlazos : TDAMemDataTable; begin ShowHourglassCursor; try - APlazos := _CloneDataTable(tbl_FormasPagoPlazos); + APlazos := CloneDataTable(tbl_FormasPagoPlazos); with APlazos do begin BusinessRulesID := BIZ_CLIENT_FORMAPAGOPLAZOS; @@ -97,11 +64,11 @@ end; function TDataModuleFormasPago.GetItems: IBizFormaPago; var - AFormaPago : TDACDSDataTable; + AFormaPago : TDAMemDataTable; begin ShowHourglassCursor; try - AFormaPago := _CloneDataTable(tbl_FormasPago); + AFormaPago := CloneDataTable(tbl_FormasPago); AFormaPago.BusinessRulesID := BIZ_CLIENT_FORMAPAGO; with TBizFormaPago(AFormaPago.BusinessEventsObj) do Plazos := _GetPlazos; diff --git a/Source/Modulos/Formas de pago/FormasPago_Group.groupproj b/Source/Modulos/Formas de pago/FormasPago_Group.groupproj new file mode 100644 index 00000000..b9e97bcd --- /dev/null +++ b/Source/Modulos/Formas de pago/FormasPago_Group.groupproj @@ -0,0 +1,104 @@ + + + {3df776bd-a3f8-4f3a-9129-45fdb4a2ee63} + + + + + + + + + + + + + + Default.Personality + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/Source/Modulos/Formas de pago/Model/Data/uIDataModuleFormasPago.pas b/Source/Modulos/Formas de pago/Model/Data/uIDataModuleFormasPago.pas index 3e2ce2ce..c27c4c8e 100644 --- a/Source/Modulos/Formas de pago/Model/Data/uIDataModuleFormasPago.pas +++ b/Source/Modulos/Formas de pago/Model/Data/uIDataModuleFormasPago.pas @@ -9,7 +9,6 @@ type IDataModuleFormasPago = interface ['{CC6A63E1-2AF2-40E5-B6DC-46CC1549AA56}'] function GetItems: IBizFormaPago; - function GetNextID(const DataSetName : String) : Integer; end; implementation diff --git a/Source/Modulos/Formas de pago/Model/FormasPago_model.dpk b/Source/Modulos/Formas de pago/Model/FormasPago_model.dpk index 31b37667..8840d437 100644 --- a/Source/Modulos/Formas de pago/Model/FormasPago_model.dpk +++ b/Source/Modulos/Formas de pago/Model/FormasPago_model.dpk @@ -22,23 +22,20 @@ package FormasPago_model; {$WRITEABLECONST OFF} {$MINENUMSIZE 1} {$IMAGEBASE $400000} -{$IMPLICITBUILD OFF} +{$IMPLICITBUILD ON} requires rtl, - dsnap, - dbrtl, - vcldb, vcl, - adortl, Base, - DataAbstract_D10; + GUIBase, + ApplicationBase; contains uIDataModuleFormasPago in 'Data\uIDataModuleFormasPago.pas', - schFormasPagoClient_Intf in 'schFormasPagoClient_Intf.pas', - schFormasPagoServer_Intf in 'schFormasPagoServer_Intf.pas', uBizFormasPago in 'uBizFormasPago.pas', - uBizFormasPagoPlazos in 'uBizFormasPagoPlazos.pas'; + uBizFormasPagoPlazos in 'uBizFormasPagoPlazos.pas', + schFormasPagoClient_Intf in 'schFormasPagoClient_Intf.pas', + schFormasPagoServer_Intf in 'schFormasPagoServer_Intf.pas'; end. diff --git a/Source/Modulos/Formas de pago/Model/FormasPago_model.dpk.bak b/Source/Modulos/Formas de pago/Model/FormasPago_model.dpk.bak new file mode 100644 index 00000000..09cb535d --- /dev/null +++ b/Source/Modulos/Formas de pago/Model/FormasPago_model.dpk.bak @@ -0,0 +1,43 @@ +package FormasPago_model; + +{$R *.res} +{$ALIGN 8} +{$ASSERTIONS ON} +{$BOOLEVAL OFF} +{$DEBUGINFO ON} +{$EXTENDEDSYNTAX ON} +{$IMPORTEDDATA ON} +{$IOCHECKS ON} +{$LOCALSYMBOLS ON} +{$LONGSTRINGS ON} +{$OPENSTRINGS ON} +{$OPTIMIZATION ON} +{$OVERFLOWCHECKS OFF} +{$RANGECHECKS OFF} +{$REFERENCEINFO ON} +{$SAFEDIVIDE OFF} +{$STACKFRAMES OFF} +{$TYPEDADDRESS OFF} +{$VARSTRINGCHECKS ON} +{$WRITEABLECONST OFF} +{$MINENUMSIZE 1} +{$IMAGEBASE $400000} +{$IMPLICITBUILD OFF} + +requires + rtl, + dsnap, + dbrtl, + vcldb, + vcl, + adortl, + Base; + +contains + uIDataModuleFormasPago in 'Data\uIDataModuleFormasPago.pas', + uBizFormasPago in 'uBizFormasPago.pas', + uBizFormasPagoPlazos in 'uBizFormasPagoPlazos.pas', + schFormasPagoClient_Intf in 'schFormasPagoClient_Intf.pas', + schFormasPagoServer_Intf in 'schFormasPagoServer_Intf.pas'; + +end. diff --git a/Source/Modulos/Formas de pago/Model/FormasPago_model.dproj b/Source/Modulos/Formas de pago/Model/FormasPago_model.dproj new file mode 100644 index 00000000..894619ec --- /dev/null +++ b/Source/Modulos/Formas de pago/Model/FormasPago_model.dproj @@ -0,0 +1,539 @@ + + + + {73acd39c-b2f0-49b7-9acf-10945bbac8c1} + FormasPago_model.dpk + Debug + AnyCPU + DCC32 + ..\..\..\..\Output\Debug\Cliente\FormasPago_model.bpl + + + 7.0 + False + False + 0 + .\ + .\ + .\ + ..\..\..\..\Output\Debug\Cliente + ..\..\Lib + ..\..\..\Lib;..\..\Lib + ..\..\..\Lib;..\..\Lib + ..\..\..\Lib;..\..\Lib + ..\..\..\Lib;..\..\Lib + RELEASE + + + 7.0 + .\ + .\ + .\ + ..\..\..\..\Output\Debug\Cliente + ..\..\Lib + ..\..\..\Lib;..\..\Lib + ..\..\..\Lib;..\..\Lib + ..\..\..\Lib;..\..\Lib + ..\..\..\Lib;..\..\Lib + + + Delphi.Personality + Package + +FalseTrueFalseTrueFalseFalseTrueFalse1000FalseFalseFalseFalseFalse308212521.0.0.01.0.0.0FormasPago_model.dpk + + + + + MainSource + + + + + + + + + diff --git a/Source/Modulos/Formas de pago/Model/FormasPago_model.identcache b/Source/Modulos/Formas de pago/Model/FormasPago_model.identcache new file mode 100644 index 00000000..0bfe92fc Binary files /dev/null and b/Source/Modulos/Formas de pago/Model/FormasPago_model.identcache differ diff --git a/Source/Modulos/Formas de pago/Model/FormasPago_model.rc b/Source/Modulos/Formas de pago/Model/FormasPago_model.rc index e69de29b..153736af 100644 --- a/Source/Modulos/Formas de pago/Model/FormasPago_model.rc +++ b/Source/Modulos/Formas de pago/Model/FormasPago_model.rc @@ -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 diff --git a/Source/Modulos/Formas de pago/Model/FormasPago_model.res b/Source/Modulos/Formas de pago/Model/FormasPago_model.res index 36f26e23..8b251f31 100644 Binary files a/Source/Modulos/Formas de pago/Model/FormasPago_model.res and b/Source/Modulos/Formas de pago/Model/FormasPago_model.res differ diff --git a/Source/Modulos/Formas de pago/Model/schFormasPagoClient_Intf.pas b/Source/Modulos/Formas de pago/Model/schFormasPagoClient_Intf.pas index fe0682b4..89bbcf34 100644 --- a/Source/Modulos/Formas de pago/Model/schFormasPagoClient_Intf.pas +++ b/Source/Modulos/Formas de pago/Model/schFormasPagoClient_Intf.pas @@ -3,14 +3,14 @@ unit schFormasPagoClient_Intf; interface uses - Classes, DB, SysUtils, uROClasses, uDADataTable; + Classes, DB, SysUtils, uROClasses, uDADataTable, FmtBCD, uROXMLIntf; const { Data table rules ids Feel free to change them to something more human readable but make sure they are unique in the context of your application } - RID_FormasPago = '{75A0F4CB-C9F1-4725-BB8F-6B95A8B79BFF}'; - RID_FormasPagoPlazos = '{F15326B8-E938-4226-9647-954628B5A863}'; + RID_FormasPago = '{0AC9176F-E9B6-43BA-B03E-0973D7074140}'; + RID_FormasPagoPlazos = '{F02E8B61-F06F-48FE-B705-0C42FB672FB5}'; { Data table names } nme_FormasPago = 'FormasPago'; @@ -51,35 +51,59 @@ const type { IFormasPago } IFormasPago = interface(IDAStronglyTypedDataTable) - ['{D4A90295-67F2-441C-B84F-F17F80B1B8B3}'] + ['{2906012F-51D2-4722-A42A-1A1F0B5F5DA3}'] { Property getters and setters } function GetIDValue: Integer; procedure SetIDValue(const aValue: Integer); + function GetIDIsNull: Boolean; + procedure SetIDIsNull(const aValue: Boolean); function GetREFERENCIAValue: String; procedure SetREFERENCIAValue(const aValue: String); + function GetREFERENCIAIsNull: Boolean; + procedure SetREFERENCIAIsNull(const aValue: Boolean); function GetDESCRIPCIONValue: String; procedure SetDESCRIPCIONValue(const aValue: String); + function GetDESCRIPCIONIsNull: Boolean; + procedure SetDESCRIPCIONIsNull(const aValue: Boolean); function GetTITULARValue: String; procedure SetTITULARValue(const aValue: String); + function GetTITULARIsNull: Boolean; + procedure SetTITULARIsNull(const aValue: Boolean); function GetENTIDADValue: String; procedure SetENTIDADValue(const aValue: String); + function GetENTIDADIsNull: Boolean; + procedure SetENTIDADIsNull(const aValue: Boolean); function GetSUCURSALValue: String; procedure SetSUCURSALValue(const aValue: String); + function GetSUCURSALIsNull: Boolean; + procedure SetSUCURSALIsNull(const aValue: Boolean); function GetDCValue: String; procedure SetDCValue(const aValue: String); + function GetDCIsNull: Boolean; + procedure SetDCIsNull(const aValue: Boolean); function GetCUENTAValue: String; procedure SetCUENTAValue(const aValue: String); + function GetCUENTAIsNull: Boolean; + procedure SetCUENTAIsNull(const aValue: Boolean); { Properties } property ID: Integer read GetIDValue write SetIDValue; + property IDIsNull: Boolean read GetIDIsNull write SetIDIsNull; property REFERENCIA: String read GetREFERENCIAValue write SetREFERENCIAValue; + property REFERENCIAIsNull: Boolean read GetREFERENCIAIsNull write SetREFERENCIAIsNull; property DESCRIPCION: String read GetDESCRIPCIONValue write SetDESCRIPCIONValue; + property DESCRIPCIONIsNull: Boolean read GetDESCRIPCIONIsNull write SetDESCRIPCIONIsNull; property TITULAR: String read GetTITULARValue write SetTITULARValue; + property TITULARIsNull: Boolean read GetTITULARIsNull write SetTITULARIsNull; property ENTIDAD: String read GetENTIDADValue write SetENTIDADValue; + property ENTIDADIsNull: Boolean read GetENTIDADIsNull write SetENTIDADIsNull; property SUCURSAL: String read GetSUCURSALValue write SetSUCURSALValue; + property SUCURSALIsNull: Boolean read GetSUCURSALIsNull write SetSUCURSALIsNull; property DC: String read GetDCValue write SetDCValue; + property DCIsNull: Boolean read GetDCIsNull write SetDCIsNull; property CUENTA: String read GetCUENTAValue write SetCUENTAValue; + property CUENTAIsNull: Boolean read GetCUENTAIsNull write SetCUENTAIsNull; end; { TFormasPagoDataTableRules } @@ -89,30 +113,54 @@ type { Property getters and setters } function GetIDValue: Integer; virtual; procedure SetIDValue(const aValue: Integer); virtual; + function GetIDIsNull: Boolean; virtual; + procedure SetIDIsNull(const aValue: Boolean); virtual; function GetREFERENCIAValue: String; virtual; procedure SetREFERENCIAValue(const aValue: String); virtual; + function GetREFERENCIAIsNull: Boolean; virtual; + procedure SetREFERENCIAIsNull(const aValue: Boolean); virtual; function GetDESCRIPCIONValue: String; virtual; procedure SetDESCRIPCIONValue(const aValue: String); virtual; + function GetDESCRIPCIONIsNull: Boolean; virtual; + procedure SetDESCRIPCIONIsNull(const aValue: Boolean); virtual; function GetTITULARValue: String; virtual; procedure SetTITULARValue(const aValue: String); virtual; + function GetTITULARIsNull: Boolean; virtual; + procedure SetTITULARIsNull(const aValue: Boolean); virtual; function GetENTIDADValue: String; virtual; procedure SetENTIDADValue(const aValue: String); virtual; + function GetENTIDADIsNull: Boolean; virtual; + procedure SetENTIDADIsNull(const aValue: Boolean); virtual; function GetSUCURSALValue: String; virtual; procedure SetSUCURSALValue(const aValue: String); virtual; + function GetSUCURSALIsNull: Boolean; virtual; + procedure SetSUCURSALIsNull(const aValue: Boolean); virtual; function GetDCValue: String; virtual; procedure SetDCValue(const aValue: String); virtual; + function GetDCIsNull: Boolean; virtual; + procedure SetDCIsNull(const aValue: Boolean); virtual; function GetCUENTAValue: String; virtual; procedure SetCUENTAValue(const aValue: String); virtual; + function GetCUENTAIsNull: Boolean; virtual; + procedure SetCUENTAIsNull(const aValue: Boolean); virtual; { Properties } property ID: Integer read GetIDValue write SetIDValue; + property IDIsNull: Boolean read GetIDIsNull write SetIDIsNull; property REFERENCIA: String read GetREFERENCIAValue write SetREFERENCIAValue; + property REFERENCIAIsNull: Boolean read GetREFERENCIAIsNull write SetREFERENCIAIsNull; property DESCRIPCION: String read GetDESCRIPCIONValue write SetDESCRIPCIONValue; + property DESCRIPCIONIsNull: Boolean read GetDESCRIPCIONIsNull write SetDESCRIPCIONIsNull; property TITULAR: String read GetTITULARValue write SetTITULARValue; + property TITULARIsNull: Boolean read GetTITULARIsNull write SetTITULARIsNull; property ENTIDAD: String read GetENTIDADValue write SetENTIDADValue; + property ENTIDADIsNull: Boolean read GetENTIDADIsNull write SetENTIDADIsNull; property SUCURSAL: String read GetSUCURSALValue write SetSUCURSALValue; + property SUCURSALIsNull: Boolean read GetSUCURSALIsNull write SetSUCURSALIsNull; property DC: String read GetDCValue write SetDCValue; + property DCIsNull: Boolean read GetDCIsNull write SetDCIsNull; property CUENTA: String read GetCUENTAValue write SetCUENTAValue; + property CUENTAIsNull: Boolean read GetCUENTAIsNull write SetCUENTAIsNull; public constructor Create(aDataTable: TDADataTable); override; @@ -122,23 +170,35 @@ type { IFormasPagoPlazos } IFormasPagoPlazos = interface(IDAStronglyTypedDataTable) - ['{4E56EE2D-C4D1-41A3-BFA7-9CF1185C257A}'] + ['{6C99169B-3B96-4E95-9886-BFBDAF1C5836}'] { Property getters and setters } function GetIDValue: Integer; procedure SetIDValue(const aValue: Integer); + function GetIDIsNull: Boolean; + procedure SetIDIsNull(const aValue: Boolean); function GetID_FORMA_PAGOValue: Integer; procedure SetID_FORMA_PAGOValue(const aValue: Integer); - function GetNUM_DIASValue: Integer; - procedure SetNUM_DIASValue(const aValue: Integer); + function GetID_FORMA_PAGOIsNull: Boolean; + procedure SetID_FORMA_PAGOIsNull(const aValue: Boolean); + function GetNUM_DIASValue: SmallInt; + procedure SetNUM_DIASValue(const aValue: SmallInt); + function GetNUM_DIASIsNull: Boolean; + procedure SetNUM_DIASIsNull(const aValue: Boolean); function GetPORCENTAJEValue: Float; procedure SetPORCENTAJEValue(const aValue: Float); + function GetPORCENTAJEIsNull: Boolean; + procedure SetPORCENTAJEIsNull(const aValue: Boolean); { Properties } property ID: Integer read GetIDValue write SetIDValue; + property IDIsNull: Boolean read GetIDIsNull write SetIDIsNull; property ID_FORMA_PAGO: Integer read GetID_FORMA_PAGOValue write SetID_FORMA_PAGOValue; - property NUM_DIAS: Integer read GetNUM_DIASValue write SetNUM_DIASValue; + property ID_FORMA_PAGOIsNull: Boolean read GetID_FORMA_PAGOIsNull write SetID_FORMA_PAGOIsNull; + property NUM_DIAS: SmallInt read GetNUM_DIASValue write SetNUM_DIASValue; + property NUM_DIASIsNull: Boolean read GetNUM_DIASIsNull write SetNUM_DIASIsNull; property PORCENTAJE: Float read GetPORCENTAJEValue write SetPORCENTAJEValue; + property PORCENTAJEIsNull: Boolean read GetPORCENTAJEIsNull write SetPORCENTAJEIsNull; end; { TFormasPagoPlazosDataTableRules } @@ -148,18 +208,30 @@ type { Property getters and setters } function GetIDValue: Integer; virtual; procedure SetIDValue(const aValue: Integer); virtual; + function GetIDIsNull: Boolean; virtual; + procedure SetIDIsNull(const aValue: Boolean); virtual; function GetID_FORMA_PAGOValue: Integer; virtual; procedure SetID_FORMA_PAGOValue(const aValue: Integer); virtual; - function GetNUM_DIASValue: Integer; virtual; - procedure SetNUM_DIASValue(const aValue: Integer); virtual; + function GetID_FORMA_PAGOIsNull: Boolean; virtual; + procedure SetID_FORMA_PAGOIsNull(const aValue: Boolean); virtual; + function GetNUM_DIASValue: SmallInt; virtual; + procedure SetNUM_DIASValue(const aValue: SmallInt); virtual; + function GetNUM_DIASIsNull: Boolean; virtual; + procedure SetNUM_DIASIsNull(const aValue: Boolean); virtual; function GetPORCENTAJEValue: Float; virtual; procedure SetPORCENTAJEValue(const aValue: Float); virtual; + function GetPORCENTAJEIsNull: Boolean; virtual; + procedure SetPORCENTAJEIsNull(const aValue: Boolean); virtual; { Properties } property ID: Integer read GetIDValue write SetIDValue; + property IDIsNull: Boolean read GetIDIsNull write SetIDIsNull; property ID_FORMA_PAGO: Integer read GetID_FORMA_PAGOValue write SetID_FORMA_PAGOValue; - property NUM_DIAS: Integer read GetNUM_DIASValue write SetNUM_DIASValue; + property ID_FORMA_PAGOIsNull: Boolean read GetID_FORMA_PAGOIsNull write SetID_FORMA_PAGOIsNull; + property NUM_DIAS: SmallInt read GetNUM_DIASValue write SetNUM_DIASValue; + property NUM_DIASIsNull: Boolean read GetNUM_DIASIsNull write SetNUM_DIASIsNull; property PORCENTAJE: Float read GetPORCENTAJEValue write SetPORCENTAJEValue; + property PORCENTAJEIsNull: Boolean read GetPORCENTAJEIsNull write SetPORCENTAJEIsNull; public constructor Create(aDataTable: TDADataTable); override; @@ -169,7 +241,7 @@ type implementation -uses Variants; +uses Variants, uROBinaryHelpers; { TFormasPagoDataTableRules } constructor TFormasPagoDataTableRules.Create(aDataTable: TDADataTable); @@ -192,6 +264,17 @@ begin DataTable.Fields[idx_FormasPagoID].AsInteger := aValue; end; +function TFormasPagoDataTableRules.GetIDIsNull: boolean; +begin + result := DataTable.Fields[idx_FormasPagoID].IsNull; +end; + +procedure TFormasPagoDataTableRules.SetIDIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_FormasPagoID].AsVariant := Null; +end; + function TFormasPagoDataTableRules.GetREFERENCIAValue: String; begin result := DataTable.Fields[idx_FormasPagoREFERENCIA].AsString; @@ -202,6 +285,17 @@ begin DataTable.Fields[idx_FormasPagoREFERENCIA].AsString := aValue; end; +function TFormasPagoDataTableRules.GetREFERENCIAIsNull: boolean; +begin + result := DataTable.Fields[idx_FormasPagoREFERENCIA].IsNull; +end; + +procedure TFormasPagoDataTableRules.SetREFERENCIAIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_FormasPagoREFERENCIA].AsVariant := Null; +end; + function TFormasPagoDataTableRules.GetDESCRIPCIONValue: String; begin result := DataTable.Fields[idx_FormasPagoDESCRIPCION].AsString; @@ -212,6 +306,17 @@ begin DataTable.Fields[idx_FormasPagoDESCRIPCION].AsString := aValue; end; +function TFormasPagoDataTableRules.GetDESCRIPCIONIsNull: boolean; +begin + result := DataTable.Fields[idx_FormasPagoDESCRIPCION].IsNull; +end; + +procedure TFormasPagoDataTableRules.SetDESCRIPCIONIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_FormasPagoDESCRIPCION].AsVariant := Null; +end; + function TFormasPagoDataTableRules.GetTITULARValue: String; begin result := DataTable.Fields[idx_FormasPagoTITULAR].AsString; @@ -222,6 +327,17 @@ begin DataTable.Fields[idx_FormasPagoTITULAR].AsString := aValue; end; +function TFormasPagoDataTableRules.GetTITULARIsNull: boolean; +begin + result := DataTable.Fields[idx_FormasPagoTITULAR].IsNull; +end; + +procedure TFormasPagoDataTableRules.SetTITULARIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_FormasPagoTITULAR].AsVariant := Null; +end; + function TFormasPagoDataTableRules.GetENTIDADValue: String; begin result := DataTable.Fields[idx_FormasPagoENTIDAD].AsString; @@ -232,6 +348,17 @@ begin DataTable.Fields[idx_FormasPagoENTIDAD].AsString := aValue; end; +function TFormasPagoDataTableRules.GetENTIDADIsNull: boolean; +begin + result := DataTable.Fields[idx_FormasPagoENTIDAD].IsNull; +end; + +procedure TFormasPagoDataTableRules.SetENTIDADIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_FormasPagoENTIDAD].AsVariant := Null; +end; + function TFormasPagoDataTableRules.GetSUCURSALValue: String; begin result := DataTable.Fields[idx_FormasPagoSUCURSAL].AsString; @@ -242,6 +369,17 @@ begin DataTable.Fields[idx_FormasPagoSUCURSAL].AsString := aValue; end; +function TFormasPagoDataTableRules.GetSUCURSALIsNull: boolean; +begin + result := DataTable.Fields[idx_FormasPagoSUCURSAL].IsNull; +end; + +procedure TFormasPagoDataTableRules.SetSUCURSALIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_FormasPagoSUCURSAL].AsVariant := Null; +end; + function TFormasPagoDataTableRules.GetDCValue: String; begin result := DataTable.Fields[idx_FormasPagoDC].AsString; @@ -252,6 +390,17 @@ begin DataTable.Fields[idx_FormasPagoDC].AsString := aValue; end; +function TFormasPagoDataTableRules.GetDCIsNull: boolean; +begin + result := DataTable.Fields[idx_FormasPagoDC].IsNull; +end; + +procedure TFormasPagoDataTableRules.SetDCIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_FormasPagoDC].AsVariant := Null; +end; + function TFormasPagoDataTableRules.GetCUENTAValue: String; begin result := DataTable.Fields[idx_FormasPagoCUENTA].AsString; @@ -262,6 +411,17 @@ begin DataTable.Fields[idx_FormasPagoCUENTA].AsString := aValue; end; +function TFormasPagoDataTableRules.GetCUENTAIsNull: boolean; +begin + result := DataTable.Fields[idx_FormasPagoCUENTA].IsNull; +end; + +procedure TFormasPagoDataTableRules.SetCUENTAIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_FormasPagoCUENTA].AsVariant := Null; +end; + { TFormasPagoPlazosDataTableRules } constructor TFormasPagoPlazosDataTableRules.Create(aDataTable: TDADataTable); @@ -284,6 +444,17 @@ begin DataTable.Fields[idx_FormasPagoPlazosID].AsInteger := aValue; end; +function TFormasPagoPlazosDataTableRules.GetIDIsNull: boolean; +begin + result := DataTable.Fields[idx_FormasPagoPlazosID].IsNull; +end; + +procedure TFormasPagoPlazosDataTableRules.SetIDIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_FormasPagoPlazosID].AsVariant := Null; +end; + function TFormasPagoPlazosDataTableRules.GetID_FORMA_PAGOValue: Integer; begin result := DataTable.Fields[idx_FormasPagoPlazosID_FORMA_PAGO].AsInteger; @@ -294,14 +465,36 @@ begin DataTable.Fields[idx_FormasPagoPlazosID_FORMA_PAGO].AsInteger := aValue; end; -function TFormasPagoPlazosDataTableRules.GetNUM_DIASValue: Integer; +function TFormasPagoPlazosDataTableRules.GetID_FORMA_PAGOIsNull: boolean; begin - result := DataTable.Fields[idx_FormasPagoPlazosNUM_DIAS].AsInteger; + result := DataTable.Fields[idx_FormasPagoPlazosID_FORMA_PAGO].IsNull; end; -procedure TFormasPagoPlazosDataTableRules.SetNUM_DIASValue(const aValue: Integer); +procedure TFormasPagoPlazosDataTableRules.SetID_FORMA_PAGOIsNull(const aValue: Boolean); begin - DataTable.Fields[idx_FormasPagoPlazosNUM_DIAS].AsInteger := aValue; + if aValue then + DataTable.Fields[idx_FormasPagoPlazosID_FORMA_PAGO].AsVariant := Null; +end; + +function TFormasPagoPlazosDataTableRules.GetNUM_DIASValue: SmallInt; +begin + result := DataTable.Fields[idx_FormasPagoPlazosNUM_DIAS].AsSmallInt; +end; + +procedure TFormasPagoPlazosDataTableRules.SetNUM_DIASValue(const aValue: SmallInt); +begin + DataTable.Fields[idx_FormasPagoPlazosNUM_DIAS].AsSmallInt := aValue; +end; + +function TFormasPagoPlazosDataTableRules.GetNUM_DIASIsNull: boolean; +begin + result := DataTable.Fields[idx_FormasPagoPlazosNUM_DIAS].IsNull; +end; + +procedure TFormasPagoPlazosDataTableRules.SetNUM_DIASIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_FormasPagoPlazosNUM_DIAS].AsVariant := Null; end; function TFormasPagoPlazosDataTableRules.GetPORCENTAJEValue: Float; @@ -314,6 +507,17 @@ begin DataTable.Fields[idx_FormasPagoPlazosPORCENTAJE].AsFloat := aValue; end; +function TFormasPagoPlazosDataTableRules.GetPORCENTAJEIsNull: boolean; +begin + result := DataTable.Fields[idx_FormasPagoPlazosPORCENTAJE].IsNull; +end; + +procedure TFormasPagoPlazosDataTableRules.SetPORCENTAJEIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_FormasPagoPlazosPORCENTAJE].AsVariant := Null; +end; + initialization RegisterDataTableRules(RID_FormasPago, TFormasPagoDataTableRules); diff --git a/Source/Modulos/Formas de pago/Model/schFormasPagoServer_Intf.pas b/Source/Modulos/Formas de pago/Model/schFormasPagoServer_Intf.pas index 2b33d2d1..874b45cd 100644 --- a/Source/Modulos/Formas de pago/Model/schFormasPagoServer_Intf.pas +++ b/Source/Modulos/Formas de pago/Model/schFormasPagoServer_Intf.pas @@ -3,19 +3,19 @@ unit schFormasPagoServer_Intf; interface uses - Classes, DB, SysUtils, uROClasses, uDADataTable, uDABusinessProcessor, schFormasPagoClient_Intf; + Classes, DB, SysUtils, uROClasses, uDADataTable, uDABusinessProcessor, FmtBCD, uROXMLIntf, schFormasPagoClient_Intf; const { Delta rules ids Feel free to change them to something more human readable but make sure they are unique in the context of your application } - RID_FormasPagoDelta = '{D0ECD138-153C-48AE-A90B-3C1CA44928CA}'; - RID_FormasPagoPlazosDelta = '{729F444F-315A-41F5-9BB1-75B36B1F4CA1}'; + RID_FormasPagoDelta = '{3B5575C3-8103-4890-A2BF-8B93698E666B}'; + RID_FormasPagoPlazosDelta = '{E0326434-91CF-4E0E-B620-9C98B3FF28EA}'; type { IFormasPagoDelta } IFormasPagoDelta = interface(IFormasPago) - ['{D0ECD138-153C-48AE-A90B-3C1CA44928CA}'] + ['{3B5575C3-8103-4890-A2BF-8B93698E666B}'] { Property getters and setters } function GetOldIDValue : Integer; function GetOldREFERENCIAValue : String; @@ -43,47 +43,87 @@ type protected { Property getters and setters } function GetIDValue: Integer; virtual; + function GetIDIsNull: Boolean; virtual; function GetOldIDValue: Integer; virtual; + function GetOldIDIsNull: Boolean; virtual; procedure SetIDValue(const aValue: Integer); virtual; + procedure SetIDIsNull(const aValue: Boolean); virtual; function GetREFERENCIAValue: String; virtual; + function GetREFERENCIAIsNull: Boolean; virtual; function GetOldREFERENCIAValue: String; virtual; + function GetOldREFERENCIAIsNull: Boolean; virtual; procedure SetREFERENCIAValue(const aValue: String); virtual; + procedure SetREFERENCIAIsNull(const aValue: Boolean); virtual; function GetDESCRIPCIONValue: String; virtual; + function GetDESCRIPCIONIsNull: Boolean; virtual; function GetOldDESCRIPCIONValue: String; virtual; + function GetOldDESCRIPCIONIsNull: Boolean; virtual; procedure SetDESCRIPCIONValue(const aValue: String); virtual; + procedure SetDESCRIPCIONIsNull(const aValue: Boolean); virtual; function GetTITULARValue: String; virtual; + function GetTITULARIsNull: Boolean; virtual; function GetOldTITULARValue: String; virtual; + function GetOldTITULARIsNull: Boolean; virtual; procedure SetTITULARValue(const aValue: String); virtual; + procedure SetTITULARIsNull(const aValue: Boolean); virtual; function GetENTIDADValue: String; virtual; + function GetENTIDADIsNull: Boolean; virtual; function GetOldENTIDADValue: String; virtual; + function GetOldENTIDADIsNull: Boolean; virtual; procedure SetENTIDADValue(const aValue: String); virtual; + procedure SetENTIDADIsNull(const aValue: Boolean); virtual; function GetSUCURSALValue: String; virtual; + function GetSUCURSALIsNull: Boolean; virtual; function GetOldSUCURSALValue: String; virtual; + function GetOldSUCURSALIsNull: Boolean; virtual; procedure SetSUCURSALValue(const aValue: String); virtual; + procedure SetSUCURSALIsNull(const aValue: Boolean); virtual; function GetDCValue: String; virtual; + function GetDCIsNull: Boolean; virtual; function GetOldDCValue: String; virtual; + function GetOldDCIsNull: Boolean; virtual; procedure SetDCValue(const aValue: String); virtual; + procedure SetDCIsNull(const aValue: Boolean); virtual; function GetCUENTAValue: String; virtual; + function GetCUENTAIsNull: Boolean; virtual; function GetOldCUENTAValue: String; virtual; + function GetOldCUENTAIsNull: Boolean; virtual; procedure SetCUENTAValue(const aValue: String); virtual; + procedure SetCUENTAIsNull(const aValue: Boolean); virtual; { Properties } property ID : Integer read GetIDValue write SetIDValue; + property IDIsNull : Boolean read GetIDIsNull write SetIDIsNull; property OldID : Integer read GetOldIDValue; + property OldIDIsNull : Boolean read GetOldIDIsNull; property REFERENCIA : String read GetREFERENCIAValue write SetREFERENCIAValue; + property REFERENCIAIsNull : Boolean read GetREFERENCIAIsNull write SetREFERENCIAIsNull; property OldREFERENCIA : String read GetOldREFERENCIAValue; + property OldREFERENCIAIsNull : Boolean read GetOldREFERENCIAIsNull; property DESCRIPCION : String read GetDESCRIPCIONValue write SetDESCRIPCIONValue; + property DESCRIPCIONIsNull : Boolean read GetDESCRIPCIONIsNull write SetDESCRIPCIONIsNull; property OldDESCRIPCION : String read GetOldDESCRIPCIONValue; + property OldDESCRIPCIONIsNull : Boolean read GetOldDESCRIPCIONIsNull; property TITULAR : String read GetTITULARValue write SetTITULARValue; + property TITULARIsNull : Boolean read GetTITULARIsNull write SetTITULARIsNull; property OldTITULAR : String read GetOldTITULARValue; + property OldTITULARIsNull : Boolean read GetOldTITULARIsNull; property ENTIDAD : String read GetENTIDADValue write SetENTIDADValue; + property ENTIDADIsNull : Boolean read GetENTIDADIsNull write SetENTIDADIsNull; property OldENTIDAD : String read GetOldENTIDADValue; + property OldENTIDADIsNull : Boolean read GetOldENTIDADIsNull; property SUCURSAL : String read GetSUCURSALValue write SetSUCURSALValue; + property SUCURSALIsNull : Boolean read GetSUCURSALIsNull write SetSUCURSALIsNull; property OldSUCURSAL : String read GetOldSUCURSALValue; + property OldSUCURSALIsNull : Boolean read GetOldSUCURSALIsNull; property DC : String read GetDCValue write SetDCValue; + property DCIsNull : Boolean read GetDCIsNull write SetDCIsNull; property OldDC : String read GetOldDCValue; + property OldDCIsNull : Boolean read GetOldDCIsNull; property CUENTA : String read GetCUENTAValue write SetCUENTAValue; + property CUENTAIsNull : Boolean read GetCUENTAIsNull write SetCUENTAIsNull; property OldCUENTA : String read GetOldCUENTAValue; + property OldCUENTAIsNull : Boolean read GetOldCUENTAIsNull; public constructor Create(aBusinessProcessor: TDABusinessProcessor); override; @@ -93,17 +133,17 @@ type { IFormasPagoPlazosDelta } IFormasPagoPlazosDelta = interface(IFormasPagoPlazos) - ['{729F444F-315A-41F5-9BB1-75B36B1F4CA1}'] + ['{E0326434-91CF-4E0E-B620-9C98B3FF28EA}'] { Property getters and setters } function GetOldIDValue : Integer; function GetOldID_FORMA_PAGOValue : Integer; - function GetOldNUM_DIASValue : Integer; + function GetOldNUM_DIASValue : SmallInt; function GetOldPORCENTAJEValue : Float; { Properties } property OldID : Integer read GetOldIDValue; property OldID_FORMA_PAGO : Integer read GetOldID_FORMA_PAGOValue; - property OldNUM_DIAS : Integer read GetOldNUM_DIASValue; + property OldNUM_DIAS : SmallInt read GetOldNUM_DIASValue; property OldPORCENTAJE : Float read GetOldPORCENTAJEValue; end; @@ -113,27 +153,47 @@ type protected { Property getters and setters } function GetIDValue: Integer; virtual; + function GetIDIsNull: Boolean; virtual; function GetOldIDValue: Integer; virtual; + function GetOldIDIsNull: Boolean; virtual; procedure SetIDValue(const aValue: Integer); virtual; + procedure SetIDIsNull(const aValue: Boolean); virtual; function GetID_FORMA_PAGOValue: Integer; virtual; + function GetID_FORMA_PAGOIsNull: Boolean; virtual; function GetOldID_FORMA_PAGOValue: Integer; virtual; + function GetOldID_FORMA_PAGOIsNull: Boolean; virtual; procedure SetID_FORMA_PAGOValue(const aValue: Integer); virtual; - function GetNUM_DIASValue: Integer; virtual; - function GetOldNUM_DIASValue: Integer; virtual; - procedure SetNUM_DIASValue(const aValue: Integer); virtual; + procedure SetID_FORMA_PAGOIsNull(const aValue: Boolean); virtual; + function GetNUM_DIASValue: SmallInt; virtual; + function GetNUM_DIASIsNull: Boolean; virtual; + function GetOldNUM_DIASValue: SmallInt; virtual; + function GetOldNUM_DIASIsNull: Boolean; virtual; + procedure SetNUM_DIASValue(const aValue: SmallInt); virtual; + procedure SetNUM_DIASIsNull(const aValue: Boolean); virtual; function GetPORCENTAJEValue: Float; virtual; + function GetPORCENTAJEIsNull: Boolean; virtual; function GetOldPORCENTAJEValue: Float; virtual; + function GetOldPORCENTAJEIsNull: Boolean; virtual; procedure SetPORCENTAJEValue(const aValue: Float); virtual; + procedure SetPORCENTAJEIsNull(const aValue: Boolean); virtual; { Properties } property ID : Integer read GetIDValue write SetIDValue; + property IDIsNull : Boolean read GetIDIsNull write SetIDIsNull; property OldID : Integer read GetOldIDValue; + property OldIDIsNull : Boolean read GetOldIDIsNull; property ID_FORMA_PAGO : Integer read GetID_FORMA_PAGOValue write SetID_FORMA_PAGOValue; + property ID_FORMA_PAGOIsNull : Boolean read GetID_FORMA_PAGOIsNull write SetID_FORMA_PAGOIsNull; property OldID_FORMA_PAGO : Integer read GetOldID_FORMA_PAGOValue; - property NUM_DIAS : Integer read GetNUM_DIASValue write SetNUM_DIASValue; - property OldNUM_DIAS : Integer read GetOldNUM_DIASValue; + property OldID_FORMA_PAGOIsNull : Boolean read GetOldID_FORMA_PAGOIsNull; + property NUM_DIAS : SmallInt read GetNUM_DIASValue write SetNUM_DIASValue; + property NUM_DIASIsNull : Boolean read GetNUM_DIASIsNull write SetNUM_DIASIsNull; + property OldNUM_DIAS : SmallInt read GetOldNUM_DIASValue; + property OldNUM_DIASIsNull : Boolean read GetOldNUM_DIASIsNull; property PORCENTAJE : Float read GetPORCENTAJEValue write SetPORCENTAJEValue; + property PORCENTAJEIsNull : Boolean read GetPORCENTAJEIsNull write SetPORCENTAJEIsNull; property OldPORCENTAJE : Float read GetOldPORCENTAJEValue; + property OldPORCENTAJEIsNull : Boolean read GetOldPORCENTAJEIsNull; public constructor Create(aBusinessProcessor: TDABusinessProcessor); override; @@ -144,7 +204,7 @@ type implementation uses - Variants, uROBinaryHelpers; + Variants, uROBinaryHelpers, uDAInterfaces; { TFormasPagoBusinessProcessorRules } constructor TFormasPagoBusinessProcessorRules.Create(aBusinessProcessor: TDABusinessProcessor); @@ -162,121 +222,249 @@ begin result := BusinessProcessor.CurrentChange.NewValueByName[fld_FormasPagoID]; end; +function TFormasPagoBusinessProcessorRules.GetIDIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_FormasPagoID]); +end; + function TFormasPagoBusinessProcessorRules.GetOldIDValue: Integer; begin result := BusinessProcessor.CurrentChange.OldValueByName[fld_FormasPagoID]; end; +function TFormasPagoBusinessProcessorRules.GetOldIDIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_FormasPagoID]); +end; + procedure TFormasPagoBusinessProcessorRules.SetIDValue(const aValue: Integer); begin BusinessProcessor.CurrentChange.NewValueByName[fld_FormasPagoID] := aValue; end; +procedure TFormasPagoBusinessProcessorRules.SetIDIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_FormasPagoID] := Null; +end; + function TFormasPagoBusinessProcessorRules.GetREFERENCIAValue: String; begin result := BusinessProcessor.CurrentChange.NewValueByName[fld_FormasPagoREFERENCIA]; end; +function TFormasPagoBusinessProcessorRules.GetREFERENCIAIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_FormasPagoREFERENCIA]); +end; + function TFormasPagoBusinessProcessorRules.GetOldREFERENCIAValue: String; begin result := BusinessProcessor.CurrentChange.OldValueByName[fld_FormasPagoREFERENCIA]; end; +function TFormasPagoBusinessProcessorRules.GetOldREFERENCIAIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_FormasPagoREFERENCIA]); +end; + procedure TFormasPagoBusinessProcessorRules.SetREFERENCIAValue(const aValue: String); begin BusinessProcessor.CurrentChange.NewValueByName[fld_FormasPagoREFERENCIA] := aValue; end; +procedure TFormasPagoBusinessProcessorRules.SetREFERENCIAIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_FormasPagoREFERENCIA] := Null; +end; + function TFormasPagoBusinessProcessorRules.GetDESCRIPCIONValue: String; begin result := BusinessProcessor.CurrentChange.NewValueByName[fld_FormasPagoDESCRIPCION]; end; +function TFormasPagoBusinessProcessorRules.GetDESCRIPCIONIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_FormasPagoDESCRIPCION]); +end; + function TFormasPagoBusinessProcessorRules.GetOldDESCRIPCIONValue: String; begin result := BusinessProcessor.CurrentChange.OldValueByName[fld_FormasPagoDESCRIPCION]; end; +function TFormasPagoBusinessProcessorRules.GetOldDESCRIPCIONIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_FormasPagoDESCRIPCION]); +end; + procedure TFormasPagoBusinessProcessorRules.SetDESCRIPCIONValue(const aValue: String); begin BusinessProcessor.CurrentChange.NewValueByName[fld_FormasPagoDESCRIPCION] := aValue; end; +procedure TFormasPagoBusinessProcessorRules.SetDESCRIPCIONIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_FormasPagoDESCRIPCION] := Null; +end; + function TFormasPagoBusinessProcessorRules.GetTITULARValue: String; begin result := BusinessProcessor.CurrentChange.NewValueByName[fld_FormasPagoTITULAR]; end; +function TFormasPagoBusinessProcessorRules.GetTITULARIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_FormasPagoTITULAR]); +end; + function TFormasPagoBusinessProcessorRules.GetOldTITULARValue: String; begin result := BusinessProcessor.CurrentChange.OldValueByName[fld_FormasPagoTITULAR]; end; +function TFormasPagoBusinessProcessorRules.GetOldTITULARIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_FormasPagoTITULAR]); +end; + procedure TFormasPagoBusinessProcessorRules.SetTITULARValue(const aValue: String); begin BusinessProcessor.CurrentChange.NewValueByName[fld_FormasPagoTITULAR] := aValue; end; +procedure TFormasPagoBusinessProcessorRules.SetTITULARIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_FormasPagoTITULAR] := Null; +end; + function TFormasPagoBusinessProcessorRules.GetENTIDADValue: String; begin result := BusinessProcessor.CurrentChange.NewValueByName[fld_FormasPagoENTIDAD]; end; +function TFormasPagoBusinessProcessorRules.GetENTIDADIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_FormasPagoENTIDAD]); +end; + function TFormasPagoBusinessProcessorRules.GetOldENTIDADValue: String; begin result := BusinessProcessor.CurrentChange.OldValueByName[fld_FormasPagoENTIDAD]; end; +function TFormasPagoBusinessProcessorRules.GetOldENTIDADIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_FormasPagoENTIDAD]); +end; + procedure TFormasPagoBusinessProcessorRules.SetENTIDADValue(const aValue: String); begin BusinessProcessor.CurrentChange.NewValueByName[fld_FormasPagoENTIDAD] := aValue; end; +procedure TFormasPagoBusinessProcessorRules.SetENTIDADIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_FormasPagoENTIDAD] := Null; +end; + function TFormasPagoBusinessProcessorRules.GetSUCURSALValue: String; begin result := BusinessProcessor.CurrentChange.NewValueByName[fld_FormasPagoSUCURSAL]; end; +function TFormasPagoBusinessProcessorRules.GetSUCURSALIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_FormasPagoSUCURSAL]); +end; + function TFormasPagoBusinessProcessorRules.GetOldSUCURSALValue: String; begin result := BusinessProcessor.CurrentChange.OldValueByName[fld_FormasPagoSUCURSAL]; end; +function TFormasPagoBusinessProcessorRules.GetOldSUCURSALIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_FormasPagoSUCURSAL]); +end; + procedure TFormasPagoBusinessProcessorRules.SetSUCURSALValue(const aValue: String); begin BusinessProcessor.CurrentChange.NewValueByName[fld_FormasPagoSUCURSAL] := aValue; end; +procedure TFormasPagoBusinessProcessorRules.SetSUCURSALIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_FormasPagoSUCURSAL] := Null; +end; + function TFormasPagoBusinessProcessorRules.GetDCValue: String; begin result := BusinessProcessor.CurrentChange.NewValueByName[fld_FormasPagoDC]; end; +function TFormasPagoBusinessProcessorRules.GetDCIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_FormasPagoDC]); +end; + function TFormasPagoBusinessProcessorRules.GetOldDCValue: String; begin result := BusinessProcessor.CurrentChange.OldValueByName[fld_FormasPagoDC]; end; +function TFormasPagoBusinessProcessorRules.GetOldDCIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_FormasPagoDC]); +end; + procedure TFormasPagoBusinessProcessorRules.SetDCValue(const aValue: String); begin BusinessProcessor.CurrentChange.NewValueByName[fld_FormasPagoDC] := aValue; end; +procedure TFormasPagoBusinessProcessorRules.SetDCIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_FormasPagoDC] := Null; +end; + function TFormasPagoBusinessProcessorRules.GetCUENTAValue: String; begin result := BusinessProcessor.CurrentChange.NewValueByName[fld_FormasPagoCUENTA]; end; +function TFormasPagoBusinessProcessorRules.GetCUENTAIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_FormasPagoCUENTA]); +end; + function TFormasPagoBusinessProcessorRules.GetOldCUENTAValue: String; begin result := BusinessProcessor.CurrentChange.OldValueByName[fld_FormasPagoCUENTA]; end; +function TFormasPagoBusinessProcessorRules.GetOldCUENTAIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_FormasPagoCUENTA]); +end; + procedure TFormasPagoBusinessProcessorRules.SetCUENTAValue(const aValue: String); begin BusinessProcessor.CurrentChange.NewValueByName[fld_FormasPagoCUENTA] := aValue; end; +procedure TFormasPagoBusinessProcessorRules.SetCUENTAIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_FormasPagoCUENTA] := Null; +end; + { TFormasPagoPlazosBusinessProcessorRules } constructor TFormasPagoPlazosBusinessProcessorRules.Create(aBusinessProcessor: TDABusinessProcessor); @@ -294,61 +482,125 @@ begin result := BusinessProcessor.CurrentChange.NewValueByName[fld_FormasPagoPlazosID]; end; +function TFormasPagoPlazosBusinessProcessorRules.GetIDIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_FormasPagoPlazosID]); +end; + function TFormasPagoPlazosBusinessProcessorRules.GetOldIDValue: Integer; begin result := BusinessProcessor.CurrentChange.OldValueByName[fld_FormasPagoPlazosID]; end; +function TFormasPagoPlazosBusinessProcessorRules.GetOldIDIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_FormasPagoPlazosID]); +end; + procedure TFormasPagoPlazosBusinessProcessorRules.SetIDValue(const aValue: Integer); begin BusinessProcessor.CurrentChange.NewValueByName[fld_FormasPagoPlazosID] := aValue; end; +procedure TFormasPagoPlazosBusinessProcessorRules.SetIDIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_FormasPagoPlazosID] := Null; +end; + function TFormasPagoPlazosBusinessProcessorRules.GetID_FORMA_PAGOValue: Integer; begin result := BusinessProcessor.CurrentChange.NewValueByName[fld_FormasPagoPlazosID_FORMA_PAGO]; end; +function TFormasPagoPlazosBusinessProcessorRules.GetID_FORMA_PAGOIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_FormasPagoPlazosID_FORMA_PAGO]); +end; + function TFormasPagoPlazosBusinessProcessorRules.GetOldID_FORMA_PAGOValue: Integer; begin result := BusinessProcessor.CurrentChange.OldValueByName[fld_FormasPagoPlazosID_FORMA_PAGO]; end; +function TFormasPagoPlazosBusinessProcessorRules.GetOldID_FORMA_PAGOIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_FormasPagoPlazosID_FORMA_PAGO]); +end; + procedure TFormasPagoPlazosBusinessProcessorRules.SetID_FORMA_PAGOValue(const aValue: Integer); begin BusinessProcessor.CurrentChange.NewValueByName[fld_FormasPagoPlazosID_FORMA_PAGO] := aValue; end; -function TFormasPagoPlazosBusinessProcessorRules.GetNUM_DIASValue: Integer; +procedure TFormasPagoPlazosBusinessProcessorRules.SetID_FORMA_PAGOIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_FormasPagoPlazosID_FORMA_PAGO] := Null; +end; + +function TFormasPagoPlazosBusinessProcessorRules.GetNUM_DIASValue: SmallInt; begin result := BusinessProcessor.CurrentChange.NewValueByName[fld_FormasPagoPlazosNUM_DIAS]; end; -function TFormasPagoPlazosBusinessProcessorRules.GetOldNUM_DIASValue: Integer; +function TFormasPagoPlazosBusinessProcessorRules.GetNUM_DIASIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_FormasPagoPlazosNUM_DIAS]); +end; + +function TFormasPagoPlazosBusinessProcessorRules.GetOldNUM_DIASValue: SmallInt; begin result := BusinessProcessor.CurrentChange.OldValueByName[fld_FormasPagoPlazosNUM_DIAS]; end; -procedure TFormasPagoPlazosBusinessProcessorRules.SetNUM_DIASValue(const aValue: Integer); +function TFormasPagoPlazosBusinessProcessorRules.GetOldNUM_DIASIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_FormasPagoPlazosNUM_DIAS]); +end; + +procedure TFormasPagoPlazosBusinessProcessorRules.SetNUM_DIASValue(const aValue: SmallInt); begin BusinessProcessor.CurrentChange.NewValueByName[fld_FormasPagoPlazosNUM_DIAS] := aValue; end; +procedure TFormasPagoPlazosBusinessProcessorRules.SetNUM_DIASIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_FormasPagoPlazosNUM_DIAS] := Null; +end; + function TFormasPagoPlazosBusinessProcessorRules.GetPORCENTAJEValue: Float; begin result := BusinessProcessor.CurrentChange.NewValueByName[fld_FormasPagoPlazosPORCENTAJE]; end; +function TFormasPagoPlazosBusinessProcessorRules.GetPORCENTAJEIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_FormasPagoPlazosPORCENTAJE]); +end; + function TFormasPagoPlazosBusinessProcessorRules.GetOldPORCENTAJEValue: Float; begin result := BusinessProcessor.CurrentChange.OldValueByName[fld_FormasPagoPlazosPORCENTAJE]; end; +function TFormasPagoPlazosBusinessProcessorRules.GetOldPORCENTAJEIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_FormasPagoPlazosPORCENTAJE]); +end; + procedure TFormasPagoPlazosBusinessProcessorRules.SetPORCENTAJEValue(const aValue: Float); begin BusinessProcessor.CurrentChange.NewValueByName[fld_FormasPagoPlazosPORCENTAJE] := aValue; end; +procedure TFormasPagoPlazosBusinessProcessorRules.SetPORCENTAJEIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_FormasPagoPlazosPORCENTAJE] := Null; +end; + initialization RegisterBusinessProcessorRules(RID_FormasPagoDelta, TFormasPagoBusinessProcessorRules); diff --git a/Source/Modulos/Formas de pago/Model/uBizFormasPago.pas b/Source/Modulos/Formas de pago/Model/uBizFormasPago.pas index b85e2357..72a33db2 100644 --- a/Source/Modulos/Formas de pago/Model/uBizFormasPago.pas +++ b/Source/Modulos/Formas de pago/Model/uBizFormasPago.pas @@ -76,7 +76,7 @@ end; procedure TBizFormaPago.OnNewRecord(Sender: TDADataTable); begin inherited; - ID := GetRecNo; // -1, -2, -3... +// Eliminar ID := GetRecNo; // -1, -2, -3... IniciarValoresFormaPagoNueva; end; diff --git a/Source/Modulos/Formas de pago/Model/uBizFormasPagoPlazos.pas b/Source/Modulos/Formas de pago/Model/uBizFormasPagoPlazos.pas index 01cedd34..39007631 100644 --- a/Source/Modulos/Formas de pago/Model/uBizFormasPagoPlazos.pas +++ b/Source/Modulos/Formas de pago/Model/uBizFormasPagoPlazos.pas @@ -54,7 +54,7 @@ end; procedure TBizFormasPagoPlazos.OnNewRecord(Sender: TDADataTable); begin inherited; - ID := GetRecNo; // -1, -2, -3... +// Eliminar ID := GetRecNo; // -1, -2, -3... IniciarValoresPlazoNuevo end; diff --git a/Source/Modulos/Formas de pago/Plugin/FormasPago_plugin.dpk b/Source/Modulos/Formas de pago/Plugin/FormasPago_plugin.dpk index baecb589..8e486515 100644 --- a/Source/Modulos/Formas de pago/Plugin/FormasPago_plugin.dpk +++ b/Source/Modulos/Formas de pago/Plugin/FormasPago_plugin.dpk @@ -22,15 +22,15 @@ package FormasPago_plugin; {$WRITEABLECONST OFF} {$MINENUMSIZE 1} {$IMAGEBASE $400000} -{$IMPLICITBUILD OFF} +{$IMPLICITBUILD ON} +{$DEFINE DEBUG} requires rtl, vcl, - PngComponentsD10, - PNG_D10, - vclactnband, - vclx, + Base, + GUIBase, + ApplicationBase, FormasPago_model, FormasPago_controller, FormasPago_view, diff --git a/Source/Modulos/Formas de pago/Plugin/FormasPago_plugin.dpk.bak b/Source/Modulos/Formas de pago/Plugin/FormasPago_plugin.dpk.bak new file mode 100644 index 00000000..baecb589 --- /dev/null +++ b/Source/Modulos/Formas de pago/Plugin/FormasPago_plugin.dpk.bak @@ -0,0 +1,42 @@ +package FormasPago_plugin; + +{$R *.res} +{$ALIGN 8} +{$ASSERTIONS ON} +{$BOOLEVAL OFF} +{$DEBUGINFO ON} +{$EXTENDEDSYNTAX ON} +{$IMPORTEDDATA ON} +{$IOCHECKS ON} +{$LOCALSYMBOLS ON} +{$LONGSTRINGS ON} +{$OPENSTRINGS ON} +{$OPTIMIZATION ON} +{$OVERFLOWCHECKS OFF} +{$RANGECHECKS OFF} +{$REFERENCEINFO ON} +{$SAFEDIVIDE OFF} +{$STACKFRAMES OFF} +{$TYPEDADDRESS OFF} +{$VARSTRINGCHECKS ON} +{$WRITEABLECONST OFF} +{$MINENUMSIZE 1} +{$IMAGEBASE $400000} +{$IMPLICITBUILD OFF} + +requires + rtl, + vcl, + PngComponentsD10, + PNG_D10, + vclactnband, + vclx, + FormasPago_model, + FormasPago_controller, + FormasPago_view, + PluginSDK_D10R; + +contains + uPluginFormasPago in 'uPluginFormasPago.pas'; + +end. diff --git a/Source/Modulos/Formas de pago/Plugin/FormasPago_plugin.dproj b/Source/Modulos/Formas de pago/Plugin/FormasPago_plugin.dproj new file mode 100644 index 00000000..e6a2ae38 --- /dev/null +++ b/Source/Modulos/Formas de pago/Plugin/FormasPago_plugin.dproj @@ -0,0 +1,61 @@ + + + {82e36812-58c4-491b-b463-6b951e95da51} + FormasPago_plugin.dpk + Debug + AnyCPU + DCC32 + ..\..\..\..\Output\Debug\Cliente\FormasPago_plugin.bpl + + + 7.0 + False + False + 0 + .\ + .\ + .\ + ..\..\..\..\Output\Debug\Cliente + ..\..\Lib + ..\..\..\Lib;..\..\Lib + ..\..\..\Lib;..\..\Lib + ..\..\..\Lib;..\..\Lib + ..\..\..\Lib;..\..\Lib + RELEASE + + + 7.0 + .\ + .\ + .\ + ..\..\..\..\Output\Debug\Cliente + ..\..\Lib + ..\..\..\Lib;..\..\Lib + ..\..\..\Lib;..\..\Lib + ..\..\..\Lib;..\..\Lib + ..\..\..\Lib;..\..\Lib + DEBUG + + + Delphi.Personality + Package + +FalseTrueFalseTrueFalseFalseTrueFalse1000FalseFalseFalseFalseFalse308212521.0.0.01.0.0.0FormasPago_plugin.dpk + + + + + MainSource + + + + + + + + + + + + + diff --git a/Source/Modulos/Formas de pago/Plugin/FormasPago_plugin.rc b/Source/Modulos/Formas de pago/Plugin/FormasPago_plugin.rc index e69de29b..153736af 100644 --- a/Source/Modulos/Formas de pago/Plugin/FormasPago_plugin.rc +++ b/Source/Modulos/Formas de pago/Plugin/FormasPago_plugin.rc @@ -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 diff --git a/Source/Modulos/Formas de pago/Plugin/FormasPago_plugin.res b/Source/Modulos/Formas de pago/Plugin/FormasPago_plugin.res index 36f26e23..8b251f31 100644 Binary files a/Source/Modulos/Formas de pago/Plugin/FormasPago_plugin.res and b/Source/Modulos/Formas de pago/Plugin/FormasPago_plugin.res differ diff --git a/Source/Modulos/Formas de pago/Servidor/srvFormasPago_Impl.dfm b/Source/Modulos/Formas de pago/Servidor/srvFormasPago_Impl.dfm index 6329cf3f..2a3ab589 100644 --- a/Source/Modulos/Formas de pago/Servidor/srvFormasPago_Impl.dfm +++ b/Source/Modulos/Formas de pago/Servidor/srvFormasPago_Impl.dfm @@ -3,119 +3,94 @@ object srvFormasPago: TsrvFormasPago OnCreate = DARemoteServiceCreate RequiresSession = True SessionManager = dmServer.SessionManager - AcquireConnection = True ServiceSchema = schFormasPago - ServiceAdapter = DABINAdapter - OnBeforeAcquireConnection = DARemoteServiceBeforeAcquireConnection + ServiceDataStreamer = Bin2DataStreamer + ExportedDataTables = <> + BeforeAcquireConnection = DataAbstractServiceBeforeAcquireConnection Height = 202 - Width = 392 + Width = 247 object Diagrams: TDADiagrams Left = 150 Top = 90 - DiagramData = ''#13#10''#13#10 + DiagramData = + ''#13#10' '#13#10' '#13#10' '#13#10''#13#10 end object DataDictionary: TDADataDictionary Fields = < - item - Name = 'FormasPago_ID' - DataType = datInteger - BlobType = dabtUnknown - DisplayWidth = 0 - DisplayLabel = 'ID' - Alignment = taLeftJustify - end item Name = 'FormasPago_REFERENCIA' DataType = datString Size = 255 - BlobType = dabtUnknown - DisplayWidth = 0 DisplayLabel = 'Referencia' - Alignment = taLeftJustify end item Name = 'FormasPago_DESCRIPCION' DataType = datString Size = 255 - BlobType = dabtUnknown - DisplayWidth = 0 DisplayLabel = 'Descripci'#243'n' - Alignment = taLeftJustify end item Name = 'FormasPago_TITULAR' DataType = datString Size = 255 - BlobType = dabtUnknown - DisplayWidth = 0 DisplayLabel = 'Titular' - Alignment = taLeftJustify end item Name = 'FormasPago_ENTIDAD' DataType = datString Size = 15 - BlobType = dabtUnknown - DisplayWidth = 0 DisplayLabel = 'C'#243'd. Entidad' - Alignment = taLeftJustify end item Name = 'FormasPago_SUCURSAL' DataType = datString Size = 15 - BlobType = dabtUnknown - DisplayWidth = 0 DisplayLabel = 'C'#243'd. Sucusal' - Alignment = taLeftJustify end item Name = 'FormasPago_DC' DataType = datString Size = 15 - BlobType = dabtUnknown - DisplayWidth = 0 DisplayLabel = 'DC' - Alignment = taLeftJustify end item Name = 'FormasPago_CUENTA' DataType = datString Size = 15 - BlobType = dabtUnknown - DisplayWidth = 0 DisplayLabel = 'C'#243'd. Cuenta' - Alignment = taLeftJustify - end - item - Name = 'FormasPagoPlazos_ID' - DataType = datInteger - BlobType = dabtUnknown - DisplayWidth = 0 - Alignment = taLeftJustify - end - item - Name = 'FormasPagoPlazos_ID_FORMA_PAGO' - DataType = datInteger - BlobType = dabtUnknown - DisplayWidth = 0 - Alignment = taLeftJustify end item Name = 'FormasPagoPlazos_NUM_DIAS' - DataType = datInteger - BlobType = dabtUnknown - DisplayWidth = 0 + DataType = datSmallInt DisplayLabel = 'Num. d'#237'as' - Alignment = taLeftJustify end item Name = 'FormasPagoPlazos_PORCENTAJE' DataType = datFloat - BlobType = dabtUnknown - DisplayWidth = 0 DisplayLabel = '% aplazado' Alignment = taRightJustify + end + item + Name = 'FormasPagoPlazos_ID' + DataType = datAutoInc + GeneratorName = 'GEN_FORMAS_PAGO_PLAZOS_ID' + Required = True + ServerAutoRefresh = True + end + item + Name = 'FormasPagoPlazos_ID_FORMA_PAGO' + DataType = datInteger + Required = True + end + item + Name = 'FormasPago_ID' + DataType = datAutoInc + GeneratorName = 'GEN_FORMAS_PAGO_ID' + Required = True + DisplayLabel = 'ID' + ServerAutoRefresh = True end> Left = 150 Top = 24 @@ -131,10 +106,7 @@ object srvFormasPago: TsrvFormasPago item Connection = 'IBX' TargetTable = 'FORMAS_PAGO' - SQL = - 'SELECT '#10' ID, REFERENCIA, DESCRIPCION, TITULAR, ENTIDAD, SUCUR' + - 'SAL, '#10' DC, CUENTA'#10' FROM'#10' FORMAS_PAGO' - StatementType = stSQL + StatementType = stAutoSQL ColumnMappings = < item DatasetField = 'ID' @@ -173,112 +145,62 @@ object srvFormasPago: TsrvFormasPago Fields = < item Name = 'ID' - DataType = datInteger - BlobType = dabtUnknown + DataType = datAutoInc + GeneratorName = 'GEN_FORMAS_PAGO_ID' + ServerAutoRefresh = True DictionaryEntry = 'FormasPago_ID' InPrimaryKey = True - Calculated = False - Lookup = False - LookupCache = False end item Name = 'REFERENCIA' DataType = datString Size = 255 - BlobType = dabtUnknown DictionaryEntry = 'FormasPago_REFERENCIA' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False end item Name = 'DESCRIPCION' DataType = datString Size = 255 - BlobType = dabtUnknown DictionaryEntry = 'FormasPago_DESCRIPCION' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False end item Name = 'TITULAR' DataType = datString Size = 255 - BlobType = dabtUnknown DictionaryEntry = 'FormasPago_TITULAR' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False end item Name = 'ENTIDAD' DataType = datString Size = 15 - BlobType = dabtUnknown DictionaryEntry = 'FormasPago_ENTIDAD' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False end item Name = 'SUCURSAL' DataType = datString Size = 15 - BlobType = dabtUnknown DictionaryEntry = 'FormasPago_SUCURSAL' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False end item Name = 'DC' DataType = datString Size = 15 - BlobType = dabtUnknown DictionaryEntry = 'FormasPago_DC' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False end item Name = 'CUENTA' DataType = datString Size = 15 - BlobType = dabtUnknown DictionaryEntry = 'FormasPago_CUENTA' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False end> - BusinessRulesClient.ScriptLanguage = rslPascalScript - BusinessRulesServer.ScriptLanguage = rslPascalScript end item - Params = < - item - Name = 'ID_FORMA_PAGO' - DataType = datInteger - BlobType = dabtUnknown - Value = '' - ParamType = daptInput - end> + Params = <> Statements = < item Connection = 'IBX' TargetTable = 'FORMAS_PAGO_PLAZOS' - SQL = - 'SELECT '#10' ID, ID_FORMA_PAGO, NUM_DIAS, PORCENTAJE'#10' FROM'#10' F' + - 'ORMAS_PAGO_PLAZOS'#10' WHERE'#10' FORMAS_PAGO_PLAZOS.ID_FORMA_PAGO =' + - ' :ID_FORMA_PAGO' - StatementType = stSQL + StatementType = stAutoSQL ColumnMappings = < item DatasetField = 'ID' @@ -301,407 +223,89 @@ object srvFormasPago: TsrvFormasPago Fields = < item Name = 'ID' - DataType = datInteger - BlobType = dabtUnknown + DataType = datAutoInc + GeneratorName = 'GEN_FORMAS_PAGO_PLAZOS_ID' + ServerAutoRefresh = True DictionaryEntry = 'FormasPagoPlazos_ID' InPrimaryKey = True - Calculated = False - Lookup = False - LookupCache = False end item Name = 'ID_FORMA_PAGO' DataType = datInteger - BlobType = dabtUnknown DictionaryEntry = 'FormasPagoPlazos_ID_FORMA_PAGO' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False end item Name = 'NUM_DIAS' - DataType = datInteger - BlobType = dabtUnknown + DataType = datSmallInt DictionaryEntry = 'FormasPagoPlazos_NUM_DIAS' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False end item Name = 'PORCENTAJE' DataType = datFloat - BlobType = dabtUnknown DictionaryEntry = 'FormasPagoPlazos_PORCENTAJE' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False end> - BusinessRulesClient.ScriptLanguage = rslPascalScript - BusinessRulesServer.ScriptLanguage = rslPascalScript end> - Commands = < + JoinDataTables = <> + UnionDataTables = <> + Commands = <> + RelationShips = < item - Params = < - item - Name = 'ID' - DataType = datInteger - BlobType = dabtUnknown - Value = '' - ParamType = daptInput - end - item - Name = 'REFERENCIA' - DataType = datString - Size = 255 - BlobType = dabtUnknown - Value = '' - ParamType = daptInput - end - item - Name = 'DESCRIPCION' - DataType = datString - Size = 255 - BlobType = dabtUnknown - Value = '' - ParamType = daptInput - end - item - Name = 'TITULAR' - DataType = datString - Size = 255 - BlobType = dabtUnknown - Value = '' - ParamType = daptInput - end - item - Name = 'ENTIDAD' - DataType = datString - Size = 15 - BlobType = dabtUnknown - Value = '' - ParamType = daptInput - end - item - Name = 'SUCURSAL' - DataType = datString - Size = 15 - BlobType = dabtUnknown - Value = '' - ParamType = daptInput - end - item - Name = 'DC' - DataType = datString - Size = 15 - BlobType = dabtUnknown - Value = '' - ParamType = daptInput - end - item - Name = 'CUENTA' - DataType = datString - Size = 15 - BlobType = dabtUnknown - Value = '' - ParamType = daptInput - end> - Statements = < - item - Connection = 'IBX' - TargetTable = 'FORMAS_PAGO' - SQL = - 'INSERT'#10' INTO FORMAS_PAGO'#10' (ID, REFERENCIA, DESCRIPCION, TITU' + - 'LAR, ENTIDAD, SUCURSAL, '#10' DC, CUENTA)'#10' VALUES'#10' (:ID, :RE' + - 'FERENCIA, :DESCRIPCION, :TITULAR, :ENTIDAD, '#10' :SUCURSAL, :DC' + - ', :CUENTA)' - StatementType = stSQL - ColumnMappings = <> - end> - Name = 'Insert_FormasPago' - end - item - Params = < - item - Name = 'OLD_ID' - DataType = datInteger - BlobType = dabtUnknown - Value = '' - ParamType = daptInput - end> - Statements = < - item - Connection = 'IBX' - TargetTable = 'FORMAS_PAGO' - SQL = 'DELETE '#10' FROM'#10' FORMAS_PAGO'#10' WHERE'#10' (ID = :OLD_ID)' - StatementType = stSQL - ColumnMappings = <> - end> - Name = 'Delete_FormasPago' - end - item - Params = < - item - Name = 'REFERENCIA' - DataType = datString - Size = 255 - BlobType = dabtUnknown - Value = '' - ParamType = daptInput - end - item - Name = 'DESCRIPCION' - DataType = datString - Size = 255 - BlobType = dabtUnknown - Value = '' - ParamType = daptInput - end - item - Name = 'TITULAR' - DataType = datString - Size = 255 - BlobType = dabtUnknown - Value = '' - ParamType = daptInput - end - item - Name = 'ENTIDAD' - DataType = datString - Size = 15 - BlobType = dabtUnknown - Value = '' - ParamType = daptInput - end - item - Name = 'SUCURSAL' - DataType = datString - Size = 15 - BlobType = dabtUnknown - Value = '' - ParamType = daptInput - end - item - Name = 'DC' - DataType = datString - Size = 15 - BlobType = dabtUnknown - Value = '' - ParamType = daptInput - end - item - Name = 'CUENTA' - DataType = datString - Size = 15 - BlobType = dabtUnknown - Value = '' - ParamType = daptInput - end - item - Name = 'OLD_ID' - DataType = datInteger - BlobType = dabtUnknown - Value = '' - ParamType = daptInput - end> - Statements = < - item - Connection = 'IBX' - TargetTable = 'FORMAS_PAGO' - SQL = - 'UPDATE FORMAS_PAGO'#10' SET '#10' REFERENCIA = :REFERENCIA,'#10' DESC' + - 'RIPCION = :DESCRIPCION, '#10' TITULAR = :TITULAR, '#10' ENTIDAD = ' + - ':ENTIDAD, '#10' SUCURSAL = :SUCURSAL, '#10' DC = :DC, '#10' CUENTA ' + - '= :CUENTA'#10' WHERE'#10' (ID = :OLD_ID)' - StatementType = stSQL - ColumnMappings = <> - end> - Name = 'Update_FormasPago' - end - item - Params = < - item - Name = 'ID' - DataType = datInteger - BlobType = dabtUnknown - Value = '' - ParamType = daptInput - end - item - Name = 'ID_FORMA_PAGO' - DataType = datInteger - BlobType = dabtUnknown - Value = '' - ParamType = daptInput - end - item - Name = 'NUM_DIAS' - DataType = datInteger - BlobType = dabtUnknown - Value = '' - ParamType = daptInput - end - item - Name = 'PORCENTAJE' - DataType = datFloat - BlobType = dabtUnknown - Value = '' - ParamType = daptInput - end> - Statements = < - item - Connection = 'IBX' - TargetTable = 'FORMAS_PAGO_PLAZOS' - SQL = - 'INSERT'#10' INTO FORMAS_PAGO_PLAZOS'#10' (ID, ID_FORMA_PAGO, NUM_DIA' + - 'S, PORCENTAJE)'#10' VALUES'#10' (:ID, :ID_FORMA_PAGO, :NUM_DIAS, :PO' + - 'RCENTAJE)' - StatementType = stSQL - ColumnMappings = <> - end> - Name = 'Insert_FormasPagoPlazos' - end - item - Params = < - item - Name = 'OLD_ID' - DataType = datInteger - BlobType = dabtUnknown - Value = '' - ParamType = daptInput - end> - Statements = < - item - Connection = 'IBX' - TargetTable = 'FORMAS_PAGO_PLAZOS' - SQL = 'DELETE '#10' FROM'#10' FORMAS_PAGO_PLAZOS'#10' WHERE'#10' (ID = :OLD_ID)' - StatementType = stSQL - ColumnMappings = <> - end> - Name = 'Delete_FormasPagoPlazos' - end - item - Params = < - item - Name = 'ID_FORMA_PAGO' - DataType = datInteger - BlobType = dabtUnknown - Value = '' - ParamType = daptInput - end - item - Name = 'NUM_DIAS' - DataType = datInteger - BlobType = dabtUnknown - Value = '' - ParamType = daptInput - end - item - Name = 'PORCENTAJE' - DataType = datFloat - BlobType = dabtUnknown - Value = '' - ParamType = daptInput - end - item - Name = 'OLD_ID' - DataType = datInteger - BlobType = dabtUnknown - Value = '' - ParamType = daptInput - end> - Statements = < - item - Connection = 'IBX' - TargetTable = 'FORMAS_PAGO_PLAZOS' - SQL = - 'UPDATE FORMAS_PAGO_PLAZOS'#10' SET '#10' ID_FORMA_PAGO = :ID_FORMA_P' + - 'AGO,'#10' NUM_DIAS = :NUM_DIAS, '#10' PORCENTAJE = :PORCENTAJE'#10' W' + - 'HERE'#10' (ID = :OLD_ID)' - StatementType = stSQL - ColumnMappings = <> - end> - Name = 'Update_FormasPagoPlazos' + Name = 'FK_FormasPagoPlazos_FormasPago' + MasterDatasetName = 'FormasPago' + MasterFields = 'ID' + DetailDatasetName = 'FormasPagoPlazos' + DetailFields = 'ID_FORMA_PAGO' + RelationshipType = rtMasterDetail end> - RelationShips = <> UpdateRules = < item Name = 'Insert FormasPago' DoUpdate = False - DoInsert = True DoDelete = False DatasetName = 'FormasPago' - FailureBehaviour = fbRaiseException + FailureBehavior = fbRaiseException end item Name = 'Insert FormasPagoPlazos' DoUpdate = False - DoInsert = True DoDelete = False DatasetName = 'FormasPagoPlazos' - FailureBehaviour = fbRaiseException + FailureBehavior = fbRaiseException end item Name = 'Update FormasPago' - DoUpdate = True DoInsert = False DoDelete = False DatasetName = 'FormasPago' - FailureBehaviour = fbRaiseException + FailureBehavior = fbRaiseException end item Name = 'Update FormasPagoPlazos' - DoUpdate = True DoInsert = False DoDelete = False DatasetName = 'FormasPagoPlazos' - FailureBehaviour = fbRaiseException + FailureBehavior = fbRaiseException end item Name = 'Delete FormasPagoPlazos' DoUpdate = False DoInsert = False - DoDelete = True DatasetName = 'FormasPagoPlazos' - FailureBehaviour = fbRaiseException + FailureBehavior = fbRaiseException end item Name = 'Delete FormasPago' DoUpdate = False DoInsert = False - DoDelete = True DatasetName = 'FormasPago' - FailureBehaviour = fbRaiseException + FailureBehavior = fbRaiseException end> + Version = 0 Left = 48 Top = 24 end - object DABINAdapter: TDABINAdapter + object Bin2DataStreamer: TDABin2DataStreamer Left = 48 - Top = 90 - end - object bpFormasPagoPlazos: TDABusinessProcessor - Schema = schFormasPago - InsertCommandName = 'Insert_FormasPagoPlazos' - DeleteCommandName = 'Delete_FormasPagoPlazos' - UpdateCommandName = 'Update_FormasPagoPlazos' - ReferencedDataset = 'FormasPagoPlazos' - ProcessorOptions = [poAutoGenerateRefreshDataset, poPrepareCommands] - UpdateMode = updWhereKeyOnly - Left = 248 - Top = 90 - end - object bpFormasPago: TDABusinessProcessor - Schema = schFormasPago - InsertCommandName = 'Insert_FormasPago' - DeleteCommandName = 'Delete_FormasPago' - UpdateCommandName = 'Update_FormasPago' - ReferencedDataset = 'FormasPago' - ProcessorOptions = [poAutoGenerateRefreshDataset, poPrepareCommands] - UpdateMode = updWhereKeyOnly - Left = 248 - Top = 24 + Top = 88 end end diff --git a/Source/Modulos/Formas de pago/Servidor/srvFormasPago_Impl.pas b/Source/Modulos/Formas de pago/Servidor/srvFormasPago_Impl.pas index 5d2ad57b..de4f2e72 100644 --- a/Source/Modulos/Formas de pago/Servidor/srvFormasPago_Impl.pas +++ b/Source/Modulos/Formas de pago/Servidor/srvFormasPago_Impl.pas @@ -12,27 +12,24 @@ interface uses {vcl:} Classes, SysUtils, {RemObjects:} uROClientIntf, uROTypes, uROServer, uROServerIntf, uROSessions, - {Ancestor Implementation:} DARemoteService_Impl, - {Used RODLs:} DataAbstract_Intf, + {Ancestor Implementation:} DataAbstractService_Impl, + {Used RODLs:} DataAbstract4_Intf, {Generated:} FactuGES_Intf, uDADataTable, uDABINAdapter, uDAClasses, - uDAScriptingProvider, uDABusinessProcessor; + uDAScriptingProvider, uDABusinessProcessor, uDADataStreamer, + uDABin2DataStreamer; type { TsrvFormasPago } - TsrvFormasPago = class(TDARemoteService, IsrvFormasPago) + TsrvFormasPago = class(TDataAbstractService, IsrvFormasPago) Diagrams: TDADiagrams; - DABINAdapter: TDABINAdapter; - bpFormasPagoPlazos: TDABusinessProcessor; - bpFormasPago: TDABusinessProcessor; + Bin2DataStreamer: TDABin2DataStreamer; schFormasPago: TDASchema; DataDictionary: TDADataDictionary; procedure DARemoteServiceCreate(Sender: TObject); - procedure DARemoteServiceBeforeAcquireConnection(Sender: TDARemoteService; - var ConnectionName: string); + procedure DataAbstractServiceBeforeAcquireConnection(aSender: TObject; + var aConnectionName: string); private protected - { IsrvFormasPago methods } - function GetNextAutoInc(const GeneratorName: String): Integer; end; implementation @@ -48,20 +45,15 @@ begin end; { srvFormasPago } -procedure TsrvFormasPago.DARemoteServiceBeforeAcquireConnection( - Sender: TDARemoteService; var ConnectionName: string); -begin - ConnectionName := dmServer.ConnectionName; -end; - procedure TsrvFormasPago.DARemoteServiceCreate(Sender: TObject); begin SessionManager := dmServer.SessionManager; end; -function TsrvFormasPago.GetNextAutoInc(const GeneratorName: String): Integer; +procedure TsrvFormasPago.DataAbstractServiceBeforeAcquireConnection( + aSender: TObject; var aConnectionName: string); begin - Result := uDatabaseUtils.GetNextAutoInc(GeneratorName) + ConnectionName := dmServer.ConnectionName; end; initialization diff --git a/Source/Modulos/Formas de pago/Views/FormasPago_view.dpk b/Source/Modulos/Formas de pago/Views/FormasPago_view.dpk index c0e9ab93..486d2ea6 100644 --- a/Source/Modulos/Formas de pago/Views/FormasPago_view.dpk +++ b/Source/Modulos/Formas de pago/Views/FormasPago_view.dpk @@ -22,18 +22,17 @@ package FormasPago_view; {$WRITEABLECONST OFF} {$MINENUMSIZE 1} {$IMAGEBASE $400000} -{$IMPLICITBUILD OFF} +{$IMPLICITBUILD ON} +{$DEFINE DEBUG} requires rtl, vcl, - dbrtl, - vcldb, - dsnap, - adortl, - DataAbstract_D10, + Base, + GUIBase, + ApplicationBase, FormasPago_controller, - JvCmpD10R; + JvCmpD11R; contains uEditorFormasPago in 'uEditorFormasPago.pas' {fEditorFormasPago: TfEditorFormasPago}, diff --git a/Source/Modulos/Formas de pago/Views/FormasPago_view.dpk.bak b/Source/Modulos/Formas de pago/Views/FormasPago_view.dpk.bak new file mode 100644 index 00000000..09b0d355 --- /dev/null +++ b/Source/Modulos/Formas de pago/Views/FormasPago_view.dpk.bak @@ -0,0 +1,38 @@ +package FormasPago_view; + +{$R *.res} +{$ALIGN 8} +{$ASSERTIONS ON} +{$BOOLEVAL OFF} +{$DEBUGINFO ON} +{$EXTENDEDSYNTAX ON} +{$IMPORTEDDATA ON} +{$IOCHECKS ON} +{$LOCALSYMBOLS ON} +{$LONGSTRINGS ON} +{$OPENSTRINGS ON} +{$OPTIMIZATION ON} +{$OVERFLOWCHECKS OFF} +{$RANGECHECKS OFF} +{$REFERENCEINFO ON} +{$SAFEDIVIDE OFF} +{$STACKFRAMES OFF} +{$TYPEDADDRESS OFF} +{$VARSTRINGCHECKS ON} +{$WRITEABLECONST OFF} +{$MINENUMSIZE 1} +{$IMAGEBASE $400000} +{$IMPLICITBUILD OFF} + +requires + rtl, + vcl, + FormasPago_controller, + JvCmpD11R; + +contains + uEditorFormasPago in 'uEditorFormasPago.pas' {fEditorFormasPago: TfEditorFormasPago}, + uFormasPagoViewRegister in 'uFormasPagoViewRegister.pas', + uEditorFormaPago in 'uEditorFormaPago.pas' {fEditorFormaPago}; + +end. diff --git a/Source/Modulos/Formas de pago/Views/FormasPago_view.dproj b/Source/Modulos/Formas de pago/Views/FormasPago_view.dproj new file mode 100644 index 00000000..c34c9dcb --- /dev/null +++ b/Source/Modulos/Formas de pago/Views/FormasPago_view.dproj @@ -0,0 +1,550 @@ + + + + {e3d36a6f-7004-4c89-9f3d-f2d77e386d1b} + FormasPago_view.dpk + Debug + AnyCPU + DCC32 + ..\..\..\..\Output\Debug\Cliente\FormasPago_view.bpl + + + 7.0 + False + False + 0 + .\ + .\ + .\ + ..\..\..\..\Output\Debug\Cliente + ..\..\Lib + ..\..\..\Lib;..\..\Lib + ..\..\..\Lib;..\..\Lib + ..\..\..\Lib;..\..\Lib + ..\..\..\Lib;..\..\Lib + RELEASE + + + 7.0 + .\ + .\ + .\ + ..\..\..\..\Output\Debug\Cliente + ..\..\Lib + ..\..\..\Lib;..\..\Lib + ..\..\..\Lib;..\..\Lib + ..\..\..\Lib;..\..\Lib + ..\..\..\Lib;..\..\Lib + DEBUG + + + Delphi.Personality + Package + +FalseTrueFalseTrueFalseFalseTrueFalse1000FalseFalseFalseFalseFalse308212521.0.0.01.0.0.0FormasPago_view.dpk + + + + + MainSource + + + + + + + + +
fEditorFormaPago
+
+ +
fEditorFormasPago
+
+ + +
+
+ + diff --git a/Source/Modulos/Formas de pago/Views/FormasPago_view.identcache b/Source/Modulos/Formas de pago/Views/FormasPago_view.identcache new file mode 100644 index 00000000..bb51be02 Binary files /dev/null and b/Source/Modulos/Formas de pago/Views/FormasPago_view.identcache differ diff --git a/Source/Modulos/Formas de pago/Views/FormasPago_view.rc b/Source/Modulos/Formas de pago/Views/FormasPago_view.rc index e69de29b..153736af 100644 --- a/Source/Modulos/Formas de pago/Views/FormasPago_view.rc +++ b/Source/Modulos/Formas de pago/Views/FormasPago_view.rc @@ -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 diff --git a/Source/Modulos/Formas de pago/Views/FormasPago_view.res b/Source/Modulos/Formas de pago/Views/FormasPago_view.res index 36f26e23..8b251f31 100644 Binary files a/Source/Modulos/Formas de pago/Views/FormasPago_view.res and b/Source/Modulos/Formas de pago/Views/FormasPago_view.res differ diff --git a/Source/Modulos/Formas de pago/Views/uEditorFormaPago.dfm b/Source/Modulos/Formas de pago/Views/uEditorFormaPago.dfm index 040698b9..b774ef85 100644 --- a/Source/Modulos/Formas de pago/Views/uEditorFormaPago.dfm +++ b/Source/Modulos/Formas de pago/Views/uEditorFormaPago.dfm @@ -5,7 +5,7 @@ object fEditorFormaPago: TfEditorFormaPago BorderIcons = [biSystemMenu] BorderStyle = bsSingle Caption = 'Forma de pago' - ClientHeight = 309 + ClientHeight = 352 ClientWidth = 404 Color = clBtnFace Font.Charset = DEFAULT_CHARSET @@ -76,20 +76,20 @@ object fEditorFormaPago: TfEditorFormaPago end object Bevel4: TBevel Left = 8 - Top = 245 + Top = 290 Width = 388 Height = 10 Shape = bsBottomLine end object JvEnterAsTab1: TJvEnterAsTab Left = 137 - Top = 261 + Top = 306 Width = 28 Height = 28 end object bAceptar: TButton Left = 234 - Top = 269 + Top = 314 Width = 75 Height = 23 Action = actAceptar @@ -97,7 +97,7 @@ object fEditorFormaPago: TfEditorFormaPago end object bCancelar: TButton Left = 319 - Top = 269 + Top = 314 Width = 75 Height = 23 Action = actCancelar @@ -144,13 +144,14 @@ object fEditorFormaPago: TfEditorFormaPago Left = 32 Top = 134 Width = 252 - Height = 105 + Height = 150 TabOrder = 2 LookAndFeel.Kind = lfStandard LookAndFeel.NativeStyle = True object ListaFormasPagoDBTableView1: TcxGridDBTableView NavigatorButtons.ConfirmDelete = False DataController.DataSource = dsPlazos + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] DataController.Summary.DefaultGroupSummaryItems = <> DataController.Summary.FooterSummaryItems = <> DataController.Summary.SummaryGroups = <> @@ -184,7 +185,7 @@ object fEditorFormaPago: TfEditorFormaPago end object ActionList1: TActionList Left = 88 - Top = 255 + Top = 300 object actAnadir: TAction Caption = '&A'#241'adir' OnExecute = actAnadirExecute @@ -213,10 +214,10 @@ object fEditorFormaPago: TfEditorFormaPago end object dsFormaPago: TDADataSource Left = 48 - Top = 255 + Top = 300 end object dsPlazos: TDADataSource Left = 8 - Top = 255 + Top = 300 end end diff --git a/Source/Modulos/Formas de pago/Views/uEditorFormaPago.pas b/Source/Modulos/Formas de pago/Views/uEditorFormaPago.pas index 8b16e476..242236f8 100644 --- a/Source/Modulos/Formas de pago/Views/uEditorFormaPago.pas +++ b/Source/Modulos/Formas de pago/Views/uEditorFormaPago.pas @@ -34,7 +34,7 @@ uses JvComponent, JvEnterTab, cxStyles, cxCustomData, cxGraphics, cxFilter, cxData, cxDataStorage, cxEdit, cxDBData, cxSpinEdit, cxGridCustomTableView, cxGridTableView, cxGridDBTableView, cxGridLevel, cxClasses, cxControls, - cxGridCustomView, cxGrid; + cxGridCustomView, cxGrid, uDAInterfaces; type TfEditorFormaPago = class(TForm, IEditorFormaPago) @@ -95,7 +95,7 @@ implementation { TfEditorFormasPago } uses - uDialogUtils, uDataModuleFormasPago; + Dialogs, uDialogUtils, uDataModuleFormasPago; function TfEditorFormaPago.GetFormaPago: IBizFormaPago; begin @@ -153,8 +153,12 @@ end; procedure TfEditorFormaPago.actAceptarExecute(Sender: TObject); begin + if (ListaFormasPago.ActiveView.DataController.RecordCount = 0) then + if (ShowConfirmMessage('Forma de pago sin plazos', 'No ha indicado plazos de pago para esta forma de pago por lo tanto no se podrán generarar los recibos correspondientes.' + #10#13 + '¿Desea continuar guardando la forma de pago?') = IDNO) then + Exit; + if FController.Guardar(FFormaPago) then - actCerrar.Execute; + actCerrar.Execute; end; procedure TfEditorFormaPago.actCancelarExecute(Sender: TObject); diff --git a/Source/Modulos/Formas de pago/Views/uEditorFormasPago.dfm b/Source/Modulos/Formas de pago/Views/uEditorFormasPago.dfm index 10686a6d..cd908f93 100644 --- a/Source/Modulos/Formas de pago/Views/uEditorFormasPago.dfm +++ b/Source/Modulos/Formas de pago/Views/uEditorFormasPago.dfm @@ -44,10 +44,6 @@ object fEditorFormasPago: TfEditorFormasPago TabOrder = 0 object TabSheet1: TTabSheet Caption = 'Formas de pago' - ExplicitLeft = 0 - ExplicitTop = 0 - ExplicitWidth = 0 - ExplicitHeight = 0 object Label1: TLabel Left = 6 Top = 12 @@ -105,7 +101,7 @@ object fEditorFormasPago: TfEditorFormasPago Expanded = False FieldName = 'DESCRIPCION' Title.Caption = 'Descripci'#243'n' - Width = 151 + Width = 154 Visible = True end> end diff --git a/Source/Modulos/Formas de pago/Views/uEditorFormasPago.pas b/Source/Modulos/Formas de pago/Views/uEditorFormasPago.pas index c5076b03..3d3292ba 100644 --- a/Source/Modulos/Formas de pago/Views/uEditorFormasPago.pas +++ b/Source/Modulos/Formas de pago/Views/uEditorFormasPago.pas @@ -28,7 +28,7 @@ interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, uIEditorFormasPago, uBizFormasPago, uFormasPagoController, DB, uDADataTable, - ActnList, Grids, DBGrids, StdCtrls, ComCtrls; + ActnList, Grids, DBGrids, StdCtrls, ComCtrls, uDAInterfaces; type TfEditorFormasPago = class(TForm, IEditorFormasPago) diff --git a/Source/Modulos/Tipos de IVA/Controller/TiposIVA_controller.dpk b/Source/Modulos/Tipos de IVA/Controller/TiposIVA_controller.dpk index ea4de4d0..9c7a431f 100644 --- a/Source/Modulos/Tipos de IVA/Controller/TiposIVA_controller.dpk +++ b/Source/Modulos/Tipos de IVA/Controller/TiposIVA_controller.dpk @@ -22,28 +22,14 @@ package TiposIVA_controller; {$WRITEABLECONST OFF} {$MINENUMSIZE 1} {$IMAGEBASE $400000} -{$IMPLICITBUILD OFF} +{$IMPLICITBUILD ON} requires rtl, vcl, - dbrtl, - cxLibraryD10, - dxThemeD10, - dsnap, - vcldb, - adortl, - dxBarExtItemsD10, - dxComnD10, - dxBarD10, - dxLayoutControlD10, - dxPSCoreD10, - dxPScxCommonD10, - dxPScxGridLnkD10, - dxPsPrVwAdvD10, - DataAbstract_D10, Base, - ControllerBase, + GUIBase, + ApplicationBase, TiposIVA_model, TiposIVA_data; diff --git a/Source/Modulos/Tipos de IVA/Controller/TiposIVA_controller.dpk.bak b/Source/Modulos/Tipos de IVA/Controller/TiposIVA_controller.dpk.bak new file mode 100644 index 00000000..e03caa7a --- /dev/null +++ b/Source/Modulos/Tipos de IVA/Controller/TiposIVA_controller.dpk.bak @@ -0,0 +1,40 @@ +package TiposIVA_controller; + +{$R *.res} +{$ALIGN 8} +{$ASSERTIONS ON} +{$BOOLEVAL OFF} +{$DEBUGINFO ON} +{$EXTENDEDSYNTAX ON} +{$IMPORTEDDATA ON} +{$IOCHECKS ON} +{$LOCALSYMBOLS ON} +{$LONGSTRINGS ON} +{$OPENSTRINGS ON} +{$OPTIMIZATION ON} +{$OVERFLOWCHECKS OFF} +{$RANGECHECKS OFF} +{$REFERENCEINFO ON} +{$SAFEDIVIDE OFF} +{$STACKFRAMES OFF} +{$TYPEDADDRESS OFF} +{$VARSTRINGCHECKS ON} +{$WRITEABLECONST OFF} +{$MINENUMSIZE 1} +{$IMAGEBASE $400000} +{$IMPLICITBUILD OFF} + +requires + rtl, + vcl, + Base, + ControllerBase, + TiposIVA_model, + TiposIVA_data; + +contains + uTiposIVAController in 'uTiposIVAController.pas', + uIEditorTiposIVA in 'View\uIEditorTiposIVA.pas', + uIEditorTipoIVA in 'View\uIEditorTipoIVA.pas'; + +end. diff --git a/Source/Modulos/Tipos de IVA/Controller/TiposIVA_controller.dproj b/Source/Modulos/Tipos de IVA/Controller/TiposIVA_controller.dproj new file mode 100644 index 00000000..636e3a5c --- /dev/null +++ b/Source/Modulos/Tipos de IVA/Controller/TiposIVA_controller.dproj @@ -0,0 +1,62 @@ + + + + {326821d3-56af-487f-bcd2-c500b144884e} + TiposIVA_controller.dpk + Debug + AnyCPU + DCC32 + ..\..\..\..\Output\Debug\Cliente\TiposIVA_controller.bpl + + + 7.0 + False + False + 0 + .\ + .\ + .\ + ..\..\..\..\Output\Debug\Cliente + ..\..\Lib + ..\..\..\Lib;..\..\Lib + ..\..\..\Lib;..\..\Lib + ..\..\..\Lib;..\..\Lib + ..\..\..\Lib;..\..\Lib + RELEASE + + + 7.0 + .\ + .\ + .\ + ..\..\..\..\Output\Debug\Cliente + ..\..\Lib + ..\..\..\Lib;..\..\Lib + ..\..\..\Lib;..\..\Lib + ..\..\..\Lib;..\..\Lib + ..\..\..\Lib;..\..\Lib + + + Delphi.Personality + Package + +FalseTrueFalseTrueFalseFalseTrueFalse1000FalseFalseFalseFalseFalse308212521.0.0.01.0.0.0TiposIVA_controller.dpk + + + + + MainSource + + + + + + + + + + + + + + diff --git a/Source/Modulos/Tipos de IVA/Controller/TiposIVA_controller.identcache b/Source/Modulos/Tipos de IVA/Controller/TiposIVA_controller.identcache new file mode 100644 index 00000000..688e3018 Binary files /dev/null and b/Source/Modulos/Tipos de IVA/Controller/TiposIVA_controller.identcache differ diff --git a/Source/Modulos/Tipos de IVA/Controller/TiposIVA_controller.rc b/Source/Modulos/Tipos de IVA/Controller/TiposIVA_controller.rc index e69de29b..153736af 100644 --- a/Source/Modulos/Tipos de IVA/Controller/TiposIVA_controller.rc +++ b/Source/Modulos/Tipos de IVA/Controller/TiposIVA_controller.rc @@ -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 diff --git a/Source/Modulos/Tipos de IVA/Controller/TiposIVA_controller.res b/Source/Modulos/Tipos de IVA/Controller/TiposIVA_controller.res index 36f26e23..8b251f31 100644 Binary files a/Source/Modulos/Tipos de IVA/Controller/TiposIVA_controller.res and b/Source/Modulos/Tipos de IVA/Controller/TiposIVA_controller.res differ diff --git a/Source/Modulos/Tipos de IVA/Controller/uTiposIVAController.pas b/Source/Modulos/Tipos de IVA/Controller/uTiposIVAController.pas index c64c514b..cfc673ff 100644 --- a/Source/Modulos/Tipos de IVA/Controller/uTiposIVAController.pas +++ b/Source/Modulos/Tipos de IVA/Controller/uTiposIVAController.pas @@ -54,7 +54,6 @@ type function _Vacio : IBizTipoIVA; function ValidarTipoIVA(ATipoIVA: IBizTipoIVA): Boolean; procedure AsignarDataModule; - procedure AsignarID(ATipoIVA: IBizTipoIVA; const IDNuevo: Integer); public constructor Create; virtual; @@ -97,20 +96,6 @@ begin FDataModule := TDataModuleTiposIVA.Create(Nil); end; -procedure TTiposIVAController.AsignarID(ATipoIVA: IBizTipoIVA; - const IDNuevo: Integer); -begin - if not Assigned(ATipoIVA) then - raise Exception.Create ('TipoIVA no asignado'); - - if ATipoIVA.EsNuevo then - begin - ATipoIVA.Edit; - ATipoIVA.ID := IDNuevo; - ATipoIVA.Post; - end; -end; - function TTiposIVAController.BuscarTodos: IBizTipoIVA; begin Result := FDataModule.GetItems; @@ -289,8 +274,6 @@ begin end; function TTiposIVAController.Guardar(ATipoIVA: IBizTipoIVA): Boolean; -var - NuevoID : Integer; begin Result := False; @@ -298,14 +281,7 @@ begin begin ShowHourglassCursor; try - if ATipoIVA.EsNuevo then - NuevoID := FDataModule.GetNextID(ATipoIVA.DataTable.LogicalName) - else - NuevoID := ATipoIVA.ID; - - AsignarID(ATipoIVA, NuevoID); ATipoIVA.DataTable.ApplyUpdates; - Result := True; finally HideHourglassCursor; @@ -336,7 +312,7 @@ var ASeleccionados : IBizTipoIVA; begin ASeleccionados := (Self.Buscar(ID_NULO) as IBizTipoIVA); - CopyDataTable(ATipoIVA.DataTable, ASeleccionados.DataTable, True); + CopyDataTable2(ATipoIVA.DataTable, ASeleccionados.DataTable, True); Result := ASeleccionados; end; diff --git a/Source/Modulos/Tipos de IVA/Data/TiposIVA_data.dpk b/Source/Modulos/Tipos de IVA/Data/TiposIVA_data.dpk index 1552bd67..e4f9fb2b 100644 --- a/Source/Modulos/Tipos de IVA/Data/TiposIVA_data.dpk +++ b/Source/Modulos/Tipos de IVA/Data/TiposIVA_data.dpk @@ -22,26 +22,14 @@ package TiposIVA_data; {$WRITEABLECONST OFF} {$MINENUMSIZE 1} {$IMAGEBASE $400000} -{$IMPLICITBUILD OFF} - +{$IMPLICITBUILD ON} requires rtl, vcl, - dbrtl, - dsnap, - vcldb, - adortl, - vcljpg, - cxLibraryD10, - dxThemeD10, - cxEditorsD10, - cxDataD10, - cxExtEditorsD10, - cxGridD10, - cxPageControlD10, - DataAbstract_D10, Base, + GUIBase, + ApplicationBase, TiposIVA_model; contains diff --git a/Source/Modulos/Tipos de IVA/Data/TiposIVA_data.dpk.bak b/Source/Modulos/Tipos de IVA/Data/TiposIVA_data.dpk.bak new file mode 100644 index 00000000..06e81a58 --- /dev/null +++ b/Source/Modulos/Tipos de IVA/Data/TiposIVA_data.dpk.bak @@ -0,0 +1,37 @@ +package TiposIVA_data; + +{$R *.res} +{$ALIGN 8} +{$ASSERTIONS ON} +{$BOOLEVAL OFF} +{$DEBUGINFO ON} +{$EXTENDEDSYNTAX ON} +{$IMPORTEDDATA ON} +{$IOCHECKS ON} +{$LOCALSYMBOLS ON} +{$LONGSTRINGS ON} +{$OPENSTRINGS ON} +{$OPTIMIZATION ON} +{$OVERFLOWCHECKS OFF} +{$RANGECHECKS OFF} +{$REFERENCEINFO ON} +{$SAFEDIVIDE OFF} +{$STACKFRAMES OFF} +{$TYPEDADDRESS OFF} +{$VARSTRINGCHECKS ON} +{$WRITEABLECONST OFF} +{$MINENUMSIZE 1} +{$IMAGEBASE $400000} +{$IMPLICITBUILD OFF} + + +requires + rtl, + vcl, + Base, + TiposIVA_model; + +contains + uDataModuleTiposIVA in 'uDataModuleTiposIVA.pas' {DataModuleTiposIVA: TDAClientDataModule}; + +end. diff --git a/Source/Modulos/Tipos de IVA/Data/TiposIVA_data.dproj b/Source/Modulos/Tipos de IVA/Data/TiposIVA_data.dproj new file mode 100644 index 00000000..66967fd3 --- /dev/null +++ b/Source/Modulos/Tipos de IVA/Data/TiposIVA_data.dproj @@ -0,0 +1,546 @@ + + + + {55d06c67-fc74-4d88-8787-801dee872bb3} + TiposIVA_data.dpk + Debug + AnyCPU + DCC32 + ..\..\..\..\Output\Debug\Cliente\TiposIVA_data.bpl + + + 7.0 + False + False + 0 + 3 + .\ + .\ + .\ + ..\..\..\..\Output\Debug\Cliente + ..\..\Lib + ..\..\..\Lib;..\..\Lib + ..\..\..\Lib;..\..\Lib + ..\..\..\Lib;..\..\Lib + ..\..\..\Lib;..\..\Lib + RELEASE + + + 7.0 + 3 + .\ + .\ + .\ + ..\..\..\..\Output\Debug\Cliente + ..\..\Lib + ..\..\..\Lib;..\..\Lib + ..\..\..\Lib;..\..\Lib + ..\..\..\Lib;..\..\Lib + ..\..\..\Lib;..\..\Lib + + + Delphi.Personality + Package + +FalseTrueFalseTrueFalseFalseTrueFalse1000FalseFalseFalseFalseFalse308212521.0.0.01.0.0.0TiposIVA_data.dpk + + + + + MainSource + + + + + + + + +
DataModuleTiposIVA
+
+
+
+ + diff --git a/Source/Modulos/Tipos de IVA/Data/TiposIVA_data.drc b/Source/Modulos/Tipos de IVA/Data/TiposIVA_data.drc index 7642ac97..e82889d5 100644 --- a/Source/Modulos/Tipos de IVA/Data/TiposIVA_data.drc +++ b/Source/Modulos/Tipos de IVA/Data/TiposIVA_data.drc @@ -1,5 +1,5 @@ -/* VER180 - Generated by the Borland Delphi Pascal Compiler +/* VER185 + Generated by the CodeGear Delphi Pascal Compiler because -GD or --drc was supplied to the compiler. This file contains compiler-generated resources that @@ -12,3 +12,6 @@ STRINGTABLE BEGIN END +/* C:\Codigo Tecsitel\Source\Modulos\Tipos de IVA\Data\uDataModuleTiposIVA.dfm */ +/* C:\Codigo Tecsitel\Source\Modulos\Tipos de IVA\Data\TiposIVA_data.res */ +/* C:\DOCUME~1\Usuario\CONFIG~1\Temp\dtf1E.tmp */ diff --git a/Source/Modulos/Tipos de IVA/Data/TiposIVA_data.identcache b/Source/Modulos/Tipos de IVA/Data/TiposIVA_data.identcache new file mode 100644 index 00000000..cd45a0a9 Binary files /dev/null and b/Source/Modulos/Tipos de IVA/Data/TiposIVA_data.identcache differ diff --git a/Source/Modulos/Tipos de IVA/Data/TiposIVA_data.rc b/Source/Modulos/Tipos de IVA/Data/TiposIVA_data.rc index e69de29b..153736af 100644 --- a/Source/Modulos/Tipos de IVA/Data/TiposIVA_data.rc +++ b/Source/Modulos/Tipos de IVA/Data/TiposIVA_data.rc @@ -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 diff --git a/Source/Modulos/Tipos de IVA/Data/TiposIVA_data.res b/Source/Modulos/Tipos de IVA/Data/TiposIVA_data.res index 36f26e23..1641339f 100644 Binary files a/Source/Modulos/Tipos de IVA/Data/TiposIVA_data.res and b/Source/Modulos/Tipos de IVA/Data/TiposIVA_data.res differ diff --git a/Source/Modulos/Tipos de IVA/Data/uDataModuleTiposIVA.dfm b/Source/Modulos/Tipos de IVA/Data/uDataModuleTiposIVA.dfm index 156cbb56..f5075d59 100644 --- a/Source/Modulos/Tipos de IVA/Data/uDataModuleTiposIVA.dfm +++ b/Source/Modulos/Tipos de IVA/Data/uDataModuleTiposIVA.dfm @@ -1,243 +1,81 @@ object DataModuleTiposIVA: TDataModuleTiposIVA OldCreateOrder = True OnCreate = DAClientDataModuleCreate - RemoteService = RORemoteService - Adapter = DABinAdapter - SchemaCall.MethodName = 'GetSchemaAsXML' - SchemaCall.Params = < - item - Name = 'Result' - ParamType = fResult - DataType = rtString - end> - Height = 414 - Width = 518 + Height = 173 + Width = 378 object RORemoteService: TRORemoteService + Message = dmConexion.ROMessage + Channel = dmConexion.ROChannel ServiceName = 'srvTiposIVA' - Message = ROBinMessage1 - Channel = ROWinInetHTTPChannel1 Left = 48 Top = 24 end - object DABinAdapter: TDABINAdapter - Left = 48 - Top = 80 + object rda_TiposIVA: TDARemoteDataAdapter + GetSchemaCall.RemoteService = RORemoteService + GetDataCall.RemoteService = RORemoteService + UpdateDataCall.RemoteService = RORemoteService + GetScriptsCall.RemoteService = RORemoteService + RemoteService = RORemoteService + DataStreamer = Bin2DataStreamer + Left = 203 + Top = 23 end - object DADesigntimeCall1: TDADesigntimeCall - RemoteRequest.MethodName = 'Login' - RemoteRequest.Params = < - item - Name = 'Result' - ParamType = fResult - DataType = rtBoolean - end - item - Name = 'User' - ParamType = fIn - DataType = rtString - Value = 'Administrador' - end - item - Name = 'Password' - ParamType = fIn - DataType = rtString - Value = '1' - end - item - Name = 'LoginInfo' - ParamType = fOut - DataType = rtUserDefined - UserClassName = 'TRdxLoginInfo' - end> - RemoteService = LoginRemoteService + object Bin2DataStreamer: TDABin2DataStreamer Left = 48 - Top = 160 + Top = 96 end - object LoginRemoteService: TRORemoteService - ServiceName = 'srvLogin' - Message = ROBinMessage1 - Channel = ROWinInetHTTPChannel1 - Left = 48 - Top = 216 - end - object ROWinInetHTTPChannel1: TROWinInetHTTPChannel - ServerLocators = <> - DispatchOptions = [] - ProbeServers = False - ProbeFrequency = 60000 - UserAgent = 'RemObjects SDK' - TargetURL = 'http://localhost:8099/bin' - Left = 48 - Top = 272 - end - object ROBinMessage1: TROBinMessage - Left = 48 - Top = 324 - end - object tbl_TiposIVA: TDACDSDataTable + object tbl_TiposIVA: TDAMemDataTable RemoteUpdatesOptions = [] Fields = < item Name = 'ID' - DataType = datInteger - BlobType = dabtUnknown - DisplayWidth = 0 - DisplayLabel = 'TIPOS_IVA_ID' - Alignment = taLeftJustify - DictionaryEntry = 'TIPOS_IVA_ID' + DataType = datAutoInc + GeneratorName = 'GEN_TIPOS_IVA_ID' + ServerAutoRefresh = True + DictionaryEntry = 'TiposIVA_ID' InPrimaryKey = True - Calculated = False - Lookup = False - LookupCache = False end item Name = 'REFERENCIA' DataType = datString Size = 255 - BlobType = dabtUnknown - DisplayWidth = 0 DisplayLabel = 'Referencia' - Alignment = taLeftJustify DictionaryEntry = 'TIPOS_IVA_REFERENCIA' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False end item Name = 'DESCRIPCION' DataType = datString Size = 255 - BlobType = dabtUnknown - DisplayWidth = 0 - DisplayLabel = 'Descripci'#243'n' - Alignment = taLeftJustify + DisplayLabel = 'Descripci'#195#179'n' DictionaryEntry = 'TIPOS_IVA_DESCRIPCION' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False end item Name = 'IVA' DataType = datFloat - BlobType = dabtUnknown - DisplayWidth = 0 DisplayLabel = '% IVA' - DisplayFormat = ',0.00 %;-,0.00 %' Alignment = taRightJustify DictionaryEntry = 'TIPOS_IVA_IVA' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False end item Name = 'RE' DataType = datFloat - BlobType = dabtUnknown - DisplayWidth = 0 DisplayLabel = '% RE' - DisplayFormat = ',0.00 %;-,0.00 %' Alignment = taRightJustify DictionaryEntry = 'TIPOS_IVA_RE' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False end> Params = <> - MasterMappingMode = mmDataRequest StreamingOptions = [soDisableEventsWhileStreaming] - SchemaCall.MethodName = 'GetDatasetSchema' - SchemaCall.Params = < - item - Name = 'Result' - ParamType = fResult - DataType = rtBinary - end - item - Name = 'aDatasetName' - ParamType = fIn - DataType = rtString - Value = 'TiposIVA' - end> - DataRequestCall.MethodName = 'GetDatasetDataEx' - DataRequestCall.Params = < - item - Name = 'Result' - ParamType = fResult - DataType = rtBinary - end - item - Name = 'DatasetName' - ParamType = fIn - DataType = rtString - Value = 'TiposIVA' - end - item - Name = 'Params' - ParamType = fIn - DataType = rtUserDefined - UserClassName = 'TDADatasetParamArray' - end - item - Name = 'UserFilter' - ParamType = fIn - DataType = rtString - Value = '' - end - item - Name = 'IncludeSchema' - ParamType = fIn - DataType = rtBoolean - Value = False - end - item - Name = 'MaxRecords' - ParamType = fIn - DataType = rtInteger - Value = -1 - end> - DataUpdateCall.MethodName = 'UpdateData' - DataUpdateCall.Params = < - item - Name = 'Result' - ParamType = fResult - DataType = rtBinary - end - item - Name = 'Delta' - ParamType = fIn - DataType = rtBinary - end> - ScriptCall.MethodName = 'GetDatasetScripts' - ScriptCall.Params = < - item - Name = 'Result' - ParamType = fResult - DataType = rtString - Value = '' - end - item - Name = 'DatasetNames' - ParamType = fIn - DataType = rtString - Value = 'TiposIVA' - end> - ReadOnly = False - RemoteService = RORemoteService - Adapter = DABinAdapter + RemoteDataAdapter = rda_TiposIVA DetailOptions = [dtCascadeOpenClose, dtCascadeApplyUpdates, dtAutoFetch, dtCascadeDelete, dtCascadeUpdate, dtDisableLogOfCascadeDeletes, dtDisableLogOfCascadeUpdates, dtIncludeInAllInOneFetch] MasterOptions = [moCascadeOpenClose, moCascadeApplyUpdates, moCascadeDelete, moCascadeUpdate, moDisableLogOfCascadeDeletes, moDisableLogOfCascadeUpdates] LogicalName = 'TiposIVA' - IndexDefs = <> - Left = 216 + Left = 296 Top = 24 end object ds_TiposIVA: TDADataSource + DataSet = tbl_TiposIVA.Dataset DataTable = tbl_TiposIVA - Left = 216 - Top = 88 + Left = 296 + Top = 96 end end diff --git a/Source/Modulos/Tipos de IVA/Data/uDataModuleTiposIVA.pas b/Source/Modulos/Tipos de IVA/Data/uDataModuleTiposIVA.pas index a56ab23e..fde2aa0d 100644 --- a/Source/Modulos/Tipos de IVA/Data/uDataModuleTiposIVA.pas +++ b/Source/Modulos/Tipos de IVA/Data/uDataModuleTiposIVA.pas @@ -26,39 +26,26 @@ unit uDataModuleTiposIVA; interface uses - SysUtils, Classes, DB, uDAClientDataModule, uDADataTable, uDABINAdapter, + SysUtils, Classes, DB, uDADataTable, uDABINAdapter, uDAScriptingProvider, uDACDSDataTable, uROWinInetHttpChannel, uROTypes, - uROServiceComponent, uRORemoteService, uROClient, uROBinMessage, + uRORemoteService, uROClient, uROBinMessage, uDADesigntimeCall, - uIDataModuleTiposIVA, uBizTiposIVA; + uIDataModuleTiposIVA, uBizTiposIVA, uDADataStreamer, uDARemoteDataAdapter, + uDAInterfaces, uRODynamicRequest, uDABin2DataStreamer, uDAMemDataTable; type - TDataModuleTiposIVA = class(TDAClientDataModule, IDataModuleTiposIVA) + TDataModuleTiposIVA = class(TDataModule, IDataModuleTiposIVA) RORemoteService: TRORemoteService; - DABinAdapter: TDABINAdapter; - DADesigntimeCall1: TDADesigntimeCall; - LoginRemoteService: TRORemoteService; - ROWinInetHTTPChannel1: TROWinInetHTTPChannel; - ROBinMessage1: TROBinMessage; - tbl_TiposIVA: TDACDSDataTable; + rda_TiposIVA: TDARemoteDataAdapter; + Bin2DataStreamer: TDABin2DataStreamer; + tbl_TiposIVA: TDAMemDataTable; ds_TiposIVA: TDADataSource; procedure DAClientDataModuleCreate(Sender: TObject); - protected - function DarNombreGenerador(DataSetName: String): String; virtual; - function _CloneDataTable (const ADataTable : TDACDSDataTable): TDACDSDataTable; overload; - - // Descomentar si tiene detalles - // function _GetDetalles: IBizDetalles; public - function GetNextID(const DataSetName : String) : Integer; function GetItems: IBizTipoIVA; function GetItem(const ID : Integer) : IBizTipoIVA; function NewItem : IBizTipoIVA; - - // Descomentar si tiene informe - // function GetReport(const ATipoIVAID: Integer): Binary; - end; implementation @@ -66,85 +53,26 @@ implementation {$R *.DFM} uses - FactuGES_Intf, uDataModuleConexion, uDataTableUtils, cxControls, uDAInterfaces, + FactuGES_Intf, uDataModuleConexion, uDataTableUtils, cxControls, schTiposIVAClient_Intf; { TDataModuleTiposIVA } - -// Descomentar si tiene informe -// function TDataModuleTiposIVA.GetReport(const ATipoIVAID: Integer): Binary; -// begin -// Result := (RORemoteService as IsrvTiposIVA).GenerateReport(ATipoIVAID) -// end; - procedure TDataModuleTiposIVA.DAClientDataModuleCreate(Sender: TObject); begin RORemoteService.Channel := dmConexion.Channel; RORemoteService.Message := dmConexion.Message; end; -function TDataModuleTiposIVA.DarNombreGenerador(DataSetName: String): String; -begin - Result := ''; - if DataSetName = nme_TiposIVA then - Result := 'GEN_TIPOS_IVA_ID' -end; - -function TDataModuleTiposIVA.GetNextID(const DataSetName: String): Integer; -var - aGeneratorName : String; -begin - aGeneratorName := DarNombreGenerador(DataSetName); - Result := (RORemoteService as IsrvTiposIVA).GetNextAutoInc(aGeneratorName) -end; - -function TDataModuleTiposIVA._CloneDataTable(const ADataTable : TDACDSDataTable): TDACDSDataTable; -begin - Result := NIL; - - if not Assigned(ADataTable) then - raise Exception.Create ('No se ha asignado la tabla de origen (CloneDataTable)'); - - Result := TDACDSDataTable.Create(NIL); - CloneDataTable(ADataTable, Result); -end; - - -// Descomentar si tiene detalles -// function TDataModuleTiposIVA._GetDetalles: IBizTipoIVADetalles; -// var -// ADetalles : TDACDSDataTable; -// begin -// ShowHourglassCursor; -// try -// ADetalles := _CloneDataTable(tbl_TiposIVADetalles); -// with ADetalles do -// begin -// BusinessRulesID := BIZ_CLIENT_TipoIVADETALLES; -// DetailOptions := DetailOptions - -// [dtDisableLogOfCascadeDeletes, dtDisableLogOfCascadeUpdates]; -// end; -// Result := (ADetalles as IBizTipoIVADetalles); -// finally -// HideHourglassCursor; -// end; -// end; - - function TDataModuleTiposIVA.GetItems: IBizTipoIVA; var - ATipoIVA : TDACDSDataTable; + ATipoIVA : TDAMemDataTable; begin ShowHourglassCursor; try - ATipoIVA := _CloneDataTable(tbl_TiposIVA); + ATipoIVA := CloneDataTable(tbl_TiposIVA); ATipoIVA.BusinessRulesID := BIZ_CLIENT_TipoIVA; - // Descomentar si tiene detalles - // with TBizTipoIVA(ATipoIVA.BusinessEventsObj) do - // Detalles := _GetDetalles; - Result := (ATipoIVA as IBizTipoIVA); finally HideHourglassCursor; @@ -161,14 +89,14 @@ begin ShowHourglassCursor; try Result := Self.GetItems; - with Result.DataTable.Where do + + // (ID = :ID) + with Result.DataTable.DynamicWhere do begin - if NotEmpty then - AddOperator(opAND); - OpenBraket; - AddText('TIPOS_IVA.' + fld_TiposIVAID + ' = ' + IntToStr(ID)); - CloseBraket; + Expression := NewBinaryExpression(NewField('', fld_TiposIVAID), + NewConstant(ID, datInteger), dboEqual); end; + finally HideHourglassCursor; end; diff --git a/Source/Modulos/Tipos de IVA/Model/Data/uIDataModuleTiposIVA.pas b/Source/Modulos/Tipos de IVA/Model/Data/uIDataModuleTiposIVA.pas index e14ffc76..a248d9b7 100644 --- a/Source/Modulos/Tipos de IVA/Model/Data/uIDataModuleTiposIVA.pas +++ b/Source/Modulos/Tipos de IVA/Model/Data/uIDataModuleTiposIVA.pas @@ -32,7 +32,6 @@ type IDataModuleTiposIVA = interface ['{FF13E488-D185-4674-8A27-539BEC012B75}'] function GetItems: IBizTipoIVA; - function GetNextID(const DataSetName : String) : Integer; function GetItem(const ID : Integer) : IBizTipoIVA; function NewItem : IBizTipoIVA; diff --git a/Source/Modulos/Tipos de IVA/Model/TiposIVA_model.dpk b/Source/Modulos/Tipos de IVA/Model/TiposIVA_model.dpk index b9b65ee0..49f671df 100644 --- a/Source/Modulos/Tipos de IVA/Model/TiposIVA_model.dpk +++ b/Source/Modulos/Tipos de IVA/Model/TiposIVA_model.dpk @@ -22,22 +22,19 @@ package TiposIVA_model; {$WRITEABLECONST OFF} {$MINENUMSIZE 1} {$IMAGEBASE $400000} -{$IMPLICITBUILD OFF} +{$IMPLICITBUILD ON} requires rtl, - dsnap, - dbrtl, - vcldb, vcl, - adortl, Base, - DataAbstract_D10; + GUIBase, + ApplicationBase; contains uIDataModuleTiposIVA in 'Data\uIDataModuleTiposIVA.pas', + uBizTiposIVA in 'uBizTiposIVA.pas', schTiposIVAClient_Intf in 'schTiposIVAClient_Intf.pas', - schTiposIVAServer_Intf in 'schTiposIVAServer_Intf.pas', - uBizTiposIVA in 'uBizTiposIVA.pas'; + schTiposIVAServer_Intf in 'schTiposIVAServer_Intf.pas'; end. diff --git a/Source/Modulos/Tipos de IVA/Model/TiposIVA_model.dpk.bak b/Source/Modulos/Tipos de IVA/Model/TiposIVA_model.dpk.bak new file mode 100644 index 00000000..eb4b21dd --- /dev/null +++ b/Source/Modulos/Tipos de IVA/Model/TiposIVA_model.dpk.bak @@ -0,0 +1,38 @@ +package TiposIVA_model; + +{$R *.res} +{$ALIGN 8} +{$ASSERTIONS ON} +{$BOOLEVAL OFF} +{$DEBUGINFO ON} +{$EXTENDEDSYNTAX ON} +{$IMPORTEDDATA ON} +{$IOCHECKS ON} +{$LOCALSYMBOLS ON} +{$LONGSTRINGS ON} +{$OPENSTRINGS ON} +{$OPTIMIZATION ON} +{$OVERFLOWCHECKS OFF} +{$RANGECHECKS OFF} +{$REFERENCEINFO ON} +{$SAFEDIVIDE OFF} +{$STACKFRAMES OFF} +{$TYPEDADDRESS OFF} +{$VARSTRINGCHECKS ON} +{$WRITEABLECONST OFF} +{$MINENUMSIZE 1} +{$IMAGEBASE $400000} +{$IMPLICITBUILD OFF} + +requires + rtl, + vcl, + Base; + +contains + uIDataModuleTiposIVA in 'Data\uIDataModuleTiposIVA.pas', + schTiposIVAClient_Intf in 'schTiposIVAClient_Intf.pas', + schTiposIVAServer_Intf in 'schTiposIVAServer_Intf.pas', + uBizTiposIVA in 'uBizTiposIVA.pas'; + +end. diff --git a/Source/Modulos/Tipos de IVA/Model/TiposIVA_model.dproj b/Source/Modulos/Tipos de IVA/Model/TiposIVA_model.dproj new file mode 100644 index 00000000..ab3b91e1 --- /dev/null +++ b/Source/Modulos/Tipos de IVA/Model/TiposIVA_model.dproj @@ -0,0 +1,61 @@ + + + + {82fe21d8-609d-444d-879e-4d9e1c291607} + TiposIVA_model.dpk + Debug + AnyCPU + DCC32 + ..\..\..\..\Output\Debug\Cliente\TiposIVA_model.bpl + + + 7.0 + False + False + 0 + 3 + .\ + .\ + .\ + ..\..\..\..\Output\Debug\Cliente + ..\..\Lib + ..\..\..\Lib;..\..\Lib + ..\..\..\Lib;..\..\Lib + ..\..\..\Lib;..\..\Lib + ..\..\..\Lib;..\..\Lib + RELEASE + + + 7.0 + 3 + .\ + .\ + .\ + ..\..\..\..\Output\Debug\Cliente + ..\..\Lib + ..\..\..\Lib;..\..\Lib + ..\..\..\Lib;..\..\Lib + ..\..\..\Lib;..\..\Lib + ..\..\..\Lib;..\..\Lib + + + Delphi.Personality + Package + +FalseTrueFalseTrueFalseFalseTrueFalse1000FalseFalseFalseFalseFalse308212521.0.0.01.0.0.0TiposIVA_model.dpk + + + + + MainSource + + + + + + + + + + + diff --git a/Source/Modulos/Tipos de IVA/Model/TiposIVA_model.drc b/Source/Modulos/Tipos de IVA/Model/TiposIVA_model.drc index 7642ac97..2ce70245 100644 --- a/Source/Modulos/Tipos de IVA/Model/TiposIVA_model.drc +++ b/Source/Modulos/Tipos de IVA/Model/TiposIVA_model.drc @@ -1,5 +1,5 @@ -/* VER180 - Generated by the Borland Delphi Pascal Compiler +/* VER185 + Generated by the CodeGear Delphi Pascal Compiler because -GD or --drc was supplied to the compiler. This file contains compiler-generated resources that @@ -12,3 +12,5 @@ STRINGTABLE BEGIN END +/* C:\Codigo Tecsitel\Source\Modulos\Tipos de IVA\Model\TiposIVA_model.res */ +/* C:\DOCUME~1\Usuario\CONFIG~1\Temp\dtf1C.tmp */ diff --git a/Source/Modulos/Tipos de IVA/Model/TiposIVA_model.identcache b/Source/Modulos/Tipos de IVA/Model/TiposIVA_model.identcache new file mode 100644 index 00000000..8de58733 Binary files /dev/null and b/Source/Modulos/Tipos de IVA/Model/TiposIVA_model.identcache differ diff --git a/Source/Modulos/Tipos de IVA/Model/TiposIVA_model.rc b/Source/Modulos/Tipos de IVA/Model/TiposIVA_model.rc index e69de29b..153736af 100644 --- a/Source/Modulos/Tipos de IVA/Model/TiposIVA_model.rc +++ b/Source/Modulos/Tipos de IVA/Model/TiposIVA_model.rc @@ -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 diff --git a/Source/Modulos/Tipos de IVA/Model/TiposIVA_model.res b/Source/Modulos/Tipos de IVA/Model/TiposIVA_model.res index 36f26e23..8b251f31 100644 Binary files a/Source/Modulos/Tipos de IVA/Model/TiposIVA_model.res and b/Source/Modulos/Tipos de IVA/Model/TiposIVA_model.res differ diff --git a/Source/Modulos/Tipos de IVA/Model/schTiposIVAClient_Intf.pas b/Source/Modulos/Tipos de IVA/Model/schTiposIVAClient_Intf.pas index 56bcd981..e970f8bf 100644 --- a/Source/Modulos/Tipos de IVA/Model/schTiposIVAClient_Intf.pas +++ b/Source/Modulos/Tipos de IVA/Model/schTiposIVAClient_Intf.pas @@ -3,13 +3,13 @@ unit schTiposIVAClient_Intf; interface uses - Classes, DB, SysUtils, uROClasses, uDADataTable; + Classes, DB, SysUtils, uROClasses, uDADataTable, FmtBCD, uROXMLIntf; const { Data table rules ids Feel free to change them to something more human readable but make sure they are unique in the context of your application } - RID_TiposIVA = '{D96E3FA9-3BEC-4A87-B5A6-F8A8AEF73D87}'; + RID_TiposIVA = '{700B374C-AA68-4A5B-9ACA-A0704A82A98D}'; { Data table names } nme_TiposIVA = 'TiposIVA'; @@ -31,26 +31,41 @@ const type { ITiposIVA } ITiposIVA = interface(IDAStronglyTypedDataTable) - ['{DEFBEA87-112C-4BFB-86E8-40085D5D6328}'] + ['{342A3165-77DD-40FB-8154-0D79346AC9D1}'] { Property getters and setters } function GetIDValue: Integer; procedure SetIDValue(const aValue: Integer); + function GetIDIsNull: Boolean; + procedure SetIDIsNull(const aValue: Boolean); function GetREFERENCIAValue: String; procedure SetREFERENCIAValue(const aValue: String); + function GetREFERENCIAIsNull: Boolean; + procedure SetREFERENCIAIsNull(const aValue: Boolean); function GetDESCRIPCIONValue: String; procedure SetDESCRIPCIONValue(const aValue: String); + function GetDESCRIPCIONIsNull: Boolean; + procedure SetDESCRIPCIONIsNull(const aValue: Boolean); function GetIVAValue: Float; procedure SetIVAValue(const aValue: Float); + function GetIVAIsNull: Boolean; + procedure SetIVAIsNull(const aValue: Boolean); function GetREValue: Float; procedure SetREValue(const aValue: Float); + function GetREIsNull: Boolean; + procedure SetREIsNull(const aValue: Boolean); { Properties } property ID: Integer read GetIDValue write SetIDValue; + property IDIsNull: Boolean read GetIDIsNull write SetIDIsNull; property REFERENCIA: String read GetREFERENCIAValue write SetREFERENCIAValue; + property REFERENCIAIsNull: Boolean read GetREFERENCIAIsNull write SetREFERENCIAIsNull; property DESCRIPCION: String read GetDESCRIPCIONValue write SetDESCRIPCIONValue; + property DESCRIPCIONIsNull: Boolean read GetDESCRIPCIONIsNull write SetDESCRIPCIONIsNull; property IVA: Float read GetIVAValue write SetIVAValue; + property IVAIsNull: Boolean read GetIVAIsNull write SetIVAIsNull; property RE: Float read GetREValue write SetREValue; + property REIsNull: Boolean read GetREIsNull write SetREIsNull; end; { TTiposIVADataTableRules } @@ -60,21 +75,36 @@ type { Property getters and setters } function GetIDValue: Integer; virtual; procedure SetIDValue(const aValue: Integer); virtual; + function GetIDIsNull: Boolean; virtual; + procedure SetIDIsNull(const aValue: Boolean); virtual; function GetREFERENCIAValue: String; virtual; procedure SetREFERENCIAValue(const aValue: String); virtual; + function GetREFERENCIAIsNull: Boolean; virtual; + procedure SetREFERENCIAIsNull(const aValue: Boolean); virtual; function GetDESCRIPCIONValue: String; virtual; procedure SetDESCRIPCIONValue(const aValue: String); virtual; + function GetDESCRIPCIONIsNull: Boolean; virtual; + procedure SetDESCRIPCIONIsNull(const aValue: Boolean); virtual; function GetIVAValue: Float; virtual; procedure SetIVAValue(const aValue: Float); virtual; + function GetIVAIsNull: Boolean; virtual; + procedure SetIVAIsNull(const aValue: Boolean); virtual; function GetREValue: Float; virtual; procedure SetREValue(const aValue: Float); virtual; + function GetREIsNull: Boolean; virtual; + procedure SetREIsNull(const aValue: Boolean); virtual; { Properties } property ID: Integer read GetIDValue write SetIDValue; + property IDIsNull: Boolean read GetIDIsNull write SetIDIsNull; property REFERENCIA: String read GetREFERENCIAValue write SetREFERENCIAValue; + property REFERENCIAIsNull: Boolean read GetREFERENCIAIsNull write SetREFERENCIAIsNull; property DESCRIPCION: String read GetDESCRIPCIONValue write SetDESCRIPCIONValue; + property DESCRIPCIONIsNull: Boolean read GetDESCRIPCIONIsNull write SetDESCRIPCIONIsNull; property IVA: Float read GetIVAValue write SetIVAValue; + property IVAIsNull: Boolean read GetIVAIsNull write SetIVAIsNull; property RE: Float read GetREValue write SetREValue; + property REIsNull: Boolean read GetREIsNull write SetREIsNull; public constructor Create(aDataTable: TDADataTable); override; @@ -84,7 +114,7 @@ type implementation -uses Variants; +uses Variants, uROBinaryHelpers; { TTiposIVADataTableRules } constructor TTiposIVADataTableRules.Create(aDataTable: TDADataTable); @@ -107,6 +137,17 @@ begin DataTable.Fields[idx_TiposIVAID].AsInteger := aValue; end; +function TTiposIVADataTableRules.GetIDIsNull: boolean; +begin + result := DataTable.Fields[idx_TiposIVAID].IsNull; +end; + +procedure TTiposIVADataTableRules.SetIDIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_TiposIVAID].AsVariant := Null; +end; + function TTiposIVADataTableRules.GetREFERENCIAValue: String; begin result := DataTable.Fields[idx_TiposIVAREFERENCIA].AsString; @@ -117,6 +158,17 @@ begin DataTable.Fields[idx_TiposIVAREFERENCIA].AsString := aValue; end; +function TTiposIVADataTableRules.GetREFERENCIAIsNull: boolean; +begin + result := DataTable.Fields[idx_TiposIVAREFERENCIA].IsNull; +end; + +procedure TTiposIVADataTableRules.SetREFERENCIAIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_TiposIVAREFERENCIA].AsVariant := Null; +end; + function TTiposIVADataTableRules.GetDESCRIPCIONValue: String; begin result := DataTable.Fields[idx_TiposIVADESCRIPCION].AsString; @@ -127,6 +179,17 @@ begin DataTable.Fields[idx_TiposIVADESCRIPCION].AsString := aValue; end; +function TTiposIVADataTableRules.GetDESCRIPCIONIsNull: boolean; +begin + result := DataTable.Fields[idx_TiposIVADESCRIPCION].IsNull; +end; + +procedure TTiposIVADataTableRules.SetDESCRIPCIONIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_TiposIVADESCRIPCION].AsVariant := Null; +end; + function TTiposIVADataTableRules.GetIVAValue: Float; begin result := DataTable.Fields[idx_TiposIVAIVA].AsFloat; @@ -137,6 +200,17 @@ begin DataTable.Fields[idx_TiposIVAIVA].AsFloat := aValue; end; +function TTiposIVADataTableRules.GetIVAIsNull: boolean; +begin + result := DataTable.Fields[idx_TiposIVAIVA].IsNull; +end; + +procedure TTiposIVADataTableRules.SetIVAIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_TiposIVAIVA].AsVariant := Null; +end; + function TTiposIVADataTableRules.GetREValue: Float; begin result := DataTable.Fields[idx_TiposIVARE].AsFloat; @@ -147,6 +221,17 @@ begin DataTable.Fields[idx_TiposIVARE].AsFloat := aValue; end; +function TTiposIVADataTableRules.GetREIsNull: boolean; +begin + result := DataTable.Fields[idx_TiposIVARE].IsNull; +end; + +procedure TTiposIVADataTableRules.SetREIsNull(const aValue: Boolean); +begin + if aValue then + DataTable.Fields[idx_TiposIVARE].AsVariant := Null; +end; + initialization RegisterDataTableRules(RID_TiposIVA, TTiposIVADataTableRules); diff --git a/Source/Modulos/Tipos de IVA/Model/schTiposIVAServer_Intf.pas b/Source/Modulos/Tipos de IVA/Model/schTiposIVAServer_Intf.pas index 9c626a44..2d8e0206 100644 --- a/Source/Modulos/Tipos de IVA/Model/schTiposIVAServer_Intf.pas +++ b/Source/Modulos/Tipos de IVA/Model/schTiposIVAServer_Intf.pas @@ -3,18 +3,18 @@ unit schTiposIVAServer_Intf; interface uses - Classes, DB, SysUtils, uROClasses, uDADataTable, uDABusinessProcessor, schTiposIVAClient_Intf; + Classes, DB, SysUtils, uROClasses, uDADataTable, uDABusinessProcessor, FmtBCD, uROXMLIntf, schTiposIVAClient_Intf; const { Delta rules ids Feel free to change them to something more human readable but make sure they are unique in the context of your application } - RID_TiposIVADelta = '{2A97AB6B-F1E7-4CEF-BB65-E0155C2C9A47}'; + RID_TiposIVADelta = '{22B67F19-4406-4659-A4A0-F4894916A1C1}'; type { ITiposIVADelta } ITiposIVADelta = interface(ITiposIVA) - ['{2A97AB6B-F1E7-4CEF-BB65-E0155C2C9A47}'] + ['{22B67F19-4406-4659-A4A0-F4894916A1C1}'] { Property getters and setters } function GetOldIDValue : Integer; function GetOldREFERENCIAValue : String; @@ -36,32 +36,57 @@ type protected { Property getters and setters } function GetIDValue: Integer; virtual; + function GetIDIsNull: Boolean; virtual; function GetOldIDValue: Integer; virtual; + function GetOldIDIsNull: Boolean; virtual; procedure SetIDValue(const aValue: Integer); virtual; + procedure SetIDIsNull(const aValue: Boolean); virtual; function GetREFERENCIAValue: String; virtual; + function GetREFERENCIAIsNull: Boolean; virtual; function GetOldREFERENCIAValue: String; virtual; + function GetOldREFERENCIAIsNull: Boolean; virtual; procedure SetREFERENCIAValue(const aValue: String); virtual; + procedure SetREFERENCIAIsNull(const aValue: Boolean); virtual; function GetDESCRIPCIONValue: String; virtual; + function GetDESCRIPCIONIsNull: Boolean; virtual; function GetOldDESCRIPCIONValue: String; virtual; + function GetOldDESCRIPCIONIsNull: Boolean; virtual; procedure SetDESCRIPCIONValue(const aValue: String); virtual; + procedure SetDESCRIPCIONIsNull(const aValue: Boolean); virtual; function GetIVAValue: Float; virtual; + function GetIVAIsNull: Boolean; virtual; function GetOldIVAValue: Float; virtual; + function GetOldIVAIsNull: Boolean; virtual; procedure SetIVAValue(const aValue: Float); virtual; + procedure SetIVAIsNull(const aValue: Boolean); virtual; function GetREValue: Float; virtual; + function GetREIsNull: Boolean; virtual; function GetOldREValue: Float; virtual; + function GetOldREIsNull: Boolean; virtual; procedure SetREValue(const aValue: Float); virtual; + procedure SetREIsNull(const aValue: Boolean); virtual; { Properties } property ID : Integer read GetIDValue write SetIDValue; + property IDIsNull : Boolean read GetIDIsNull write SetIDIsNull; property OldID : Integer read GetOldIDValue; + property OldIDIsNull : Boolean read GetOldIDIsNull; property REFERENCIA : String read GetREFERENCIAValue write SetREFERENCIAValue; + property REFERENCIAIsNull : Boolean read GetREFERENCIAIsNull write SetREFERENCIAIsNull; property OldREFERENCIA : String read GetOldREFERENCIAValue; + property OldREFERENCIAIsNull : Boolean read GetOldREFERENCIAIsNull; property DESCRIPCION : String read GetDESCRIPCIONValue write SetDESCRIPCIONValue; + property DESCRIPCIONIsNull : Boolean read GetDESCRIPCIONIsNull write SetDESCRIPCIONIsNull; property OldDESCRIPCION : String read GetOldDESCRIPCIONValue; + property OldDESCRIPCIONIsNull : Boolean read GetOldDESCRIPCIONIsNull; property IVA : Float read GetIVAValue write SetIVAValue; + property IVAIsNull : Boolean read GetIVAIsNull write SetIVAIsNull; property OldIVA : Float read GetOldIVAValue; + property OldIVAIsNull : Boolean read GetOldIVAIsNull; property RE : Float read GetREValue write SetREValue; + property REIsNull : Boolean read GetREIsNull write SetREIsNull; property OldRE : Float read GetOldREValue; + property OldREIsNull : Boolean read GetOldREIsNull; public constructor Create(aBusinessProcessor: TDABusinessProcessor); override; @@ -72,7 +97,7 @@ type implementation uses - Variants, uROBinaryHelpers; + Variants, uROBinaryHelpers, uDAInterfaces; { TTiposIVABusinessProcessorRules } constructor TTiposIVABusinessProcessorRules.Create(aBusinessProcessor: TDABusinessProcessor); @@ -90,76 +115,156 @@ begin result := BusinessProcessor.CurrentChange.NewValueByName[fld_TiposIVAID]; end; +function TTiposIVABusinessProcessorRules.GetIDIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_TiposIVAID]); +end; + function TTiposIVABusinessProcessorRules.GetOldIDValue: Integer; begin result := BusinessProcessor.CurrentChange.OldValueByName[fld_TiposIVAID]; end; +function TTiposIVABusinessProcessorRules.GetOldIDIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_TiposIVAID]); +end; + procedure TTiposIVABusinessProcessorRules.SetIDValue(const aValue: Integer); begin BusinessProcessor.CurrentChange.NewValueByName[fld_TiposIVAID] := aValue; end; +procedure TTiposIVABusinessProcessorRules.SetIDIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_TiposIVAID] := Null; +end; + function TTiposIVABusinessProcessorRules.GetREFERENCIAValue: String; begin result := BusinessProcessor.CurrentChange.NewValueByName[fld_TiposIVAREFERENCIA]; end; +function TTiposIVABusinessProcessorRules.GetREFERENCIAIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_TiposIVAREFERENCIA]); +end; + function TTiposIVABusinessProcessorRules.GetOldREFERENCIAValue: String; begin result := BusinessProcessor.CurrentChange.OldValueByName[fld_TiposIVAREFERENCIA]; end; +function TTiposIVABusinessProcessorRules.GetOldREFERENCIAIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_TiposIVAREFERENCIA]); +end; + procedure TTiposIVABusinessProcessorRules.SetREFERENCIAValue(const aValue: String); begin BusinessProcessor.CurrentChange.NewValueByName[fld_TiposIVAREFERENCIA] := aValue; end; +procedure TTiposIVABusinessProcessorRules.SetREFERENCIAIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_TiposIVAREFERENCIA] := Null; +end; + function TTiposIVABusinessProcessorRules.GetDESCRIPCIONValue: String; begin result := BusinessProcessor.CurrentChange.NewValueByName[fld_TiposIVADESCRIPCION]; end; +function TTiposIVABusinessProcessorRules.GetDESCRIPCIONIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_TiposIVADESCRIPCION]); +end; + function TTiposIVABusinessProcessorRules.GetOldDESCRIPCIONValue: String; begin result := BusinessProcessor.CurrentChange.OldValueByName[fld_TiposIVADESCRIPCION]; end; +function TTiposIVABusinessProcessorRules.GetOldDESCRIPCIONIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_TiposIVADESCRIPCION]); +end; + procedure TTiposIVABusinessProcessorRules.SetDESCRIPCIONValue(const aValue: String); begin BusinessProcessor.CurrentChange.NewValueByName[fld_TiposIVADESCRIPCION] := aValue; end; +procedure TTiposIVABusinessProcessorRules.SetDESCRIPCIONIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_TiposIVADESCRIPCION] := Null; +end; + function TTiposIVABusinessProcessorRules.GetIVAValue: Float; begin result := BusinessProcessor.CurrentChange.NewValueByName[fld_TiposIVAIVA]; end; +function TTiposIVABusinessProcessorRules.GetIVAIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_TiposIVAIVA]); +end; + function TTiposIVABusinessProcessorRules.GetOldIVAValue: Float; begin result := BusinessProcessor.CurrentChange.OldValueByName[fld_TiposIVAIVA]; end; +function TTiposIVABusinessProcessorRules.GetOldIVAIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_TiposIVAIVA]); +end; + procedure TTiposIVABusinessProcessorRules.SetIVAValue(const aValue: Float); begin BusinessProcessor.CurrentChange.NewValueByName[fld_TiposIVAIVA] := aValue; end; +procedure TTiposIVABusinessProcessorRules.SetIVAIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_TiposIVAIVA] := Null; +end; + function TTiposIVABusinessProcessorRules.GetREValue: Float; begin result := BusinessProcessor.CurrentChange.NewValueByName[fld_TiposIVARE]; end; +function TTiposIVABusinessProcessorRules.GetREIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_TiposIVARE]); +end; + function TTiposIVABusinessProcessorRules.GetOldREValue: Float; begin result := BusinessProcessor.CurrentChange.OldValueByName[fld_TiposIVARE]; end; +function TTiposIVABusinessProcessorRules.GetOldREIsNull: Boolean; +begin + result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_TiposIVARE]); +end; + procedure TTiposIVABusinessProcessorRules.SetREValue(const aValue: Float); begin BusinessProcessor.CurrentChange.NewValueByName[fld_TiposIVARE] := aValue; end; +procedure TTiposIVABusinessProcessorRules.SetREIsNull(const aValue: Boolean); +begin + if aValue then + BusinessProcessor.CurrentChange.NewValueByName[fld_TiposIVARE] := Null; +end; + initialization RegisterBusinessProcessorRules(RID_TiposIVADelta, TTiposIVABusinessProcessorRules); diff --git a/Source/Modulos/Tipos de IVA/Plugin/TiposIVA_plugin.dpk b/Source/Modulos/Tipos de IVA/Plugin/TiposIVA_plugin.dpk index bb0a1ec9..5d6dbe51 100644 --- a/Source/Modulos/Tipos de IVA/Plugin/TiposIVA_plugin.dpk +++ b/Source/Modulos/Tipos de IVA/Plugin/TiposIVA_plugin.dpk @@ -22,16 +22,15 @@ package TiposIVA_plugin; {$WRITEABLECONST OFF} {$MINENUMSIZE 1} {$IMAGEBASE $400000} -{$IMPLICITBUILD OFF} +{$IMPLICITBUILD ON} requires rtl, vcl, - PngComponentsD10, - PNG_D10, - vclactnband, - vclx, PluginSDK_D10R, + Base, + GUIBase, + ApplicationBase, TiposIVA_model, TiposIVA_controller, TiposIVA_view; diff --git a/Source/Modulos/Tipos de IVA/Plugin/TiposIVA_plugin.dpk.bak b/Source/Modulos/Tipos de IVA/Plugin/TiposIVA_plugin.dpk.bak new file mode 100644 index 00000000..4d644c10 --- /dev/null +++ b/Source/Modulos/Tipos de IVA/Plugin/TiposIVA_plugin.dpk.bak @@ -0,0 +1,38 @@ +package TiposIVA_plugin; + +{$R *.res} +{$ALIGN 8} +{$ASSERTIONS ON} +{$BOOLEVAL OFF} +{$DEBUGINFO ON} +{$EXTENDEDSYNTAX ON} +{$IMPORTEDDATA ON} +{$IOCHECKS ON} +{$LOCALSYMBOLS ON} +{$LONGSTRINGS ON} +{$OPENSTRINGS ON} +{$OPTIMIZATION ON} +{$OVERFLOWCHECKS OFF} +{$RANGECHECKS OFF} +{$REFERENCEINFO ON} +{$SAFEDIVIDE OFF} +{$STACKFRAMES OFF} +{$TYPEDADDRESS OFF} +{$VARSTRINGCHECKS ON} +{$WRITEABLECONST OFF} +{$MINENUMSIZE 1} +{$IMAGEBASE $400000} +{$IMPLICITBUILD OFF} + +requires + rtl, + vcl, + PluginSDK_D10R, + TiposIVA_model, + TiposIVA_controller, + TiposIVA_view; + +contains + uPluginTiposIVA in 'uPluginTiposIVA.pas'; + +end. diff --git a/Source/Modulos/Tipos de IVA/Plugin/TiposIVA_plugin.dproj b/Source/Modulos/Tipos de IVA/Plugin/TiposIVA_plugin.dproj new file mode 100644 index 00000000..a50bc0c9 --- /dev/null +++ b/Source/Modulos/Tipos de IVA/Plugin/TiposIVA_plugin.dproj @@ -0,0 +1,66 @@ + + + + {139324a2-0c57-446d-aebd-edd9578e22fd} + TiposIVA_plugin.dpk + Debug + AnyCPU + DCC32 + ..\..\..\..\Output\Debug\Cliente\TiposIVA_plugin.bpl + + + 7.0 + False + False + 0 + .\ + .\ + .\ + ..\..\..\..\Output\Debug\Cliente + ..\..\Lib + ..\..\..\Lib;..\..\Lib + ..\..\..\Lib;..\..\Lib + ..\..\..\Lib;..\..\Lib + ..\..\..\Lib;..\..\Lib + RELEASE + + + 7.0 + .\ + .\ + .\ + ..\..\..\..\Output\Debug\Cliente + ..\..\Lib + ..\..\..\Lib;..\..\Lib + ..\..\..\Lib;..\..\Lib + ..\..\..\Lib;..\..\Lib + ..\..\..\Lib;..\..\Lib + + + Delphi.Personality + Package + +FalseTrueFalseTrueFalseFalseTrueFalse1000FalseFalseFalseFalseFalse308212521.0.0.01.0.0.0TiposIVA_plugin.dpk + + + + + MainSource + + + + + + + + + + + + + + + + + + diff --git a/Source/Modulos/Tipos de IVA/Plugin/TiposIVA_plugin.rc b/Source/Modulos/Tipos de IVA/Plugin/TiposIVA_plugin.rc index e69de29b..153736af 100644 --- a/Source/Modulos/Tipos de IVA/Plugin/TiposIVA_plugin.rc +++ b/Source/Modulos/Tipos de IVA/Plugin/TiposIVA_plugin.rc @@ -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 diff --git a/Source/Modulos/Tipos de IVA/Plugin/TiposIVA_plugin.res b/Source/Modulos/Tipos de IVA/Plugin/TiposIVA_plugin.res index 36f26e23..8b251f31 100644 Binary files a/Source/Modulos/Tipos de IVA/Plugin/TiposIVA_plugin.res and b/Source/Modulos/Tipos de IVA/Plugin/TiposIVA_plugin.res differ diff --git a/Source/Modulos/Tipos de IVA/Servidor/srvTiposIVA_Impl.dfm b/Source/Modulos/Tipos de IVA/Servidor/srvTiposIVA_Impl.dfm index 577ca869..f1931b92 100644 --- a/Source/Modulos/Tipos de IVA/Servidor/srvTiposIVA_Impl.dfm +++ b/Source/Modulos/Tipos de IVA/Servidor/srvTiposIVA_Impl.dfm @@ -3,59 +3,49 @@ object srvTiposIVA: TsrvTiposIVA OnCreate = DARemoteServiceCreate RequiresSession = True SessionManager = dmServer.SessionManager - AcquireConnection = True ServiceSchema = schTiposIVA - ServiceAdapter = DABINAdapter - OnBeforeAcquireConnection = DARemoteServiceBeforeAcquireConnection + ServiceDataStreamer = Bin2DataStreamer + ExportedDataTables = <> + BeforeAcquireConnection = DataAbstractServiceBeforeAcquireConnection Height = 300 Width = 334 object Diagrams: TDADiagrams Left = 150 - Top = 80 + Top = 88 DiagramData = ''#13#10''#13#10 end object DataDictionary: TDADataDictionary Fields = < - item - Name = 'TIPOS_IVA_ID' - DataType = datInteger - BlobType = dabtUnknown - DisplayWidth = 0 - Alignment = taLeftJustify - end item Name = 'TIPOS_IVA_REFERENCIA' DataType = datString Size = 255 - BlobType = dabtUnknown - DisplayWidth = 0 DisplayLabel = 'Referencia' - Alignment = taLeftJustify end item Name = 'TIPOS_IVA_DESCRIPCION' DataType = datString Size = 255 - BlobType = dabtUnknown - DisplayWidth = 0 DisplayLabel = 'Descripci'#243'n' - Alignment = taLeftJustify end item Name = 'TIPOS_IVA_IVA' DataType = datFloat - BlobType = dabtUnknown - DisplayWidth = 0 DisplayLabel = '% IVA' Alignment = taRightJustify end item Name = 'TIPOS_IVA_RE' DataType = datFloat - BlobType = dabtUnknown - DisplayWidth = 0 DisplayLabel = '% RE' Alignment = taRightJustify + end + item + Name = 'TiposIVA_ID' + DataType = datAutoInc + GeneratorName = 'GEN_TIPOS_IVA_ID' + DisplayLabel = 'ID' + ServerAutoRefresh = True end> Left = 150 Top = 24 @@ -71,10 +61,7 @@ object srvTiposIVA: TsrvTiposIVA item Connection = 'IBX' TargetTable = 'TIPOS_IVA' - SQL = - 'SELECT '#10' ID, REFERENCIA, DESCRIPCION, IVA, RE'#10' FROM'#10' TIPO' + - 'S_IVA' - StatementType = stSQL + StatementType = stAutoSQL ColumnMappings = < item DatasetField = 'ID' @@ -101,224 +88,46 @@ object srvTiposIVA: TsrvTiposIVA Fields = < item Name = 'ID' - DataType = datInteger - BlobType = dabtUnknown - DictionaryEntry = 'TIPOS_IVA_ID' + DataType = datAutoInc + GeneratorName = 'GEN_TIPOS_IVA_ID' + ServerAutoRefresh = True + DictionaryEntry = 'TiposIVA_ID' InPrimaryKey = True - Calculated = False - Lookup = False - LookupCache = False end item Name = 'REFERENCIA' DataType = datString Size = 255 - BlobType = dabtUnknown DictionaryEntry = 'TIPOS_IVA_REFERENCIA' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False end item Name = 'DESCRIPCION' DataType = datString Size = 255 - BlobType = dabtUnknown DictionaryEntry = 'TIPOS_IVA_DESCRIPCION' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False end item Name = 'IVA' DataType = datFloat - BlobType = dabtUnknown DictionaryEntry = 'TIPOS_IVA_IVA' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False end item Name = 'RE' DataType = datFloat - BlobType = dabtUnknown DictionaryEntry = 'TIPOS_IVA_RE' - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False end> - BusinessRulesClient.ScriptLanguage = rslPascalScript - BusinessRulesServer.ScriptLanguage = rslPascalScript - end> - Commands = < - item - Params = < - item - Name = 'ID' - DataType = datInteger - BlobType = dabtUnknown - Value = '' - ParamType = daptInput - end - item - Name = 'REFERENCIA' - DataType = datString - Size = 255 - BlobType = dabtUnknown - Value = '' - ParamType = daptInput - end - item - Name = 'DESCRIPCION' - DataType = datString - Size = 255 - BlobType = dabtUnknown - Value = '' - ParamType = daptInput - end - item - Name = 'IVA' - DataType = datFloat - BlobType = dabtUnknown - Value = '' - ParamType = daptInput - end - item - Name = 'RE' - DataType = datFloat - BlobType = dabtUnknown - Value = '' - ParamType = daptInput - end> - Statements = < - item - Connection = 'IBX' - TargetTable = 'TIPOS_IVA' - SQL = - 'INSERT'#10' INTO TIPOS_IVA'#10' (ID, REFERENCIA, DESCRIPCION, IVA, R' + - 'E)'#10' VALUES'#10' (:ID, :REFERENCIA, :DESCRIPCION, :IVA, :RE)' - StatementType = stSQL - ColumnMappings = <> - end> - Name = 'Insert_TiposIVA' - end - item - Params = < - item - Name = 'OLD_ID' - DataType = datInteger - BlobType = dabtUnknown - Value = '' - ParamType = daptInput - end> - Statements = < - item - Connection = 'IBX' - TargetTable = 'TIPOS_IVA' - SQL = 'DELETE '#10' FROM'#10' TIPOS_IVA'#10' WHERE'#10' (ID = :OLD_ID)' - StatementType = stSQL - ColumnMappings = <> - end> - Name = 'Delete_TiposIVA' - end - item - Params = < - item - Name = 'REFERENCIA' - DataType = datString - Size = 255 - BlobType = dabtUnknown - Value = '' - ParamType = daptInput - end - item - Name = 'DESCRIPCION' - DataType = datString - Size = 255 - BlobType = dabtUnknown - Value = '' - ParamType = daptInput - end - item - Name = 'IVA' - DataType = datFloat - BlobType = dabtUnknown - Value = '' - ParamType = daptInput - end - item - Name = 'RE' - DataType = datFloat - BlobType = dabtUnknown - Value = '' - ParamType = daptInput - end - item - Name = 'OLD_ID' - DataType = datInteger - BlobType = dabtUnknown - Value = '' - ParamType = daptInput - end> - Statements = < - item - Connection = 'IBX' - TargetTable = 'TIPOS_IVA' - SQL = - 'UPDATE TIPOS_IVA'#10' SET '#10' REFERENCIA = :REFERENCIA,'#10' DESCRI' + - 'PCION = :DESCRIPCION, '#10' IVA = :IVA, '#10' RE = :RE'#10' WHERE'#10' ' + - ' (ID = :OLD_ID)' - StatementType = stSQL - ColumnMappings = <> - end> - Name = 'Update_TiposIVA' end> + JoinDataTables = <> + UnionDataTables = <> + Commands = <> RelationShips = <> - UpdateRules = < - item - Name = 'Insert Familias' - DoUpdate = False - DoInsert = True - DoDelete = False - DatasetName = 'Familias' - FailureBehaviour = fbRaiseException - end - item - Name = 'Update Familias' - DoUpdate = True - DoInsert = False - DoDelete = False - DatasetName = 'Familias' - FailureBehaviour = fbRaiseException - end - item - Name = 'Delete Familias' - DoUpdate = False - DoInsert = False - DoDelete = True - DatasetName = 'Familias' - FailureBehaviour = fbRaiseException - end> + UpdateRules = <> + Version = 0 Left = 48 Top = 24 end - object DABINAdapter: TDABINAdapter + object Bin2DataStreamer: TDABin2DataStreamer Left = 48 - Top = 80 - end - object bpTiposIVA: TDABusinessProcessor - Schema = schTiposIVA - InsertCommandName = 'Insert_TiposIVA' - DeleteCommandName = 'Delete_TiposIVA' - UpdateCommandName = 'Update_TiposIVA' - ReferencedDataset = 'TiposIVA' - ProcessorOptions = [poAutoGenerateRefreshDataset, poPrepareCommands] - UpdateMode = updWhereKeyOnly - Left = 251 - Top = 24 + Top = 88 end end diff --git a/Source/Modulos/Tipos de IVA/Servidor/srvTiposIVA_Impl.pas b/Source/Modulos/Tipos de IVA/Servidor/srvTiposIVA_Impl.pas index 0a248a6f..8520cf15 100644 --- a/Source/Modulos/Tipos de IVA/Servidor/srvTiposIVA_Impl.pas +++ b/Source/Modulos/Tipos de IVA/Servidor/srvTiposIVA_Impl.pas @@ -12,26 +12,24 @@ interface uses {vcl:} Classes, SysUtils, {RemObjects:} uROClientIntf, uROTypes, uROServer, uROServerIntf, uROSessions, - {Ancestor Implementation:} DARemoteService_Impl, - {Used RODLs:} DataAbstract_Intf, + {Ancestor Implementation:} DataAbstractService_Impl, + {Used RODLs:} DataAbstract4_Intf, {Generated:} FactuGES_Intf, uDADataTable, uDABINAdapter, uDAClasses, - uDAScriptingProvider, uDABusinessProcessor; + uDAScriptingProvider, uDABusinessProcessor, uDADataStreamer, + uDABin2DataStreamer; type { TsrvTiposIVA } - TsrvTiposIVA = class(TDARemoteService, IsrvTiposIVA) + TsrvTiposIVA = class(TDataAbstractService, IsrvTiposIVA) Diagrams: TDADiagrams; - DABINAdapter: TDABINAdapter; + Bin2DataStreamer: TDABin2DataStreamer; schTiposIVA: TDASchema; DataDictionary: TDADataDictionary; - bpTiposIVA: TDABusinessProcessor; - procedure DARemoteServiceBeforeAcquireConnection(Sender: TDARemoteService; - var ConnectionName: string); procedure DARemoteServiceCreate(Sender: TObject); + procedure DataAbstractServiceBeforeAcquireConnection(aSender: TObject; + var aConnectionName: string); private protected - { IsrvTiposIVA methods } - function GetNextAutoInc(const GeneratorName: String): Integer; end; implementation @@ -46,20 +44,15 @@ begin end; { srvTiposIVA } -procedure TsrvTiposIVA.DARemoteServiceBeforeAcquireConnection( - Sender: TDARemoteService; var ConnectionName: string); -begin - ConnectionName := dmServer.ConnectionName; -end; - procedure TsrvTiposIVA.DARemoteServiceCreate(Sender: TObject); begin SessionManager := dmServer.SessionManager; end; -function TsrvTiposIVA.GetNextAutoInc(const GeneratorName: String): Integer; +procedure TsrvTiposIVA.DataAbstractServiceBeforeAcquireConnection( + aSender: TObject; var aConnectionName: string); begin - Result := uDatabaseUtils.GetNextAutoInc(GeneratorName) + ConnectionName := dmServer.ConnectionName; end; initialization diff --git a/Source/Modulos/Tipos de IVA/TiposIVA_Group.groupproj b/Source/Modulos/Tipos de IVA/TiposIVA_Group.groupproj new file mode 100644 index 00000000..82224ea8 --- /dev/null +++ b/Source/Modulos/Tipos de IVA/TiposIVA_Group.groupproj @@ -0,0 +1,104 @@ + + + {033276d8-059f-49be-9cc2-3276e536a74d} + + + + + + + + + + + + + + Default.Personality + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/Source/Modulos/Tipos de IVA/Views/TiposIVA_view.dpk b/Source/Modulos/Tipos de IVA/Views/TiposIVA_view.dpk index 58780b3a..6446b0fc 100644 --- a/Source/Modulos/Tipos de IVA/Views/TiposIVA_view.dpk +++ b/Source/Modulos/Tipos de IVA/Views/TiposIVA_view.dpk @@ -22,21 +22,17 @@ package TiposIVA_view; {$WRITEABLECONST OFF} {$MINENUMSIZE 1} {$IMAGEBASE $400000} -{$IMPLICITBUILD OFF} +{$IMPLICITBUILD ON} requires rtl, vcl, - dbrtl, - vcldb, - dsnap, - adortl, - DataAbstract_D10, Base, + GUIBase, + ApplicationBase, TiposIVA_model, TiposIVA_data, - TiposIVA_controller, - JvCmpD10R; + TiposIVA_controller; contains uTiposIVAViewRegister in 'uTiposIVAViewRegister.pas', diff --git a/Source/Modulos/Tipos de IVA/Views/TiposIVA_view.dpk.bak b/Source/Modulos/Tipos de IVA/Views/TiposIVA_view.dpk.bak new file mode 100644 index 00000000..885e579c --- /dev/null +++ b/Source/Modulos/Tipos de IVA/Views/TiposIVA_view.dpk.bak @@ -0,0 +1,41 @@ +package TiposIVA_view; + +{$R *.res} +{$ALIGN 8} +{$ASSERTIONS ON} +{$BOOLEVAL OFF} +{$DEBUGINFO ON} +{$EXTENDEDSYNTAX ON} +{$IMPORTEDDATA ON} +{$IOCHECKS ON} +{$LOCALSYMBOLS ON} +{$LONGSTRINGS ON} +{$OPENSTRINGS ON} +{$OPTIMIZATION ON} +{$OVERFLOWCHECKS OFF} +{$RANGECHECKS OFF} +{$REFERENCEINFO ON} +{$SAFEDIVIDE OFF} +{$STACKFRAMES OFF} +{$TYPEDADDRESS OFF} +{$VARSTRINGCHECKS ON} +{$WRITEABLECONST OFF} +{$MINENUMSIZE 1} +{$IMAGEBASE $400000} +{$IMPLICITBUILD OFF} + +requires + rtl, + vcl, + Base, + TiposIVA_model, + TiposIVA_data, + TiposIVA_controller, + JvCmpD11R; + +contains + uTiposIVAViewRegister in 'uTiposIVAViewRegister.pas', + uEditorTiposIVA in 'uEditorTiposIVA.pas' {fEditorTiposIVA: TfEditorTiposIVA}, + uEditorTipoIVA in 'uEditorTipoIVA.pas' {fEditorTipoIVA: TfEditorTipoIVA}; + +end. diff --git a/Source/Modulos/Tipos de IVA/Views/TiposIVA_view.dproj b/Source/Modulos/Tipos de IVA/Views/TiposIVA_view.dproj new file mode 100644 index 00000000..25a82069 --- /dev/null +++ b/Source/Modulos/Tipos de IVA/Views/TiposIVA_view.dproj @@ -0,0 +1,59 @@ + + + + {911c25fd-90ea-4e70-aa53-99f37be38b57} + TiposIVA_view.dpk + Debug + AnyCPU + DCC32 + ..\..\..\..\Output\Debug\Cliente\TiposIVA_view.bpl + + + 7.0 + False + False + 0 + .\ + .\ + .\ + ..\..\..\..\Output\Debug\Cliente + ..\..\Lib + ..\..\..\Lib;..\..\Lib + ..\..\..\Lib;..\..\Lib + ..\..\..\Lib;..\..\Lib + ..\..\..\Lib;..\..\Lib + RELEASE + + + 7.0 + .\ + .\ + .\ + ..\..\..\..\Output\Debug\Cliente + ..\..\Lib + ..\..\..\Lib;..\..\Lib + ..\..\..\Lib;..\..\Lib + ..\..\..\Lib;..\..\Lib + ..\..\..\Lib;..\..\Lib + + + Delphi.Personality + Package + +FalseTrueFalseTrueFalseFalseTrueFalse1000FalseFalseFalseFalseFalse308212521.0.0.01.0.0.0TiposIVA_view.dpk + + + + + MainSource + + + + + + + + + + + diff --git a/Source/Modulos/Tipos de IVA/Views/TiposIVA_view.rc b/Source/Modulos/Tipos de IVA/Views/TiposIVA_view.rc index e69de29b..153736af 100644 --- a/Source/Modulos/Tipos de IVA/Views/TiposIVA_view.rc +++ b/Source/Modulos/Tipos de IVA/Views/TiposIVA_view.rc @@ -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 diff --git a/Source/Modulos/Tipos de IVA/Views/TiposIVA_view.res b/Source/Modulos/Tipos de IVA/Views/TiposIVA_view.res index 36f26e23..8b251f31 100644 Binary files a/Source/Modulos/Tipos de IVA/Views/TiposIVA_view.res and b/Source/Modulos/Tipos de IVA/Views/TiposIVA_view.res differ diff --git a/Source/Servicios/FactuGES.RODL b/Source/Servicios/FactuGES.RODL index 1e4aad7a..3abed122 100644 --- a/Source/Servicios/FactuGES.RODL +++ b/Source/Servicios/FactuGES.RODL @@ -1,17 +1,10 @@ + - + - - - - - - - - @@ -32,7 +25,7 @@ - + @@ -62,23 +55,15 @@ - + - - - - - - - - - + @@ -94,7 +79,7 @@ - + @@ -102,39 +87,33 @@ - + - - - - - - - - - + - - - - - - - - + + + + + + + + + + @@ -144,7 +123,7 @@ - + @@ -154,11 +133,11 @@ - + - + diff --git a/Source/Servicios/FactuGES_Intf.pas b/Source/Servicios/FactuGES_Intf.pas index f034a4fb..eab5cc8f 100644 --- a/Source/Servicios/FactuGES_Intf.pas +++ b/Source/Servicios/FactuGES_Intf.pas @@ -8,16 +8,19 @@ unit FactuGES_Intf; { unit is regenerated the next time you compile the project. } {----------------------------------------------------------------------------} +{$I Remobjects.inc} + interface uses {vcl:} Classes, TypInfo, - {RemObjects:} uROClasses, uROClient, uROTypes, uROClientIntf, - {Used RODLs:} DataAbstract_Intf; + {RemObjects:} uROXMLIntf, uROClasses, uROClient, uROTypes, uROClientIntf, + {Used RODLs:} DataAbstract4_Intf; const { Library ID } LibraryUID = '{99553DD5-13B5-40EB-B7E6-D2B9A7C1B4D6}'; + TargetNamespace = ''; { Service Interface ID's } IsrvContactos_IID : TGUID = '{28CCDC07-A3A4-4917-89B4-64423DC70C9D}'; @@ -27,6 +30,7 @@ const IsrvFamilias_IID : TGUID = '{D351175C-CBFD-4328-BF2A-FDC0B05A6308}'; IsrvFormasPago_IID : TGUID = '{38AA9F85-B454-4A87-B6E8-E9C8BB2A17D9}'; IsrvTiposIVA_IID : TGUID = '{09B44AB5-6212-448A-8DF2-A503E3F2C9B1}'; + IsrvUsuarios_IID : TGUID = '{29388459-1A0B-46BE-AF9E-66A9E7AABB0B}'; { Event ID's } @@ -39,29 +43,35 @@ type IsrvFamilias = interface; IsrvFormasPago = interface; IsrvTiposIVA = interface; + IsrvUsuarios = interface; TRdxEmpresasArray = class; TRdxLoginInfo = class; + + { Enumerateds } + { TRdxLoginInfo } TRdxLoginInfo = class(TROComplexType) private fUserID: Integer; fSessionID: String; fUsuario: String; - fPerfiles: TDAStringArray; + fPerfiles: StringArray; fEmpresas: TRdxEmpresasArray; - function GetPerfiles: TDAStringArray; + function GetPerfiles: StringArray; function GetEmpresas: TRdxEmpresasArray; public procedure Assign(iSource: TPersistent); override; + procedure ReadComplex(ASerializer: TObject); override; + procedure WriteComplex(ASerializer: TObject); override; published property UserID:Integer read fUserID write fUserID; property SessionID:String read fSessionID write fSessionID; property Usuario:String read fUsuario write fUsuario; - property Perfiles:TDAStringArray read GetPerfiles write fPerfiles; + property Perfiles:StringArray read GetPerfiles write fPerfiles; property Empresas:TRdxEmpresasArray read GetEmpresas write fEmpresas; end; @@ -69,8 +79,8 @@ type TRdxLoginInfoCollection = class(TROCollection) protected constructor Create(aItemClass: TCollectionItemClass); overload; - function GetItems(Index: integer): TRdxLoginInfo; - procedure SetItems(Index: integer; const Value: TRdxLoginInfo); + function GetItems(aIndex: integer): TRdxLoginInfo; + procedure SetItems(aIndex: integer; const Value: TRdxLoginInfo); public constructor Create; overload; function Add: TRdxLoginInfo; reintroduce; @@ -78,34 +88,37 @@ type end; { TRdxEmpresasArray } + TRdxEmpresasArray_Integer = array of Integer; TRdxEmpresasArray = class(TROArray) private fCount: Integer; - fItems : array of Integer; + fItems : TRdxEmpresasArray_Integer; protected procedure Grow; virtual; - function GetItems(Index: integer): Integer; - procedure SetItems(Index: integer; const Value: Integer); + function GetItems(aIndex: integer): Integer; + procedure SetItems(aIndex: integer; const Value: Integer); function GetCount: integer; override; public class function GetItemType: PTypeInfo; override; class function GetItemSize: integer; override; - function GetItemRef(Index: integer): pointer; override; + function GetItemRef(aIndex: integer): pointer; override; procedure Clear; override; - procedure Delete(Index: integer); override; + procedure Delete(aIndex: integer); override; procedure Resize(ElementCount: integer); override; procedure Assign(iSource:TPersistent); override; + procedure ReadComplex(ASerializer: TObject); override; + procedure WriteComplex(ASerializer: TObject); override; function Add(const Value:Integer): integer; property Count : integer read GetCount; property Items[Index: integer]:Integer read GetItems write SetItems; default; + property InnerArray: TRdxEmpresasArray_Integer read fItems; end; { IsrvContactos } - IsrvContactos = interface(IDARemoteService) + IsrvContactos = interface(IDataAbstractService) ['{28CCDC07-A3A4-4917-89B4-64423DC70C9D}'] - function GetNextAutoInc(const GeneratorName: String): Integer; function GenerateFichaEmpleadoReport(const EmpleadoID: String): Binary; function GenerateEtiquetasReport(const ContactosID: String): Binary; end; @@ -116,17 +129,16 @@ type end; { TsrvContactos_Proxy } - TsrvContactos_Proxy = class(TDARemoteService_Proxy, IsrvContactos) + TsrvContactos_Proxy = class(TDataAbstractService_Proxy, IsrvContactos) protected function __GetInterfaceName:string; override; - function GetNextAutoInc(const GeneratorName: String): Integer; function GenerateFichaEmpleadoReport(const EmpleadoID: String): Binary; function GenerateEtiquetasReport(const ContactosID: String): Binary; end; { IsrvLogin } - IsrvLogin = interface(IDARemoteService) + IsrvLogin = interface(IDataAbstractService) ['{399F9DB4-1B34-4140-AB6E-3BC10C0A7034}'] function Login(const User: String; const Password: String; out LoginInfo: TRdxLoginInfo): Boolean; procedure Logout; @@ -139,7 +151,7 @@ type end; { TsrvLogin_Proxy } - TsrvLogin_Proxy = class(TDARemoteService_Proxy, IsrvLogin) + TsrvLogin_Proxy = class(TDataAbstractService_Proxy, IsrvLogin) protected function __GetInterfaceName:string; override; @@ -149,9 +161,8 @@ type end; { IsrvEmpresas } - IsrvEmpresas = interface(IDARemoteService) + IsrvEmpresas = interface(IDataAbstractService) ['{590F06D1-26B4-435B-B636-50CB8FFE6353}'] - function GetNextAutoInc(const GeneratorName: String): Integer; end; { CosrvEmpresas } @@ -160,15 +171,14 @@ type end; { TsrvEmpresas_Proxy } - TsrvEmpresas_Proxy = class(TDARemoteService_Proxy, IsrvEmpresas) + TsrvEmpresas_Proxy = class(TDataAbstractService_Proxy, IsrvEmpresas) protected function __GetInterfaceName:string; override; - function GetNextAutoInc(const GeneratorName: String): Integer; end; { IsrvConfiguracion } - IsrvConfiguracion = interface(IDARemoteService) + IsrvConfiguracion = interface(IDataAbstractService) ['{0882B8A4-C8AA-424E-8FC1-C6226B670522}'] function darValor(const CODIGO: String): String; end; @@ -179,7 +189,7 @@ type end; { TsrvConfiguracion_Proxy } - TsrvConfiguracion_Proxy = class(TDARemoteService_Proxy, IsrvConfiguracion) + TsrvConfiguracion_Proxy = class(TDataAbstractService_Proxy, IsrvConfiguracion) protected function __GetInterfaceName:string; override; @@ -187,7 +197,7 @@ type end; { IsrvFamilias } - IsrvFamilias = interface(IDARemoteService) + IsrvFamilias = interface(IDataAbstractService) ['{D351175C-CBFD-4328-BF2A-FDC0B05A6308}'] end; @@ -197,16 +207,15 @@ type end; { TsrvFamilias_Proxy } - TsrvFamilias_Proxy = class(TDARemoteService_Proxy, IsrvFamilias) + TsrvFamilias_Proxy = class(TDataAbstractService_Proxy, IsrvFamilias) protected function __GetInterfaceName:string; override; end; { IsrvFormasPago } - IsrvFormasPago = interface(IDARemoteService) + IsrvFormasPago = interface(IDataAbstractService) ['{38AA9F85-B454-4A87-B6E8-E9C8BB2A17D9}'] - function GetNextAutoInc(const GeneratorName: String): Integer; end; { CosrvFormasPago } @@ -215,17 +224,15 @@ type end; { TsrvFormasPago_Proxy } - TsrvFormasPago_Proxy = class(TDARemoteService_Proxy, IsrvFormasPago) + TsrvFormasPago_Proxy = class(TDataAbstractService_Proxy, IsrvFormasPago) protected function __GetInterfaceName:string; override; - function GetNextAutoInc(const GeneratorName: String): Integer; end; { IsrvTiposIVA } - IsrvTiposIVA = interface(IDARemoteService) + IsrvTiposIVA = interface(IDataAbstractService) ['{09B44AB5-6212-448A-8DF2-A503E3F2C9B1}'] - function GetNextAutoInc(const GeneratorName: String): Integer; end; { CosrvTiposIVA } @@ -234,18 +241,34 @@ type end; { TsrvTiposIVA_Proxy } - TsrvTiposIVA_Proxy = class(TDARemoteService_Proxy, IsrvTiposIVA) + TsrvTiposIVA_Proxy = class(TDataAbstractService_Proxy, IsrvTiposIVA) + protected + function __GetInterfaceName:string; override; + + end; + + { IsrvUsuarios } + IsrvUsuarios = interface(IDataAbstractService) + ['{29388459-1A0B-46BE-AF9E-66A9E7AABB0B}'] + end; + + { CosrvUsuarios } + CosrvUsuarios = class + class function Create(const aMessage: IROMessage; aTransportChannel: IROTransportChannel): IsrvUsuarios; + end; + + { TsrvUsuarios_Proxy } + TsrvUsuarios_Proxy = class(TDataAbstractService_Proxy, IsrvUsuarios) protected function __GetInterfaceName:string; override; - function GetNextAutoInc(const GeneratorName: String): Integer; end; implementation uses {vcl:} SysUtils, - {RemObjects:} uROEventRepository, uRORes; + {RemObjects:} uROEventRepository, uROSerializer, uRORes; { TRdxEmpresasArray } @@ -257,6 +280,7 @@ begin lSource := TRdxEmpresasArray(iSource); Clear(); Resize(lSource.Count); + for i := 0 to Count-1 do begin Items[i] := lSource.Items[i]; end; @@ -276,16 +300,16 @@ begin result := SizeOf(Integer); end; -function TRdxEmpresasArray.GetItems(Index: integer): Integer; +function TRdxEmpresasArray.GetItems(aIndex: integer): Integer; begin - if (Index < 0) or (Index >= Count) then RaiseError(err_ArrayIndexOutOfBounds,[Index]); - result := fItems[Index]; + if (aIndex < 0) or (aIndex >= Count) then RaiseError(err_ArrayIndexOutOfBounds,[aIndex]); + result := fItems[aIndex]; end; -function TRdxEmpresasArray.GetItemRef(Index: integer): pointer; +function TRdxEmpresasArray.GetItemRef(aIndex: integer): pointer; begin - if (Index < 0) or (Index >= Count) then RaiseError(err_ArrayIndexOutOfBounds,[Index]); - result := @fItems[Index]; + if (aIndex < 0) or (aIndex >= Count) then RaiseError(err_ArrayIndexOutOfBounds,[aIndex]); + result := @fItems[aIndex]; end; procedure TRdxEmpresasArray.Clear; @@ -294,26 +318,29 @@ begin FCount := 0; end; -procedure TRdxEmpresasArray.Delete(Index: integer); +procedure TRdxEmpresasArray.Delete(aIndex: integer); var i: integer; begin - if (Index>=Count) then RaiseError(err_InvalidIndex, [Index]); + if (aIndex>=Count) then RaiseError(err_InvalidIndex, [aIndex]); - if (Index= Count) then RaiseError(err_ArrayIndexOutOfBounds,[Index]); - fItems[Index] := Value; + if (aIndex < 0) or (aIndex >= Count) then RaiseError(err_ArrayIndexOutOfBounds,[aIndex]); + if fItems[aIndex] <> Value then begin + fItems[aIndex] := Value; + end; end; procedure TRdxEmpresasArray.Resize(ElementCount: integer); begin + if fCount = ElementCount then Exit; SetLength(fItems, ElementCount); FCount := ElementCount; end; @@ -347,14 +374,35 @@ begin Inc(fCount); end; +procedure TRdxEmpresasArray.ReadComplex(ASerializer: TObject); +var + lval: Integer; + i: integer; +begin + for i := 0 to Count-1 do begin + with TROSerializer(ASerializer) do + ReadInteger(GetArrayElementName(GetItemType, GetItemRef(i)), otSLong, lval, i); + Items[i] := lval; + end; +end; + +procedure TRdxEmpresasArray.WriteComplex(ASerializer: TObject); +var + i: integer; +begin + for i := 0 to Count-1 do + with TROSerializer(ASerializer) do + WriteInteger(GetArrayElementName(GetItemType, GetItemRef(i)), otSLong, fItems[i], i); +end; + { TRdxLoginInfo } procedure TRdxLoginInfo.Assign(iSource: TPersistent); -var lSource:TRdxLoginInfo; +var lSource: FactuGES_Intf.TRdxLoginInfo; begin inherited Assign(iSource); - if (iSource is TRdxLoginInfo) then begin - lSource := TRdxLoginInfo(iSource); + if (iSource is FactuGES_Intf.TRdxLoginInfo) then begin + lSource := FactuGES_Intf.TRdxLoginInfo(iSource); UserID := lSource.UserID; SessionID := lSource.SessionID; Usuario := lSource.Usuario; @@ -363,9 +411,9 @@ begin end; end; -function TRdxLoginInfo.GetPerfiles: TDAStringArray; +function TRdxLoginInfo.GetPerfiles: StringArray; begin - if (fPerfiles = nil) then fPerfiles := TDAStringArray.Create(); + if (fPerfiles = nil) then fPerfiles := StringArray.Create(); result := fPerfiles; end; @@ -375,6 +423,88 @@ begin result := fEmpresas; end; +procedure TRdxLoginInfo.ReadComplex(ASerializer: TObject); +var + l_Empresas: TRdxEmpresasArray; + l_Perfiles: StringArray; + l_SessionID: String; + l_UserID: Integer; + l_Usuario: String; +begin + if TROSerializer(ASerializer).RecordStrictOrder then begin + l_UserID := UserID; + TROSerializer(ASerializer).ReadInteger('UserID', otSLong, l_UserID); + UserID := l_UserID; + l_SessionID := SessionID; + TROSerializer(ASerializer).ReadUTF8String('SessionID', l_SessionID); + SessionID := l_SessionID; + l_Usuario := Usuario; + TROSerializer(ASerializer).ReadUTF8String('Usuario', l_Usuario); + Usuario := l_Usuario; + l_Perfiles := Perfiles; + TROSerializer(ASerializer).ReadArray('Perfiles', StringArray, l_Perfiles); + if Perfiles <> l_Perfiles then Perfiles.Free; + Perfiles := l_Perfiles; + l_Empresas := Empresas; + TROSerializer(ASerializer).ReadArray('Empresas', TRdxEmpresasArray, l_Empresas); + if Empresas <> l_Empresas then Empresas.Free; + Empresas := l_Empresas; + end + else begin + l_Empresas := Empresas; + TROSerializer(ASerializer).ReadArray('Empresas', TRdxEmpresasArray, l_Empresas); + if Empresas <> l_Empresas then Empresas.Free; + Empresas := l_Empresas; + l_Perfiles := Perfiles; + TROSerializer(ASerializer).ReadArray('Perfiles', StringArray, l_Perfiles); + if Perfiles <> l_Perfiles then Perfiles.Free; + Perfiles := l_Perfiles; + l_SessionID := SessionID; + TROSerializer(ASerializer).ReadUTF8String('SessionID', l_SessionID); + SessionID := l_SessionID; + l_UserID := UserID; + TROSerializer(ASerializer).ReadInteger('UserID', otSLong, l_UserID); + UserID := l_UserID; + l_Usuario := Usuario; + TROSerializer(ASerializer).ReadUTF8String('Usuario', l_Usuario); + Usuario := l_Usuario; + end; +end; + +procedure TRdxLoginInfo.WriteComplex(ASerializer: TObject); +var + l_Empresas: TRdxEmpresasArray; + l_Perfiles: StringArray; + l_SessionID: String; + l_UserID: Integer; + l_Usuario: String; +begin + if TROSerializer(ASerializer).RecordStrictOrder then begin + l_UserID := UserID; + TROSerializer(ASerializer).WriteInteger('UserID', otSLong, l_UserID); + l_SessionID := SessionID; + TROSerializer(ASerializer).WriteUTF8String('SessionID', l_SessionID); + l_Usuario := Usuario; + TROSerializer(ASerializer).WriteUTF8String('Usuario', l_Usuario); + l_Perfiles := Perfiles; + TROSerializer(ASerializer).WriteArray('Perfiles', l_Perfiles); + l_Empresas := Empresas; + TROSerializer(ASerializer).WriteArray('Empresas', l_Empresas); + end + else begin + l_Empresas := Empresas; + TROSerializer(ASerializer).WriteArray('Empresas', l_Empresas); + l_Perfiles := Perfiles; + TROSerializer(ASerializer).WriteArray('Perfiles', l_Perfiles); + l_SessionID := SessionID; + TROSerializer(ASerializer).WriteUTF8String('SessionID', l_SessionID); + l_UserID := UserID; + TROSerializer(ASerializer).WriteInteger('UserID', otSLong, l_UserID); + l_Usuario := Usuario; + TROSerializer(ASerializer).WriteUTF8String('Usuario', l_Usuario); + end; +end; + { TRdxLoginInfoCollection } constructor TRdxLoginInfoCollection.Create; begin @@ -391,14 +521,14 @@ begin result := TRdxLoginInfo(inherited Add); end; -function TRdxLoginInfoCollection.GetItems(Index: integer): TRdxLoginInfo; +function TRdxLoginInfoCollection.GetItems(aIndex: integer): TRdxLoginInfo; begin - result := TRdxLoginInfo(inherited Items[Index]); + result := TRdxLoginInfo(inherited Items[aIndex]); end; -procedure TRdxLoginInfoCollection.SetItems(Index: integer; const Value: TRdxLoginInfo); +procedure TRdxLoginInfoCollection.SetItems(aIndex: integer; const Value: TRdxLoginInfo); begin - TRdxLoginInfo(inherited Items[Index]).Assign(Value); + TRdxLoginInfo(inherited Items[aIndex]).Assign(Value); end; { CosrvContactos } @@ -415,74 +545,37 @@ begin result := 'srvContactos'; end; -function TsrvContactos_Proxy.GetNextAutoInc(const GeneratorName: String): Integer; -var - __request, __response : TMemoryStream; -begin - __request := TMemoryStream.Create; - __response := TMemoryStream.Create; - - try - __Message.Initialize(__TransportChannel, 'FactuGES', __InterfaceName, 'GetNextAutoInc'); - __Message.Write('GeneratorName', TypeInfo(String), GeneratorName, []); - __Message.Finalize; - - __Message.WriteToStream(__request); - __TransportChannel.Dispatch(__request, __response); - __Message.ReadFromStream(__response); - - __Message.Read('Result', TypeInfo(Integer), result, []); - finally - __request.Free; - __response.Free; - end -end; - function TsrvContactos_Proxy.GenerateFichaEmpleadoReport(const EmpleadoID: String): Binary; -var - __request, __response : TMemoryStream; begin - result := nil; - __request := TMemoryStream.Create; - __response := TMemoryStream.Create; - try - __Message.Initialize(__TransportChannel, 'FactuGES', __InterfaceName, 'GenerateFichaEmpleadoReport'); - __Message.Write('EmpleadoID', TypeInfo(String), EmpleadoID, []); - __Message.Finalize; + result := nil; + __Message.InitializeRequestMessage(__TransportChannel, 'FactuGES', __InterfaceName, 'GenerateFichaEmpleadoReport'); + __Message.Write('EmpleadoID', TypeInfo(String), EmpleadoID, []); + __Message.Finalize; - __Message.WriteToStream(__request); - __TransportChannel.Dispatch(__request, __response); - __Message.ReadFromStream(__response); + __TransportChannel.Dispatch(__Message); - __Message.Read('Result', TypeInfo(Binary), result, []); + __Message.Read('Result', TypeInfo(Binary), result, []); finally - __request.Free; - __response.Free; + __Message.UnsetAttributes(__TransportChannel); + __Message.FreeStream; end end; function TsrvContactos_Proxy.GenerateEtiquetasReport(const ContactosID: String): Binary; -var - __request, __response : TMemoryStream; begin - result := nil; - __request := TMemoryStream.Create; - __response := TMemoryStream.Create; - try - __Message.Initialize(__TransportChannel, 'FactuGES', __InterfaceName, 'GenerateEtiquetasReport'); - __Message.Write('ContactosID', TypeInfo(String), ContactosID, []); - __Message.Finalize; + result := nil; + __Message.InitializeRequestMessage(__TransportChannel, 'FactuGES', __InterfaceName, 'GenerateEtiquetasReport'); + __Message.Write('ContactosID', TypeInfo(String), ContactosID, []); + __Message.Finalize; - __Message.WriteToStream(__request); - __TransportChannel.Dispatch(__request, __response); - __Message.ReadFromStream(__response); + __TransportChannel.Dispatch(__Message); - __Message.Read('Result', TypeInfo(Binary), result, []); + __Message.Read('Result', TypeInfo(Binary), result, []); finally - __request.Free; - __response.Free; + __Message.UnsetAttributes(__TransportChannel); + __Message.FreeStream; end end; @@ -501,71 +594,49 @@ begin end; function TsrvLogin_Proxy.Login(const User: String; const Password: String; out LoginInfo: TRdxLoginInfo): Boolean; -var - __request, __response : TMemoryStream; begin - LoginInfo := nil; - __request := TMemoryStream.Create; - __response := TMemoryStream.Create; - try - __Message.Initialize(__TransportChannel, 'FactuGES', __InterfaceName, 'Login'); - __Message.Write('User', TypeInfo(String), User, []); - __Message.Write('Password', TypeInfo(String), Password, []); - __Message.Finalize; + LoginInfo := nil; + __Message.InitializeRequestMessage(__TransportChannel, 'FactuGES', __InterfaceName, 'Login'); + __Message.Write('User', TypeInfo(String), User, []); + __Message.Write('Password', TypeInfo(String), Password, []); + __Message.Finalize; - __Message.WriteToStream(__request); - __TransportChannel.Dispatch(__request, __response); - __Message.ReadFromStream(__response); + __TransportChannel.Dispatch(__Message); - __Message.Read('Result', TypeInfo(Boolean), result, []); - __Message.Read('LoginInfo', TypeInfo(FactuGES_Intf.TRdxLoginInfo), LoginInfo, []); + __Message.Read('Result', TypeInfo(Boolean), result, []); + __Message.Read('LoginInfo', TypeInfo(FactuGES_Intf.TRdxLoginInfo), LoginInfo, []); finally - __request.Free; - __response.Free; + __Message.UnsetAttributes(__TransportChannel); + __Message.FreeStream; end end; procedure TsrvLogin_Proxy.Logout; -var - __request, __response : TMemoryStream; begin - __request := TMemoryStream.Create; - __response := TMemoryStream.Create; - try - __Message.Initialize(__TransportChannel, 'FactuGES', __InterfaceName, 'Logout'); - __Message.Finalize; + __Message.InitializeRequestMessage(__TransportChannel, 'FactuGES', __InterfaceName, 'Logout'); + __Message.Finalize; - __Message.WriteToStream(__request); - __TransportChannel.Dispatch(__request, __response); - __Message.ReadFromStream(__response); + __TransportChannel.Dispatch(__Message); finally - __request.Free; - __response.Free; + __Message.FreeStream; end end; function TsrvLogin_Proxy.Ping: Boolean; -var - __request, __response : TMemoryStream; begin - __request := TMemoryStream.Create; - __response := TMemoryStream.Create; - try - __Message.Initialize(__TransportChannel, 'FactuGES', __InterfaceName, 'Ping'); - __Message.Finalize; + __Message.InitializeRequestMessage(__TransportChannel, 'FactuGES', __InterfaceName, 'Ping'); + __Message.Finalize; - __Message.WriteToStream(__request); - __TransportChannel.Dispatch(__request, __response); - __Message.ReadFromStream(__response); + __TransportChannel.Dispatch(__Message); - __Message.Read('Result', TypeInfo(Boolean), result, []); + __Message.Read('Result', TypeInfo(Boolean), result, []); finally - __request.Free; - __response.Free; + __Message.UnsetAttributes(__TransportChannel); + __Message.FreeStream; end end; @@ -576,36 +647,11 @@ begin result := TsrvEmpresas_Proxy.Create(aMessage, aTransportChannel); end; -{ TsrvEmpresas_Proxy } - function TsrvEmpresas_Proxy.__GetInterfaceName:string; begin result := 'srvEmpresas'; end; -function TsrvEmpresas_Proxy.GetNextAutoInc(const GeneratorName: String): Integer; -var - __request, __response : TMemoryStream; -begin - __request := TMemoryStream.Create; - __response := TMemoryStream.Create; - - try - __Message.Initialize(__TransportChannel, 'FactuGES', __InterfaceName, 'GetNextAutoInc'); - __Message.Write('GeneratorName', TypeInfo(String), GeneratorName, []); - __Message.Finalize; - - __Message.WriteToStream(__request); - __TransportChannel.Dispatch(__request, __response); - __Message.ReadFromStream(__response); - - __Message.Read('Result', TypeInfo(Integer), result, []); - finally - __request.Free; - __response.Free; - end -end; - { CosrvConfiguracion } class function CosrvConfiguracion.Create(const aMessage: IROMessage; aTransportChannel: IROTransportChannel): IsrvConfiguracion; @@ -621,25 +667,18 @@ begin end; function TsrvConfiguracion_Proxy.darValor(const CODIGO: String): String; -var - __request, __response : TMemoryStream; begin - __request := TMemoryStream.Create; - __response := TMemoryStream.Create; - try - __Message.Initialize(__TransportChannel, 'FactuGES', __InterfaceName, 'darValor'); - __Message.Write('CODIGO', TypeInfo(String), CODIGO, []); - __Message.Finalize; + __Message.InitializeRequestMessage(__TransportChannel, 'FactuGES', __InterfaceName, 'darValor'); + __Message.Write('CODIGO', TypeInfo(String), CODIGO, []); + __Message.Finalize; - __Message.WriteToStream(__request); - __TransportChannel.Dispatch(__request, __response); - __Message.ReadFromStream(__response); + __TransportChannel.Dispatch(__Message); - __Message.Read('Result', TypeInfo(String), result, []); + __Message.Read('Result', TypeInfo(String), result, []); finally - __request.Free; - __response.Free; + __Message.UnsetAttributes(__TransportChannel); + __Message.FreeStream; end end; @@ -662,36 +701,11 @@ begin result := TsrvFormasPago_Proxy.Create(aMessage, aTransportChannel); end; -{ TsrvFormasPago_Proxy } - function TsrvFormasPago_Proxy.__GetInterfaceName:string; begin result := 'srvFormasPago'; end; -function TsrvFormasPago_Proxy.GetNextAutoInc(const GeneratorName: String): Integer; -var - __request, __response : TMemoryStream; -begin - __request := TMemoryStream.Create; - __response := TMemoryStream.Create; - - try - __Message.Initialize(__TransportChannel, 'FactuGES', __InterfaceName, 'GetNextAutoInc'); - __Message.Write('GeneratorName', TypeInfo(String), GeneratorName, []); - __Message.Finalize; - - __Message.WriteToStream(__request); - __TransportChannel.Dispatch(__request, __response); - __Message.ReadFromStream(__response); - - __Message.Read('Result', TypeInfo(Integer), result, []); - finally - __request.Free; - __response.Free; - end -end; - { CosrvTiposIVA } class function CosrvTiposIVA.Create(const aMessage: IROMessage; aTransportChannel: IROTransportChannel): IsrvTiposIVA; @@ -699,34 +713,21 @@ begin result := TsrvTiposIVA_Proxy.Create(aMessage, aTransportChannel); end; -{ TsrvTiposIVA_Proxy } - function TsrvTiposIVA_Proxy.__GetInterfaceName:string; begin result := 'srvTiposIVA'; end; -function TsrvTiposIVA_Proxy.GetNextAutoInc(const GeneratorName: String): Integer; -var - __request, __response : TMemoryStream; +{ CosrvUsuarios } + +class function CosrvUsuarios.Create(const aMessage: IROMessage; aTransportChannel: IROTransportChannel): IsrvUsuarios; begin - __request := TMemoryStream.Create; - __response := TMemoryStream.Create; + result := TsrvUsuarios_Proxy.Create(aMessage, aTransportChannel); +end; - try - __Message.Initialize(__TransportChannel, 'FactuGES', __InterfaceName, 'GetNextAutoInc'); - __Message.Write('GeneratorName', TypeInfo(String), GeneratorName, []); - __Message.Finalize; - - __Message.WriteToStream(__request); - __TransportChannel.Dispatch(__request, __response); - __Message.ReadFromStream(__response); - - __Message.Read('Result', TypeInfo(Integer), result, []); - finally - __request.Free; - __response.Free; - end +function TsrvUsuarios_Proxy.__GetInterfaceName:string; +begin + result := 'srvUsuarios'; end; initialization @@ -739,6 +740,7 @@ initialization RegisterProxyClass(IsrvFamilias_IID, TsrvFamilias_Proxy); RegisterProxyClass(IsrvFormasPago_IID, TsrvFormasPago_Proxy); RegisterProxyClass(IsrvTiposIVA_IID, TsrvTiposIVA_Proxy); + RegisterProxyClass(IsrvUsuarios_IID, TsrvUsuarios_Proxy); finalization @@ -751,5 +753,6 @@ finalization UnregisterProxyClass(IsrvFamilias_IID); UnregisterProxyClass(IsrvFormasPago_IID); UnregisterProxyClass(IsrvTiposIVA_IID); + UnregisterProxyClass(IsrvUsuarios_IID); end. diff --git a/Source/Servicios/FactuGES_Invk.pas b/Source/Servicios/FactuGES_Invk.pas index bc4df77b..9ee8f81e 100644 --- a/Source/Servicios/FactuGES_Invk.pas +++ b/Source/Servicios/FactuGES_Invk.pas @@ -8,26 +8,30 @@ unit FactuGES_Invk; { unit is regenerated the next time you compile the project. } {----------------------------------------------------------------------------} +{$I Remobjects.inc} + interface uses {vcl:} Classes, - {RemObjects:} uROServer, uROServerIntf, uROTypes, uROClientIntf, - {Used RODL Intf's:} DataAbstract_Intf, - {Used RODL Invk's:} DataAbstract_Invk, + {RemObjects:} uROXMLIntf, uROServer, uROServerIntf, uROTypes, uROClientIntf, + {Used RODL Intf's:} DataAbstract4_Intf, + {Used RODL Invk's:} DataAbstract4_Invk, {Generated:} FactuGES_Intf; type - TsrvContactos_Invoker = class(TDARemoteService_Invoker) + {$M+} + TsrvContactos_Invoker = class(TDataAbstractService_Invoker) private protected published - procedure Invoke_GetNextAutoInc(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions); procedure Invoke_GenerateFichaEmpleadoReport(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions); procedure Invoke_GenerateEtiquetasReport(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions); end; + {$M-} - TsrvLogin_Invoker = class(TDARemoteService_Invoker) + {$M+} + TsrvLogin_Invoker = class(TDataAbstractService_Invoker) private protected published @@ -35,40 +39,56 @@ type procedure Invoke_Logout(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions); procedure Invoke_Ping(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions); end; + {$M-} - TsrvEmpresas_Invoker = class(TDARemoteService_Invoker) + {$M+} + TsrvEmpresas_Invoker = class(TDataAbstractService_Invoker) private protected published - procedure Invoke_GetNextAutoInc(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions); end; + {$M-} - TsrvConfiguracion_Invoker = class(TDARemoteService_Invoker) + {$M+} + TsrvConfiguracion_Invoker = class(TDataAbstractService_Invoker) private protected published procedure Invoke_darValor(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions); end; + {$M-} - TsrvFamilias_Invoker = class(TDARemoteService_Invoker) + {$M+} + TsrvFamilias_Invoker = class(TDataAbstractService_Invoker) private protected published end; + {$M-} - TsrvFormasPago_Invoker = class(TDARemoteService_Invoker) + {$M+} + TsrvFormasPago_Invoker = class(TDataAbstractService_Invoker) private protected published - procedure Invoke_GetNextAutoInc(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions); end; + {$M-} - TsrvTiposIVA_Invoker = class(TDARemoteService_Invoker) + {$M+} + TsrvTiposIVA_Invoker = class(TDataAbstractService_Invoker) private protected published - procedure Invoke_GetNextAutoInc(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions); end; + {$M-} + + {$M+} + TsrvUsuarios_Invoker = class(TDataAbstractService_Invoker) + private + protected + published + end; + {$M-} implementation @@ -77,25 +97,6 @@ uses { TsrvContactos_Invoker } -procedure TsrvContactos_Invoker.Invoke_GetNextAutoInc(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions); -{ function GetNextAutoInc(const GeneratorName: String): Integer; } -var - GeneratorName: String; - lResult: Integer; -begin - try - __Message.Read('GeneratorName', TypeInfo(String), GeneratorName, []); - - lResult := (__Instance as IsrvContactos).GetNextAutoInc(GeneratorName); - - __Message.Initialize(__Transport, 'FactuGES', 'srvContactos', 'GetNextAutoIncResponse'); - __Message.Write('Result', TypeInfo(Integer), lResult, []); - __Message.Finalize; - - finally - end; -end; - procedure TsrvContactos_Invoker.Invoke_GenerateFichaEmpleadoReport(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions); { function GenerateFichaEmpleadoReport(const EmpleadoID: String): Binary; } var @@ -109,9 +110,10 @@ begin lResult := (__Instance as IsrvContactos).GenerateFichaEmpleadoReport(EmpleadoID); - __Message.Initialize(__Transport, 'FactuGES', 'srvContactos', 'GenerateFichaEmpleadoReportResponse'); + __Message.InitializeResponseMessage(__Transport, 'FactuGES', 'srvContactos', 'GenerateFichaEmpleadoReportResponse'); __Message.Write('Result', TypeInfo(Binary), lResult, []); __Message.Finalize; + __Message.UnsetAttributes(__Transport); finally __lObjectDisposer := TROObjectDisposer.Create(__Instance); @@ -136,9 +138,10 @@ begin lResult := (__Instance as IsrvContactos).GenerateEtiquetasReport(ContactosID); - __Message.Initialize(__Transport, 'FactuGES', 'srvContactos', 'GenerateEtiquetasReportResponse'); + __Message.InitializeResponseMessage(__Transport, 'FactuGES', 'srvContactos', 'GenerateEtiquetasReportResponse'); __Message.Write('Result', TypeInfo(Binary), lResult, []); __Message.Finalize; + __Message.UnsetAttributes(__Transport); finally __lObjectDisposer := TROObjectDisposer.Create(__Instance); @@ -168,10 +171,11 @@ begin lResult := (__Instance as IsrvLogin).Login(User, Password, LoginInfo); - __Message.Initialize(__Transport, 'FactuGES', 'srvLogin', 'LoginResponse'); + __Message.InitializeResponseMessage(__Transport, 'FactuGES', 'srvLogin', 'LoginResponse'); __Message.Write('Result', TypeInfo(Boolean), lResult, []); __Message.Write('LoginInfo', TypeInfo(FactuGES_Intf.TRdxLoginInfo), LoginInfo, []); __Message.Finalize; + __Message.UnsetAttributes(__Transport); finally __lObjectDisposer := TROObjectDisposer.Create(__Instance); @@ -189,7 +193,7 @@ begin try (__Instance as IsrvLogin).Logout; - __Message.Initialize(__Transport, 'FactuGES', 'srvLogin', 'LogoutResponse'); + __Message.InitializeResponseMessage(__Transport, 'FactuGES', 'srvLogin', 'LogoutResponse'); __Message.Finalize; __oResponseOptions := [roNoResponse]; @@ -206,30 +210,10 @@ begin try lResult := (__Instance as IsrvLogin).Ping; - __Message.Initialize(__Transport, 'FactuGES', 'srvLogin', 'PingResponse'); + __Message.InitializeResponseMessage(__Transport, 'FactuGES', 'srvLogin', 'PingResponse'); __Message.Write('Result', TypeInfo(Boolean), lResult, []); __Message.Finalize; - - finally - end; -end; - -{ TsrvEmpresas_Invoker } - -procedure TsrvEmpresas_Invoker.Invoke_GetNextAutoInc(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions); -{ function GetNextAutoInc(const GeneratorName: String): Integer; } -var - GeneratorName: String; - lResult: Integer; -begin - try - __Message.Read('GeneratorName', TypeInfo(String), GeneratorName, []); - - lResult := (__Instance as IsrvEmpresas).GetNextAutoInc(GeneratorName); - - __Message.Initialize(__Transport, 'FactuGES', 'srvEmpresas', 'GetNextAutoIncResponse'); - __Message.Write('Result', TypeInfo(Integer), lResult, []); - __Message.Finalize; + __Message.UnsetAttributes(__Transport); finally end; @@ -248,51 +232,10 @@ begin lResult := (__Instance as IsrvConfiguracion).darValor(CODIGO); - __Message.Initialize(__Transport, 'FactuGES', 'srvConfiguracion', 'darValorResponse'); + __Message.InitializeResponseMessage(__Transport, 'FactuGES', 'srvConfiguracion', 'darValorResponse'); __Message.Write('Result', TypeInfo(String), lResult, []); __Message.Finalize; - - finally - end; -end; - -{ TsrvFormasPago_Invoker } - -procedure TsrvFormasPago_Invoker.Invoke_GetNextAutoInc(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions); -{ function GetNextAutoInc(const GeneratorName: String): Integer; } -var - GeneratorName: String; - lResult: Integer; -begin - try - __Message.Read('GeneratorName', TypeInfo(String), GeneratorName, []); - - lResult := (__Instance as IsrvFormasPago).GetNextAutoInc(GeneratorName); - - __Message.Initialize(__Transport, 'FactuGES', 'srvFormasPago', 'GetNextAutoIncResponse'); - __Message.Write('Result', TypeInfo(Integer), lResult, []); - __Message.Finalize; - - finally - end; -end; - -{ TsrvTiposIVA_Invoker } - -procedure TsrvTiposIVA_Invoker.Invoke_GetNextAutoInc(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions); -{ function GetNextAutoInc(const GeneratorName: String): Integer; } -var - GeneratorName: String; - lResult: Integer; -begin - try - __Message.Read('GeneratorName', TypeInfo(String), GeneratorName, []); - - lResult := (__Instance as IsrvTiposIVA).GetNextAutoInc(GeneratorName); - - __Message.Initialize(__Transport, 'FactuGES', 'srvTiposIVA', 'GetNextAutoIncResponse'); - __Message.Write('Result', TypeInfo(Integer), lResult, []); - __Message.Finalize; + __Message.UnsetAttributes(__Transport); finally end; diff --git a/Source/Servicios/RODLFILE.res b/Source/Servicios/RODLFILE.res index ccc70df2..58c528d8 100644 Binary files a/Source/Servicios/RODLFILE.res and b/Source/Servicios/RODLFILE.res differ diff --git a/Source/Servicios/srvConfiguracion_Impl.dfm b/Source/Servidor/Configuracion/srvConfiguracion_Impl.dfm similarity index 66% rename from Source/Servicios/srvConfiguracion_Impl.dfm rename to Source/Servidor/Configuracion/srvConfiguracion_Impl.dfm index b016f655..95fac36b 100644 --- a/Source/Servicios/srvConfiguracion_Impl.dfm +++ b/Source/Servidor/Configuracion/srvConfiguracion_Impl.dfm @@ -2,11 +2,11 @@ object srvConfiguracion: TsrvConfiguracion OldCreateOrder = True OnCreate = DARemoteServiceCreate SessionManager = dmServer.SessionManager - AcquireConnection = True ConnectionName = 'IBX' ServiceSchema = schConfiguracion - ServiceAdapter = DABINAdapter - OnBeforeAcquireConnection = DARemoteServiceBeforeAcquireConnection + ServiceDataStreamer = Bin2DataStreamer + ExportedDataTables = <> + BeforeAcquireConnection = DataAbstractServiceBeforeAcquireConnection Height = 160 Width = 300 object schConfiguracion: TDASchema @@ -18,7 +18,6 @@ object srvConfiguracion: TsrvConfiguracion Name = 'CODIGO' DataType = datString Size = 50 - BlobType = dabtUnknown Value = '' ParamType = daptInput end> @@ -40,25 +39,19 @@ object srvConfiguracion: TsrvConfiguracion Name = 'VALOR' DataType = datString Size = 100 - BlobType = dabtUnknown - DisplayWidth = 0 - Alignment = taLeftJustify - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False end> - BusinessRulesClient.ScriptLanguage = rslPascalScript - BusinessRulesServer.ScriptLanguage = rslPascalScript end> + JoinDataTables = <> + UnionDataTables = <> Commands = <> RelationShips = <> UpdateRules = <> + Version = 0 Left = 40 Top = 16 end - object DABINAdapter: TDABINAdapter + object Bin2DataStreamer: TDABin2DataStreamer Left = 40 - Top = 72 + Top = 80 end end diff --git a/Source/Servicios/srvConfiguracion_Impl.pas b/Source/Servidor/Configuracion/srvConfiguracion_Impl.pas similarity index 75% rename from Source/Servicios/srvConfiguracion_Impl.pas rename to Source/Servidor/Configuracion/srvConfiguracion_Impl.pas index 7818c20a..9f64d02c 100644 --- a/Source/Servicios/srvConfiguracion_Impl.pas +++ b/Source/Servidor/Configuracion/srvConfiguracion_Impl.pas @@ -12,22 +12,21 @@ interface uses {vcl:} Classes, SysUtils, {RemObjects:} uROClientIntf, uROTypes, uROServer, uROServerIntf, uROSessions, -// {Required:} uRORemoteDataModule, - {Ancestor Implementation:} DARemoteService_Impl, - {Used RODLs:} DataAbstract_Intf, -// {Generated:} FactuGES_Intf, uDAClasses; + {Ancestor Implementation:} DataAbstractService_Impl, + {Used RODLs:} DataAbstract4_Intf, {Generated:} FactuGES_Intf, uDAClasses, uDAScriptingProvider, - uDABusinessProcessor, uDADataTable, uDABINAdapter; + uDABusinessProcessor, uDADataTable, uDABINAdapter, uDADataStreamer, + uDABin2DataStreamer; type { TsrvConfiguracion } - TsrvConfiguracion = class(TDARemoteService, IsrvConfiguracion) - DABINAdapter: TDABINAdapter; + TsrvConfiguracion = class(TDataAbstractService, IsrvConfiguracion) schConfiguracion: TDASchema; + Bin2DataStreamer: TDABin2DataStreamer; procedure DARemoteServiceCreate(Sender: TObject); - procedure DARemoteServiceBeforeAcquireConnection(Sender: TDARemoteService; - var ConnectionName: string); + procedure DataAbstractServiceBeforeAcquireConnection(aSender: TObject; + var aConnectionName: string); protected { IsrvConfiguracion methods } function DarValor(const CODIGO: String): String; @@ -46,12 +45,6 @@ begin end; { srvConfiguracion } -procedure TsrvConfiguracion.DARemoteServiceBeforeAcquireConnection( - Sender: TDARemoteService; var ConnectionName: string); -begin - ConnectionName := dmServer.ConnectionName; -end; - procedure TsrvConfiguracion.DARemoteServiceCreate(Sender: TObject); begin SessionManager := dmServer.SessionManager; @@ -73,6 +66,12 @@ begin end; end; +procedure TsrvConfiguracion.DataAbstractServiceBeforeAcquireConnection( + aSender: TObject; var aConnectionName: string); +begin + ConnectionName := dmServer.ConnectionName; +end; + initialization TROClassFactory.Create('srvConfiguracion', Create_srvConfiguracion, TsrvConfiguracion_Invoker); diff --git a/Source/Servidor/Configuracion/uConexionOSC.dfm b/Source/Servidor/Configuracion/uConexionOSC.dfm deleted file mode 100644 index 2bf4f318..00000000 --- a/Source/Servidor/Configuracion/uConexionOSC.dfm +++ /dev/null @@ -1,55 +0,0 @@ -inherited frConexionOSC: TfrConexionOSC - object GroupBox1: TGroupBox - Left = 8 - Top = 8 - Width = 333 - Height = 169 - Caption = 'Configuraci'#243'n de la tienda' - TabOrder = 0 - object Label1: TLabel - Left = 31 - Top = 36 - Width = 67 - Height = 13 - Alignment = taRightJustify - Caption = 'Origen ODBC:' - end - object edtBDSERVER: TcxTextEdit - Left = 104 - Top = 32 - 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 - Text = 'edtBDSERVER' - Width = 209 - end - end - object bComprobar: TButton - Left = 180 - Top = 191 - Width = 161 - Height = 25 - Action = actComprobar - TabOrder = 1 - end - object ActionList1: TActionList - Left = 24 - Top = 24 - object actAceptar: TAction - Caption = '&Aceptar' - end - object actCancelar: TAction - Caption = '&Cancelar' - end - object actComprobar: TAction - Caption = 'Comprobar la conexi'#243'n' - OnExecute = actComprobarExecute - end - end -end diff --git a/Source/Servidor/Configuracion/uConexionOSC.pas b/Source/Servidor/Configuracion/uConexionOSC.pas deleted file mode 100644 index c1d38fe4..00000000 --- a/Source/Servidor/Configuracion/uConexionOSC.pas +++ /dev/null @@ -1,61 +0,0 @@ -unit uConexionOSC; - -interface - -uses - Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, - Dialogs, uFrameConfiguracion, ActnList, StdCtrls, cxControls, cxContainer, - cxEdit, cxTextEdit, cxDBEdit, DB; - -type - TfrConexionOSC = class(TFrameConfiguracion) - GroupBox1: TGroupBox; - Label1: TLabel; - bComprobar: TButton; - ActionList1: TActionList; - actAceptar: TAction; - actCancelar: TAction; - actComprobar: TAction; - edtBDSERVER: TcxTextEdit; - procedure actComprobarExecute(Sender: TObject); - protected - procedure Finalize; override; - public - procedure Init; override; - end; - -var - frConexionOSC: TfrConexionOSC; - -implementation - -uses -// uTiendaWebUtils, - uDataModuleServer; - -{$R *.dfm} - -procedure TfrConexionOSC.actComprobarExecute(Sender: TObject); -var - AErrorMsg : String; -begin -{ - if HayConexionConTienda(edtBDSERVER.Text, AErrorMsg) then - ShowMessage('Conexión válida con la tienda') - else - ShowMessage('No se ha podido establecer la conexión con la tienda web.' + - #10#13 + #10#13 + AErrorMsg); -} -end; - -procedure TfrConexionOSC.Finalize; -begin - dmServer.FOSCServer := edtBDSERVER.Text; -end; - -procedure TfrConexionOSC.Init; -begin - edtBDSERVER.Text := dmServer.FOSCServer; -end; - -end. diff --git a/Source/Servidor/Configuracion/uConfiguracion.dfm b/Source/Servidor/Configuracion/uConfiguracion.dfm index 3a36bc11..9120b1bd 100644 --- a/Source/Servidor/Configuracion/uConfiguracion.dfm +++ b/Source/Servidor/Configuracion/uConfiguracion.dfm @@ -40,7 +40,7 @@ object fConfiguracion: TfConfiguracion Top = 8 Width = 399 Height = 289 - ActivePage = TabSheet1 + ActivePage = pagGeneral Images = PngImageList1 TabOrder = 2 OnChange = PageControl1Change @@ -76,39 +76,6 @@ object fConfiguracion: TfConfiguracion ExplicitHeight = 260 end end - object TabSheet1: TTabSheet - Caption = 'Tienda web' - ImageIndex = 2 - inline frConexionOSC1: TfrConexionOSC - Left = 0 - Top = 0 - Width = 391 - Height = 260 - Align = alClient - TabOrder = 0 - ExplicitWidth = 349 - ExplicitHeight = 233 - inherited GroupBox1: TGroupBox - Width = 373 - ExplicitWidth = 373 - end - inherited bComprobar: TButton - Left = 220 - ExplicitLeft = 220 - end - inherited ActionList1: TActionList - inherited actAceptar: TAction - OnExecute = nil - end - inherited actCancelar: TAction - OnExecute = nil - end - inherited actComprobar: TAction - OnUpdate = nil - end - end - end - end end object ActionList1: TActionList Left = 8 diff --git a/Source/Servidor/Configuracion/uConfiguracion.pas b/Source/Servidor/Configuracion/uConfiguracion.pas index 79b929d7..9bbbf59e 100644 --- a/Source/Servidor/Configuracion/uConfiguracion.pas +++ b/Source/Servidor/Configuracion/uConfiguracion.pas @@ -8,7 +8,7 @@ uses JvAppStorage, JvAppRegistryStorage, Contnrs, ExtCtrls, ImgList, PngImageList, JvExControls, JvGradientHeaderPanel, uFrameConfiguracion, JvComponentBase, JvPageList, JvExComCtrls, JvPageListTreeView, - uConexionBD, uConfGeneral, uConexionOSC; + uConexionBD, uConfGeneral; type TfConfiguracion = class(TForm) @@ -24,8 +24,6 @@ type pagGeneral: TTabSheet; pagBD: TTabSheet; frConexionBD1: TfrConexionBD; - TabSheet1: TTabSheet; - frConexionOSC1: TfrConexionOSC; procedure actAceptarExecute(Sender: TObject); procedure actCancelarExecute(Sender: TObject); procedure FormShow(Sender: TObject); @@ -95,7 +93,6 @@ begin case PageControl1.ActivePageIndex of 0 : FPaginaActual := frConfGeneral1; 1 : FPaginaActual := frConexionBD1; - 2 : FPaginaActual := frConexionOSC1; end; if Assigned(FPaginaActual) then diff --git a/Source/Servidor/FactuGES.drc b/Source/Servidor/FactuGES.drc new file mode 100644 index 00000000..bd95fb60 --- /dev/null +++ b/Source/Servidor/FactuGES.drc @@ -0,0 +1,52 @@ +/* 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. +*/ + +/* c:\archivos de programa\codegear\rad studio\5.0\lib\Controls.res */ +/* c:\archivos de programa\codegear\rad studio\5.0\lib\Buttons.res */ +/* c:\archivos de programa\codegear\rad studio\5.0\lib\ExtDlgs.res */ +/* C:\Codigo Tecsitel\Lib\jvcl\JvConsts.res */ +/* c:\archivos de programa\codegear\rad studio\5.0\lib\WindowsXP.res */ +/* C:\Codigo Tecsitel\Lib\FastReport3\frxProgress.DFM */ +/* C:\Codigo Tecsitel\Lib\FastReport3\frxCtrls.RES */ +/* C:\Codigo Tecsitel\Lib\FastReport3\frxPrintDialog.DFM */ +/* C:\Codigo Tecsitel\Lib\FastReport3\frxDock.DFM */ +/* C:\Codigo Tecsitel\Lib\FastReport3\frxPreviewPageSettings.DFM */ +/* C:\Codigo Tecsitel\Lib\FastReport3\frxSearchDialog.DFM */ +/* C:\Codigo Tecsitel\Lib\FastReport3\frxDialogForm.DFM */ +/* C:\Codigo Tecsitel\Lib\FastReport3\frxPassw.dfm */ +/* C:\Codigo Tecsitel\Lib\FastReport3\frxClass.RES */ +/* C:\Codigo Tecsitel\Lib\FastReport3\frxPreview.DFM */ +/* C:\Codigo Tecsitel\Lib\FastReport3\frxPreview.RES */ +/* C:\Archivos de programa\RemObjects Software\RemObjects SDK for Delphi\Source\uROHtmlServerInfo.res */ +/* C:\Archivos de programa\RemObjects Software\RemObjects SDK for Delphi\Source\uROPoweredByRemObjectsButton.res */ +/* uAcercaDe.dfm */ +/* C:\Codigo Tecsitel\Source\Servidor\Configuracion\uFrameConfiguracion.dfm */ +/* C:\Codigo Tecsitel\Lib\DevExpressVCL\dxOffice11.res */ +/* C:\Codigo Tecsitel\Lib\DevExpressVCL\cxControls.res */ +/* C:\Codigo Tecsitel\Lib\DevExpressVCL\cxLookAndFeelPainters.res */ +/* c:\archivos de programa\codegear\rad studio\5.0\lib\FileCtrl.res */ +/* C:\Codigo Tecsitel\Lib\DevExpressVCL\cxEdit.res */ +/* C:\Codigo Tecsitel\Lib\DevExpressVCL\cxShellBrowser.dfm */ +/* C:\Archivos de programa\RemObjects Software\Data Abstract for Delphi\Source\Drivers\DataAbstract_ADODriver_Glyphs.res */ +/* C:\Archivos de programa\RemObjects Software\Data Abstract for Delphi\Source\Drivers\DataAbstract_IBXDriver_Glyphs.res */ +/* C:\Codigo Tecsitel\Lib\jvcl\JvLogForm.dfm */ +/* uDataModuleServer.dfm */ +/* C:\Codigo Tecsitel\Source\Servidor\Configuracion\uConexionBD.dfm */ +/* C:\Codigo Tecsitel\Source\Servidor\Configuracion\uConfGeneral.dfm */ +/* C:\Codigo Tecsitel\Source\Servidor\Configuracion\uConfiguracion.dfm */ +/* uServerMainForm.dfm */ +/* C:\Codigo Tecsitel\Source\Servidor\srvLogin_Impl.dfm */ +/* C:\Codigo Tecsitel\Source\Modulos\Contactos\Servidor\srvContactos_Impl.dfm */ +/* C:\Codigo Tecsitel\Source\ApplicationBase\Empresas\Servidor\srvEmpresas_Impl.dfm */ +/* C:\Codigo Tecsitel\Source\Servidor\Configuracion\srvConfiguracion_Impl.dfm */ +/* C:\Codigo Tecsitel\Source\Modulos\Familias\Servidor\srvFamilias_Impl.dfm */ +/* C:\Codigo Tecsitel\Source\Modulos\Formas de pago\Servidor\srvFormasPago_Impl.dfm */ +/* C:\Codigo Tecsitel\Source\Modulos\Tipos de IVA\Servidor\srvTiposIVA_Impl.dfm */ +/* C:\Codigo Tecsitel\Source\ApplicationBase\Usuarios\Servidor\srvUsuarios_Impl.dfm */ diff --git a/Source/Servidor/FactuGES_Server.res b/Source/Servidor/FactuGES_Server.RES similarity index 97% rename from Source/Servidor/FactuGES_Server.res rename to Source/Servidor/FactuGES_Server.RES index e59176a3..b1b9afec 100644 Binary files a/Source/Servidor/FactuGES_Server.res and b/Source/Servidor/FactuGES_Server.RES differ diff --git a/Source/Servidor/FactuGES_Server.bdsproj b/Source/Servidor/FactuGES_Server.bdsproj index 94c5d071..0ae92bf0 100644 --- a/Source/Servidor/FactuGES_Server.bdsproj +++ b/Source/Servidor/FactuGES_Server.bdsproj @@ -104,6 +104,15 @@ True True + True + True + True + True + True + True + True + True + True 3 @@ -123,9 +132,9 @@ - ..\DataAbstract_D10\Lib;..\Base\Lib;..\Base\ControllerBase;..\Base\GUIBase;..\Base\ClassRegistry;..\Base\Usuarios;..\Modulos\Articulos\Lib;..\Modulos\Empresas\Lib;..\Modulos\Contactos\Lib;..\Modulos\Facturas de cliente\Lib;..\Modulos\Pedidos a proveedor\Lib;..\Modulos\Grupos de cliente\Lib;..\Modulos\Articulos\view + rtl;vclx;vcl;dbrtl;vcldb;dbxcds;dbexpress;vclib;ibxpress;indy;dclOfficeXP;VclSmp;dsnap;bdertl;teeui;teedb;tee;vcldbx;vclactnband;dxBarExtItemsD10;dxComnD10;dxBarD10;cxLibraryD10;cxEditorsD10;dxThemeD10;cxDataD10;cxExtEditorsD10;cxGridD10;cxPageControlD10;cxSchedulerD10;cxTreeListD10;cxVerticalGridD10;dxBarDBNavD10;dxBarExtDBItemsD10;tbx_d10;tb2k_d10;ccpack10;ccpack10dsg;cxExportD10;cxIntl5D10;adortl;DataAbstract_Core_D10;DataAbstract_DBXDriver_D10;DataAbstract_Scripting_D10;dxDockingD10;dxLayoutControlD10;dxNavBarD10;dxPSCoreD10;dxsbD10;fqb100;dxLayoutControlcxEditAdaptersD10;dxPScxCommonD10;dxPSLnksD10;vclshlctrls;dxPScxExtCommonD10;dxPScxGridLnkD10;dxPScxPCProdD10;dxPScxScheduler2LnkD10;dxPScxTLLnkD10;dxPSDBTeeChartD10;dxPSTeeChartD10;dxPSdxLCLnkD10;dxPsPrVwAdvD10;GUISDK_D10;JvAppFrmD10R;JvCoreD10R;Jcl;JclVcl;JvSystemD10R;JvStdCtrlsD10R;JvBandsD10R;JvDBD10R;JvDlgsD10R;JvBDED10R;JvCmpD10R;JvCryptD10R;JvCtrlsD10R;JvCustomD10R;JvDockingD10R;JvDotNetCtrlsD10R;JvEDID10R;JvGlobusD10R;JvHMID10R;JvInterpreterD10R;JvJansD10R;JvManagedThreadsD10R;JvMMD10R;JvNetD10R;JvPageCompsD10R;JvPluginD10R;JvPrintPreviewD10R;JvRuntimeDesignD10R;JvTimeFrameworkD10R;JvUIBD10R;JvValidatorsD10R;JvWizardD10R;JvXPCtrlsD10R;PluginSDK_D10R;PNG_D10;PngComponentsD10;inet;RemObjects_WebBroker_D10;RemObjects_RODX_D10;RemObjects_BPDX_D10;RemObjects_Indy_D10;PascalScript_RO_D10;IndyProtocols;IndyCore;IndySystem;DataAbstract_IDE_D10;fsTee10;fs10;frx10;frxADO10;frxBDE10;frxDB10;frxDBX10;frxe10;frxIBX10;frxTee10;fsADO10;fsBDE10;fsDB10;fsIBX10 - EUREKALOG;EUREKALOG_VER5 + False
@@ -144,47 +153,48 @@ True False - - - $00000000 - - True False - 2 - 2 - 2 + 3 + 0 + 0 0 False False False False False - 3081 + 3082 1252 - 2.2.2.0 + 3.0.0.0 - 2.2.2.0 + 3.0.0.0 - martes, 28 de agosto de 2007 17:06 - + domingo, 30 de septiembre de 2007 20:47 + + + RemObjects Pascal Script - RemObjects SDK 3.0 Integration - + + False + + + False diff --git a/Source/Servidor/FactuGES_Server.cfg b/Source/Servidor/FactuGES_Server.cfg new file mode 100644 index 00000000..45f6a1af --- /dev/null +++ b/Source/Servidor/FactuGES_Server.cfg @@ -0,0 +1,37 @@ +-$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 +-E"..\..\Output\Debug\Servidor" +-LE"C:\Documents and Settings\All Users\Documentos\RAD Studio\5.0\Bpl" +-LN"C:\Documents and Settings\All Users\Documentos\RAD Studio\5.0\Dcp" diff --git a/Source/Servidor/FactuGES_Server.dpr b/Source/Servidor/FactuGES_Server.dpr index 40465943..9894145d 100644 --- a/Source/Servidor/FactuGES_Server.dpr +++ b/Source/Servidor/FactuGES_Server.dpr @@ -3,7 +3,6 @@ program FactuGES_Server; {#ROGEN:..\Servicios\FactuGES.rodl} // RemObjects: Careful, do not remove! uses - ExceptionLog, uROComInit, Forms, uServerMainForm in 'uServerMainForm.pas' {fServerForm}, @@ -16,46 +15,50 @@ uses FactuGES_Intf in '..\Servicios\FactuGES_Intf.pas', FactuGES_Invk in '..\Servicios\FactuGES_Invk.pas', srvContactos_Impl in '..\Modulos\Contactos\Servidor\srvContactos_Impl.pas' {srvContactos: TDARemoteService}, - uDatabaseUtils in 'Utiles\uDatabaseUtils.pas', - srvLogin_Impl in '..\Servicios\srvLogin_Impl.pas', - srvEmpresas_Impl in '..\Modulos\Empresas\Servidor\srvEmpresas_Impl.pas', - uSesionesUtils in 'Utiles\uSesionesUtils.pas', - uUsersManager in 'uUsersManager.pas', - uServerAppUtils in 'Utiles\uServerAppUtils.pas', - uBizEmpleadosServer in '..\Modulos\Contactos\Model\uBizEmpleadosServer.pas', + srvLogin_Impl in 'srvLogin_Impl.pas' {srvLogin: TDARemoteService}, + srvEmpresas_Impl in '..\ApplicationBase\Empresas\Servidor\srvEmpresas_Impl.pas' {srvEmpresas: TDARemoteService}, + srvConfiguracion_Impl in 'Configuracion\srvConfiguracion_Impl.pas' {srvConfiguracion: TDataAbstractService}, + srvFamilias_Impl in '..\Modulos\Familias\Servidor\srvFamilias_Impl.pas', + srvFormasPago_Impl in '..\Modulos\Formas de pago\Servidor\srvFormasPago_Impl.pas', + srvTiposIVA_Impl in '..\Modulos\Tipos de IVA\Servidor\srvTiposIVA_Impl.pas', + srvUsuarios_Impl in '..\ApplicationBase\Usuarios\Servidor\srvUsuarios_Impl.pas', + RegExpr in 'Utiles\RegExpr.pas', uBusinessUtils in 'Utiles\uBusinessUtils.pas', - uBizContactosServer in '..\Modulos\Contactos\Model\uBizContactosServer.pas', - uBizClientesServer in '..\Modulos\Contactos\Model\uBizClientesServer.pas', - uBizProveedoresServer in '..\Modulos\Contactos\Model\uBizProveedoresServer.pas', - uRestriccionesUsuarioUtils in 'Utiles\uRestriccionesUsuarioUtils.pas', + uDatabaseUtils in 'Utiles\uDatabaseUtils.pas', uReferenciasUtils in 'Utiles\uReferenciasUtils.pas', - srvConfiguracion_Impl in '..\Servicios\srvConfiguracion_Impl.pas' {srvConfiguracion: TDARemoteService}, - srvFamilias_Impl in '..\Modulos\Familias\Servidor\srvFamilias_Impl.pas' {srvFamilias: TDARemoteService}, - schFamiliasClient_Intf in '..\Modulos\Familias\Model\schFamiliasClient_Intf.pas', + uRestriccionesUsuarioUtils in 'Utiles\uRestriccionesUsuarioUtils.pas', + uSchemaUtilsServer in 'Utiles\uSchemaUtilsServer.pas', + uServerAppUtils in 'Utiles\uServerAppUtils.pas', + uSesionesUtils in 'Utiles\uSesionesUtils.pas', + schContactosServer_Intf in '..\Modulos\Contactos\Model\schContactosServer_Intf.pas', + schContactosClient_Intf in '..\Modulos\Contactos\Model\schContactosClient_Intf.pas', + uBizProveedoresServer in '..\Modulos\Contactos\Model\uBizProveedoresServer.pas', + uBizClientesServer in '..\Modulos\Contactos\Model\uBizClientesServer.pas', + uBizContactosServer in '..\Modulos\Contactos\Model\uBizContactosServer.pas', + uBizEmpleadosServer in '..\Modulos\Contactos\Model\uBizEmpleadosServer.pas', + schEmpresasServer_Intf in '..\ApplicationBase\Empresas\Model\schEmpresasServer_Intf.pas', + schEmpresasClient_Intf in '..\ApplicationBase\Empresas\Model\schEmpresasClient_Intf.pas', schFamiliasServer_Intf in '..\Modulos\Familias\Model\schFamiliasServer_Intf.pas', - schEmpresasClient_Intf in '..\Modulos\Empresas\Model\schEmpresasClient_Intf.pas', - schEmpresasServer_Intf in '..\Modulos\Empresas\Model\schEmpresasServer_Intf.pas', - srvFormasPago_Impl in '..\Modulos\Formas de pago\Servidor\srvFormasPago_Impl.pas' {srvFormasPago: TDARemoteService}, - srvTiposIVA_Impl in '..\Modulos\Tipos de IVA\Servidor\srvTiposIVA_Impl.pas' {srvTiposIVA: TDARemoteService}, - schTiposIVAClient_Intf in '..\Modulos\Tipos de IVA\Model\schTiposIVAClient_Intf.pas', - schTiposIVAServer_Intf in '..\Modulos\Tipos de IVA\Model\schTiposIVAServer_Intf.pas', + schFamiliasClient_Intf in '..\Modulos\Familias\Model\schFamiliasClient_Intf.pas', schFormasPagoServer_Intf in '..\Modulos\Formas de pago\Model\schFormasPagoServer_Intf.pas', schFormasPagoClient_Intf in '..\Modulos\Formas de pago\Model\schFormasPagoClient_Intf.pas', - uConexionOSC in 'Configuracion\uConexionOSC.pas' {frConexionOSC: TFrame}, - uSchemaUtilsServer in 'Utiles\uSchemaUtilsServer.pas', - uRptFichasEmpleado_Server in '..\Modulos\Contactos\Reports\uRptFichasEmpleado_Server.pas' {RptFichasEmpleado: TDataModule}, - uRptEtiquetasContacto_Server in '..\Modulos\Contactos\Reports\uRptEtiquetasContacto_Server.pas' {RptEtiquetasContacto: TDataModule}, - schContactosClient_Intf in '..\Modulos\Contactos\Model\schContactosClient_Intf.pas', - schContactosServer_Intf in '..\Modulos\Contactos\Model\schContactosServer_Intf.pas'; + schTiposIVAServer_Intf in '..\Modulos\Tipos de IVA\Model\schTiposIVAServer_Intf.pas', + schTiposIVAClient_Intf in '..\Modulos\Tipos de IVA\Model\schTiposIVAClient_Intf.pas', + schUsuariosClient_Intf in '..\ApplicationBase\Usuarios\Model\schUsuariosClient_Intf.pas', + schUsuariosServer_Intf in '..\ApplicationBase\Usuarios\Model\schUsuariosServer_Intf.pas'; {$R *.res} {$R ..\Servicios\RODLFile.res} begin Application.Initialize; + ReportMemoryLeaksOnShutdown := True; + Application.Title := 'FactuGES (Servidor)'; Application.CreateForm(TfServerForm, fServerForm); Application.CreateForm(TdmServer, dmServer); + Application.ShowMainForm := False; + Application.Run; Application.Terminate; end. diff --git a/Source/Servidor/FactuGES_Server.dproj b/Source/Servidor/FactuGES_Server.dproj new file mode 100644 index 00000000..216441f9 --- /dev/null +++ b/Source/Servidor/FactuGES_Server.dproj @@ -0,0 +1,587 @@ + + + + {ebdcd25d-40d7-4146-91ec-a0ea4aa1dcd1} + FactuGES_Server.dpr + Debug + AnyCPU + DCC32 + ..\..\Output\Debug\Servidor\FactuGES_Server.exe + + + 7.0 + False + False + 0 + 3 + ..\..\Output\Release\Servidor + RELEASE + + + 7.0 + 3 + ..\..\Output\Debug\Servidor + DEBUG; + True + + + Delphi.Personality + + +FalseTrueFalseTrueFalse3000FalseFalseFalseFalseFalse308212523.0.0.03.0.0.0domingo, 30 de septiembre de 2007 20:47 + RemObjects Pascal Script - RemObjects SDK 3.0 Integration + FactuGES_Server.dpr + + + + + MainSource + + + + +
srvEmpresas
+
+ + + + + + + + + + +
srvContactos
+
+ + + + + + + + + + + + +
srvConfiguracion
+
+ +
frConexionBD
+
+ +
frConfGeneral
+
+ +
fConfiguracion
+
+ +
FrameConfiguracion
+
+ +
srvLogin
+
+ +
fAcercaDe
+
+ +
dmServer
+
+ +
fServerForm
+
+ + + + + + + + +
+
+ diff --git a/Source/Servidor/FactuGES_Server.drc b/Source/Servidor/FactuGES_Server.drc index 8eab26e9..b26a9e7f 100644 --- a/Source/Servidor/FactuGES_Server.drc +++ b/Source/Servidor/FactuGES_Server.drc @@ -1,5 +1,5 @@ -/* VER180 - Generated by the Borland Delphi Pascal Compiler +/* VER185 + Generated by the CodeGear Delphi Pascal Compiler because -GD or --drc was supplied to the compiler. This file contains compiler-generated resources that @@ -8,2433 +8,45 @@ resources were bound to the produced executable. */ -#define TeeConst_TeeMsg_ValuesGanttStart 64320 -#define TeeConst_TeeMsg_ValuesGanttEnd 64321 -#define TeeConst_TeeMsg_ValuesGanttNextTask 64322 -#define TeeConst_TeeMsg_ValuesBubbleRadius 64323 -#define TeeConst_TeeMsg_ValuesArrowEndX 64324 -#define TeeConst_TeeMsg_ValuesArrowEndY 64325 -#define OleConst_SLinkProperties 64326 -#define OleConst_SInvalidLinkSource 64327 -#define OleConst_SCannotBreakLink 64328 -#define OleConst_SEmptyContainer 64329 -#define OleConst_SInvalidVerb 64330 -#define OleConst_SPropDlgCaption 64331 -#define OleConst_SInvalidStreamFormat 64332 -#define TeeConst_TeeMsg_FunctionHigh 64336 -#define TeeConst_TeeMsg_FunctionLow 64337 -#define TeeConst_TeeMsg_FunctionAverage 64338 -#define TeeConst_TeeMsg_GalleryShape 64339 -#define TeeConst_TeeMsg_GalleryBubble 64340 -#define TeeConst_TeeMsg_DefaultFontName 64341 -#define TeeConst_TeeMsg_CheckPointerSize 64342 -#define TeeConst_TeeMsg_FunctionPeriod 64343 -#define TeeConst_TeeMsg_PieOther 64344 -#define TeeConst_TeeMsg_ShapeGallery1 64345 -#define TeeConst_TeeMsg_ShapeGallery2 64346 -#define TeeConst_TeeMsg_ValuesX 64347 -#define TeeConst_TeeMsg_ValuesY 64348 -#define TeeConst_TeeMsg_ValuesPie 64349 -#define TeeConst_TeeMsg_ValuesBar 64350 -#define TeeConst_TeeMsg_ValuesAngle 64351 -#define TeeConst_TeeMsg_GanttSample1 64352 -#define TeeConst_TeeMsg_GanttSample2 64353 -#define TeeConst_TeeMsg_GanttSample3 64354 -#define TeeConst_TeeMsg_GanttSample4 64355 -#define TeeConst_TeeMsg_GanttSample5 64356 -#define TeeConst_TeeMsg_GanttSample6 64357 -#define TeeConst_TeeMsg_GanttSample7 64358 -#define TeeConst_TeeMsg_GanttSample8 64359 -#define TeeConst_TeeMsg_GanttSample9 64360 -#define TeeConst_TeeMsg_GanttSample10 64361 -#define TeeConst_TeeMsg_DefaultFontSize 64362 -#define TeeConst_TeeMsg_DefaultGalleryFontSize 64363 -#define TeeConst_TeeMsg_FunctionAdd 64364 -#define TeeConst_TeeMsg_FunctionSubtract 64365 -#define TeeConst_TeeMsg_FunctionMultiply 64366 -#define TeeConst_TeeMsg_FunctionDivide 64367 -#define TeeConst_TeeMsg_GalleryPie 64368 -#define TeeConst_TeeMsg_GalleryFastLine 64369 -#define TeeConst_TeeMsg_Rotation 64370 -#define TeeConst_TeeMsg_PieSample1 64371 -#define TeeConst_TeeMsg_PieSample2 64372 -#define TeeConst_TeeMsg_PieSample3 64373 -#define TeeConst_TeeMsg_PieSample4 64374 -#define TeeConst_TeeMsg_PieSample5 64375 -#define TeeConst_TeeMsg_PieSample6 64376 -#define TeeConst_TeeMsg_PieSample7 64377 -#define TeeConst_TeeMsg_PieSample8 64378 -#define TeeConst_TeeMsg_GalleryChartName 64379 -#define TeeConst_TeeMsg_GalleryStandard 64380 -#define TeeConst_TeeMsg_GalleryFunctions 64381 -#define TeeConst_TeeMsg_GalleryArrow 64382 -#define TeeConst_TeeMsg_GalleryGantt 64383 -#define TeeConst_TeeMsg_AxisLogBase 64384 -#define TeeConst_TeeMsg_MaxPointsPerPage 64385 -#define TeeConst_TeeMsg_3dPercent 64386 -#define TeeConst_TeeMsg_CircularSeries 64387 -#define TeeConst_TeeMsg_BarWidthPercent 64388 -#define TeeConst_TeeMsg_BarOffsetPercent 64389 -#define TeeConst_TeeMsg_DefaultPercentOf 64390 -#define TeeConst_TeeMsg_DefPercentFormat 64391 -#define TeeConst_TeeMsg_DefValueFormat 64392 -#define TeeConst_TeeMsg_AxisTitle 64393 -#define TeeConst_TeeMsg_AxisLabels 64394 -#define TeeConst_TeeMsg_GalleryLine 64395 -#define TeeConst_TeeMsg_GalleryPoint 64396 -#define TeeConst_TeeMsg_GalleryArea 64397 -#define TeeConst_TeeMsg_GalleryBar 64398 -#define TeeConst_TeeMsg_GalleryHorizBar 64399 -#define MidConst_SNoInsertsAllowed 64400 -#define MidConst_SConnectionMissing 64401 -#define MidConst_SNoCircularConnection 64402 -#define TeeConst_TeeMsg_LegendTopPos 64403 -#define TeeConst_TeeMsg_LegendFirstValue 64404 -#define TeeConst_TeeMsg_LegendColorWidth 64405 -#define TeeConst_TeeMsg_SeriesSetDataSource 64406 -#define TeeConst_TeeMsg_SeriesInvDataSource 64407 -#define TeeConst_TeeMsg_FillSample 64408 -#define TeeConst_TeeMsg_Angle 64409 -#define TeeConst_TeeMsg_AxisLogDateTime 64410 -#define TeeConst_TeeMsg_AxisLogNotPositive 64411 -#define TeeConst_TeeMsg_AxisLabelSep 64412 -#define TeeConst_TeeMsg_AxisIncrementNeg 64413 -#define TeeConst_TeeMsg_AxisMinMax 64414 -#define TeeConst_TeeMsg_AxisMaxMin 64415 -#define MidConst_SNoDataProvider 64416 -#define MidConst_SInvalidDataPacket 64417 -#define MidConst_SRefreshError 64418 -#define MidConst_SNoCircularReference 64419 -#define MidConst_SErrorLoadingMidas 64420 -#define MidConst_SCannotCreateDataSet 64421 -#define MidConst_SNoConnectToBroker 64422 -#define MidConst_SNoParentConnection 64423 -#define MidConst_SInvalidOptParamType 64424 -#define MidConst_SConstraintFailed 64425 -#define MidConst_SField 64426 -#define MidConst_SRecConstFail 64427 -#define MidConst_SFieldConstFail 64428 -#define MidConst_SDefExprFail 64429 -#define MidConst_SNoEditsAllowed 64430 -#define MidConst_SNoDeletesAllowed 64431 -#define cxEditConsts_scxRegExprIncorrectParameterQuantifier 64432 -#define cxEditConsts_scxRegExprCantUseParameterQuantifier 64433 -#define cxEditConsts_scxMaskEditRegExprError 64434 -#define cxEditConsts_scxMaskEditInvalidEditValue 64435 -#define cxEditConsts_cxSSpinEditInvalidNumericValue 64436 -#define VDBConsts_SFirstRecord 64437 -#define VDBConsts_SPriorRecord 64438 -#define VDBConsts_SNextRecord 64439 -#define VDBConsts_SLastRecord 64440 -#define VDBConsts_SInsertRecord 64441 -#define VDBConsts_SDeleteRecord 64442 -#define VDBConsts_SEditRecord 64443 -#define VDBConsts_SPostEdit 64444 -#define VDBConsts_SCancelEdit 64445 -#define VDBConsts_SRefreshRecord 64446 -#define VDBConsts_SRemoteLogin 64447 -#define cxEditConsts_scxRegExprCantUsePlusQuantifier 64448 -#define cxEditConsts_scxRegExprCantUseStarQuantifier 64449 -#define cxEditConsts_scxRegExprCantCreateEmptyAlt 64450 -#define cxEditConsts_scxRegExprCantCreateEmptyBlock 64451 -#define cxEditConsts_scxRegExprIllegalSymbol 64452 -#define cxEditConsts_scxRegExprIllegalQuantifier 64453 -#define cxEditConsts_scxRegExprIllegalIntegerValue 64454 -#define cxEditConsts_scxRegExprTooBigReferenceNumber 64455 -#define cxEditConsts_scxRegExprCantCreateEmptyEnum 64456 -#define cxEditConsts_scxRegExprSubrangeOrder 64457 -#define cxEditConsts_scxRegExprHexNumberExpected0 64458 -#define cxEditConsts_scxRegExprHexNumberExpected 64459 -#define cxEditConsts_scxRegExprMissing 64460 -#define cxEditConsts_scxRegExprUnnecessary 64461 -#define cxEditConsts_scxRegExprIncorrectSpace 64462 -#define cxEditConsts_scxRegExprNotCompiled 64463 -#define cxEditConsts_scxSEditRepositoryDateItem 64464 -#define cxEditConsts_scxSEditRepositoryHyperLinkItem 64465 -#define cxEditConsts_scxSEditRepositoryImageComboBoxItem 64466 -#define cxEditConsts_scxSEditRepositoryImageItem 64467 -#define cxEditConsts_scxSEditRepositoryMaskItem 64468 -#define cxEditConsts_scxSEditRepositoryMemoItem 64469 -#define cxEditConsts_scxSEditRepositoryMRUItem 64470 -#define cxEditConsts_scxSEditRepositoryPopupItem 64471 -#define cxEditConsts_scxSEditRepositorySpinItem 64472 -#define cxEditConsts_scxSEditRepositoryRadioGroupItem 64473 -#define cxEditConsts_scxSEditRepositoryTextItem 64474 -#define cxEditConsts_scxSEditRepositoryTimeItem 64475 -#define cxEditConsts_scxRegExprLine 64476 -#define cxEditConsts_scxRegExprChar 64477 -#define cxEditConsts_scxRegExprNotAssignedSourceStream 64478 -#define cxEditConsts_scxRegExprEmptySourceStream 64479 -#define cxEditConsts_cxSDateThird 64480 -#define cxEditConsts_cxSDateFourth 64481 -#define cxEditConsts_cxSDateFifth 64482 -#define cxEditConsts_cxSDateSixth 64483 -#define cxEditConsts_cxSDateSeventh 64484 -#define cxEditConsts_cxSDateBOM 64485 -#define cxEditConsts_cxSDateEOM 64486 -#define cxEditConsts_cxSDateNow 64487 -#define cxEditConsts_scxSCalcError 64488 -#define cxEditConsts_scxSHyperLinkPrefix 64489 -#define cxEditConsts_scxSEditRepositoryBlobItem 64490 -#define cxEditConsts_scxSEditRepositoryButtonItem 64491 -#define cxEditConsts_scxSEditRepositoryCalcItem 64492 -#define cxEditConsts_scxSEditRepositoryCheckBoxItem 64493 -#define cxEditConsts_scxSEditRepositoryComboBoxItem 64494 -#define cxEditConsts_scxSEditRepositoryCurrencyItem 64495 -#define cxEditConsts_cxSDatePopupNow 64496 -#define cxEditConsts_cxSDatePopupOK 64497 -#define cxEditConsts_cxSDatePopupToday 64498 -#define cxEditConsts_cxSDateError 64499 -#define cxEditConsts_cxSDateToday 64500 -#define cxEditConsts_cxSDateYesterday 64501 -#define cxEditConsts_cxSDateTomorrow 64502 -#define cxEditConsts_cxSDateSunday 64503 -#define cxEditConsts_cxSDateMonday 64504 -#define cxEditConsts_cxSDateTuesday 64505 -#define cxEditConsts_cxSDateWednesday 64506 -#define cxEditConsts_cxSDateThursday 64507 -#define cxEditConsts_cxSDateFriday 64508 -#define cxEditConsts_cxSDateSaturday 64509 -#define cxEditConsts_cxSDateFirst 64510 -#define cxEditConsts_cxSDateSecond 64511 -#define cxEditConsts_cxSEditCheckBoxUnchecked 64512 -#define cxEditConsts_cxSRadioGroupDefaultCaption 64513 -#define cxEditConsts_cxSBlobButtonOK 64514 -#define cxEditConsts_cxSBlobButtonCancel 64515 -#define cxEditConsts_cxSBlobButtonClose 64516 -#define cxEditConsts_cxSBlobMemo 64517 -#define cxEditConsts_cxSBlobMemoEmpty 64518 -#define cxEditConsts_cxSBlobPicture 64519 -#define cxEditConsts_cxSBlobPictureEmpty 64520 -#define cxEditConsts_cxSMenuItemCaptionCut 64521 -#define cxEditConsts_cxSMenuItemCaptionCopy 64522 -#define cxEditConsts_cxSMenuItemCaptionPaste 64523 -#define cxEditConsts_cxSMenuItemCaptionDelete 64524 -#define cxEditConsts_cxSMenuItemCaptionLoad 64525 -#define cxEditConsts_cxSMenuItemCaptionSave 64526 -#define cxEditConsts_cxSDatePopupClear 64527 -#define pnglang_EPNGCannotChangeSizeText 64528 -#define pnglang_EPNGCannotAddChunkText 64529 -#define pnglang_EPNGCannotAddInvalidImageText 64530 -#define pnglang_EPNGOutMemoryText 64531 -#define pnglang_EPNGHeaderNotPresentText 64532 -#define cxDataConsts_cxSDataReadError 64533 -#define cxDataConsts_cxSDataWriteError 64534 -#define cxEditConsts_cxSEditDateConvertError 64535 -#define cxEditConsts_cxSEditInvalidRepositoryItem 64536 -#define cxEditConsts_cxSEditNumericValueConvertError 64537 -#define cxEditConsts_cxSEditPopupCircularReferencingError 64538 -#define cxEditConsts_cxSEditTimeConvertError 64539 -#define cxEditConsts_cxSEditValidateErrorText 64540 -#define cxEditConsts_cxSEditValueOutOfBounds 64541 -#define cxEditConsts_cxSEditCheckBoxChecked 64542 -#define cxEditConsts_cxSEditCheckBoxGrayed 64543 -#define ADOConst_sValueAttr 64544 -#define pnglang_EPngInvalidCRCText 64545 -#define pnglang_EPNGInvalidIHDRText 64546 -#define pnglang_EPNGMissingMultipleIDATText 64547 -#define pnglang_EPNGZLIBErrorText 64548 -#define pnglang_EPNGInvalidPaletteText 64549 -#define pnglang_EPNGInvalidFileHeaderText 64550 -#define pnglang_EPNGIHDRNotFirstText 64551 -#define pnglang_EPNGSizeExceedsText 64552 -#define pnglang_EPNGUnknownPalEntryText 64553 -#define pnglang_EPNGUnknownCriticalChunkText 64554 -#define pnglang_EPNGUnknownCompressionText 64555 -#define pnglang_EPNGUnknownInterlaceText 64556 -#define pnglang_EPNGCannotAssignChunkText 64557 -#define pnglang_EPNGUnexpectedEndText 64558 -#define pnglang_EPNGNoImageDataText 64559 -#define IBSQLMonitor_StrRollbackRetainin 64560 -#define IBSQLMonitor_StrStartTransaction 64561 -#define IBSQLMonitor_StrApplication 64562 -#define ADOConst_SMissingConnection 64563 -#define ADOConst_SNoDetailFilter 64564 -#define ADOConst_SBookmarksRequired 64565 -#define ADOConst_SMissingCommandText 64566 -#define ADOConst_SNoResultSet 64567 -#define ADOConst_SADOCreateError 64568 -#define ADOConst_SEventsNotSupported 64569 -#define ADOConst_SUsupportedFieldType 64570 -#define ADOConst_SConnectionRequired 64571 -#define ADOConst_SCantRequery 64572 -#define ADOConst_SNoFilterOptions 64573 -#define ADOConst_SRecordsetNotOpen 64574 -#define ADOConst_sNameAttr 64575 -#define IBSQLMonitor_StrMisc 64576 -#define IBSQLMonitor_StrError 64577 -#define IBSQLMonitor_StrAttach 64578 -#define IBSQLMonitor_StrDetach 64579 -#define IBSQLMonitor_StrQuery 64580 -#define IBSQLMonitor_StrStart 64581 -#define IBSQLMonitor_StrExecute 64582 -#define IBSQLMonitor_StrNULL 64583 -#define IBSQLMonitor_StrBLOB 64584 -#define IBSQLMonitor_StrFetch 64585 -#define IBSQLMonitor_StrPrepare 64586 -#define IBSQLMonitor_StrPlan 64587 -#define IBSQLMonitor_StrPlanCantRetrive 64588 -#define IBSQLMonitor_StrCommitHardComm 64589 -#define IBSQLMonitor_StrCommitRetaining 64590 -#define IBSQLMonitor_StrRollback 64591 -#define IBXConst_SInvalidOption 64592 -#define IBXConst_SInvalidOnErrorResult 64593 -#define IBXConst_SInvalidOnStatusResult 64594 -#define IBXConst_SDPBConstantUnknownEx 64595 -#define IBXConst_STPBConstantUnknownEx 64596 -#define IBXConst_SUnknownPlan 64597 -#define IBXConst_SFieldSizeMismatch 64598 -#define IBXConst_SEventAlreadyRegistered 64599 -#define IBXConst_SStringTooLarge 64600 -#define IBXConst_SNoTimers 64601 -#define IBXConst_SIB65feature 64602 -#define IBXConst_SLoginPromptFailure 64603 -#define IBXConst_SIB70feature 64604 -#define IBXConst_SIB71feature 64605 -#define IBSQLMonitor_StrConnect 64606 -#define IBSQLMonitor_StrDisconnect 64607 -#define IBXConst_SOutputParsingError 64608 -#define IBXConst_SUseSpecificProcedures 64609 -#define IBXConst_SSQLMonitorAlreadyPresent 64610 -#define IBXConst_SCantPrintValue 64611 -#define IBXConst_SEOFReached 64612 -#define IBXConst_SEOFInComment 64613 -#define IBXConst_SEOFInString 64614 -#define IBXConst_SParamNameExpected 64615 -#define IBXConst_SSuccess 64616 -#define IBXConst_SDelphiException 64617 -#define IBXConst_SNoOptionsSet 64618 -#define IBXConst_SNoDestinationDirectory 64619 -#define IBXConst_SNosourceDirectory 64620 -#define IBXConst_SNoUninstallFile 64621 -#define IBXConst_SOptionNeedsClient 64622 -#define IBXConst_SOptionNeedsServer 64623 -#define IBXConst_SIndexFieldMissing 64624 -#define IBXConst_SInvalidCancellation 64625 -#define IBXConst_SInvalidEvent 64626 -#define IBXConst_SMaximumEvents 64627 -#define IBXConst_SNoEventsRegistered 64628 -#define IBXConst_SInvalidQueueing 64629 -#define IBXConst_SInvalidRegistration 64630 -#define IBXConst_SInvalidBatchMove 64631 -#define IBXConst_SSQLDialectInvalid 64632 -#define IBXConst_SSPBConstantNotSupported 64633 -#define IBXConst_SSPBConstantUnknown 64634 -#define IBXConst_SServiceActive 64635 -#define IBXConst_SServiceInActive 64636 -#define IBXConst_SServerNameMissing 64637 -#define IBXConst_SQueryParamsError 64638 -#define IBXConst_SStartParamsError 64639 -#define IBXConst_SFieldUnsupportedType 64640 -#define IBXConst_SCircularDataLink 64641 -#define IBXConst_SEmptySQLStatement 64642 -#define IBXConst_SIsASelectStatement 64643 -#define IBXConst_SRequiredParamNotSet 64644 -#define IBXConst_SNoStoredProcName 64645 -#define IBXConst_SIsAExecuteProcedure 64646 -#define IBXConst_SUpdateFailed 64647 -#define IBXConst_SNotCachedUpdates 64648 -#define IBXConst_SNotLiveRequest 64649 -#define IBXConst_SNoProvider 64650 -#define IBXConst_SNoRecordsAffected 64651 -#define IBXConst_SNoTableName 64652 -#define IBXConst_SCannotCreatePrimaryIndex 64653 -#define IBXConst_SCannotDropSystemIndex 64654 -#define IBXConst_STableNameMismatch 64655 -#define IBXConst_SNotEditing 64656 -#define IBXConst_SCannotInsert 64657 -#define IBXConst_SCannotPost 64658 -#define IBXConst_SCannotUpdate 64659 -#define IBXConst_SCannotDelete 64660 -#define IBXConst_SCannotRefresh 64661 -#define IBXConst_SBufferNotSet 64662 -#define IBXConst_SCircularReference 64663 -#define IBXConst_SSQLParseError 64664 -#define IBXConst_SUserAbort 64665 -#define IBXConst_SDataSetUniDirectional 64666 -#define IBXConst_SCannotCreateSharedResource 64667 -#define IBXConst_SWindowsAPIError 64668 -#define IBXConst_SColumnListsDontMatch 64669 -#define IBXConst_SColumnTypesDontMatch 64670 -#define IBXConst_SCantEndSharedTransaction 64671 -#define IBXConst_SSQLOpen 64672 -#define IBXConst_SSQLClosed 64673 -#define IBXConst_SDatasetOpen 64674 -#define IBXConst_SDatasetClosed 64675 -#define IBXConst_SUnknownSQLDataType 64676 -#define IBXConst_SInvalidColumnIndex 64677 -#define IBXConst_SInvalidParamColumnIndex 64678 -#define IBXConst_SInvalidDataConversion 64679 -#define IBXConst_SColumnIsNotNullable 64680 -#define IBXConst_SBlobCannotBeRead 64681 -#define IBXConst_SBlobCannotBeWritten 64682 -#define IBXConst_SEmptyQuery 64683 -#define IBXConst_SCannotOpenNonSQLSelect 64684 -#define IBXConst_SNoFieldAccess 64685 -#define IBXConst_SFieldReadOnly 64686 -#define IBXConst_SFieldNotFound 64687 -#define IBXConst_SDatabaseClosed 64688 -#define IBXConst_SDatabaseOpen 64689 -#define IBXConst_SDatabaseNameMissing 64690 -#define IBXConst_SNotInTransaction 64691 -#define IBXConst_SInTransaction 64692 -#define IBXConst_STimeoutNegative 64693 -#define IBXConst_SNoDatabasesInTransaction 64694 -#define IBXConst_SUpdateWrongDB 64695 -#define IBXConst_SUpdateWrongTR 64696 -#define IBXConst_SDatabaseNotAssigned 64697 -#define IBXConst_STransactionNotAssigned 64698 -#define IBXConst_SXSQLDAIndexOutOfRange 64699 -#define IBXConst_SXSQLDANameDoesNotExist 64700 -#define IBXConst_SEOF 64701 -#define IBXConst_SBOF 64702 -#define IBXConst_SInvalidStatementHandle 64703 -#define uDARes_err_ExecuteSQLCommandNotAllowed 64704 -#define IBXConst_SUnknownError 64705 -#define IBXConst_SInterBaseMissing 64706 -#define IBXConst_SInterBaseInstallMissing 64707 -#define IBXConst_SIB60feature 64708 -#define IBXConst_SNotSupported 64709 -#define IBXConst_SNotPermitted 64710 -#define IBXConst_SFileAccessError 64711 -#define IBXConst_SConnectionTimeout 64712 -#define IBXConst_SCannotSetDatabase 64713 -#define IBXConst_SCannotSetTransaction 64714 -#define IBXConst_SOperationCancelled 64715 -#define IBXConst_SDPBConstantNotSupported 64716 -#define IBXConst_SDPBConstantUnknown 64717 -#define IBXConst_STPBConstantNotSupported 64718 -#define IBXConst_STPBConstantUnknown 64719 -#define uDARes_err_UnknownDriver 64720 -#define uDARes_err_UnknownParameter 64721 -#define uDARes_err_FieldIsNotBound 64722 -#define uDARes_err_CannotFindField 64723 -#define uDARes_err_LoadPackageFailed 64724 -#define uDARes_err_InvalidDriverReference 64725 -#define uDARes_err_CannotFindStatement 64726 -#define uDARes_err_CannotFindDefaultItem 64727 -#define uDARes_err_PoolIsNotEmpty 64728 -#define uDARes_err_MaxPoolSizeReached 64729 -#define uDARes_err_LAMEDataset 64730 -#define uDARes_err_DARDMInvalidSchema 64731 -#define uDARes_err_DARDMUnassignedAdapter 64732 -#define uDARes_err_DARDMConnectionIsNotAssigned 64733 -#define uDARes_err_DARDMCannotFindProxessorForDelta 64734 -#define uDARes_err_NeedShareMem 64735 -#define DBConsts_SRecordNotFound 64736 -#define DBConsts_SBcdOverflow 64737 -#define DBConsts_SInvalidBcdValue 64738 -#define DBConsts_SInvalidFormatType 64739 -#define DBConsts_SCouldNotParseTimeStamp 64740 -#define DBConsts_SInvalidSqlTimeStamp 64741 -#define uDARes_err_ChangeLogAlreadyStarted 64742 -#define uDARes_err_NotAttachedToDataTable 64743 -#define uDARes_err_DriverProcAlreadyRegistered 64744 -#define uDARes_err_DriverManagerAlreadyCreated 64745 -#define uDARes_err_DriverManagerNotAssigned 64746 -#define uDARes_err_FieldTypeNotSupported 64747 -#define uDARes_err_InvalidDataset 64748 -#define uDARes_err_CannotFindItem 64749 -#define uDARes_err_DriverAlreadyLoaded 64750 -#define uDARes_err_InvalidDLL 64751 -#define DBConsts_SExprNotAgg 64752 -#define DBConsts_SExprBadConst 64753 -#define DBConsts_SExprNoAggFilter 64754 -#define DBConsts_SExprEmptyInList 64755 -#define DBConsts_SInvalidKeywordUse 64756 -#define DBConsts_STextFalse 64757 -#define DBConsts_STextTrue 64758 -#define DBConsts_SParameterNotFound 64759 -#define DBConsts_SInvalidVersion 64760 -#define DBConsts_SBadFieldType 64761 -#define DBConsts_SAggActive 64762 -#define DBConsts_SProviderSQLNotSupported 64763 -#define DBConsts_SProviderExecuteNotSupported 64764 -#define DBConsts_SExprNoAggOnCalcs 64765 -#define DBConsts_SDataSetUnidirectional 64766 -#define DBConsts_SUnassignedVar 64767 -#define DBConsts_SExprTermination 64768 -#define DBConsts_SExprNameError 64769 -#define DBConsts_SExprStringError 64770 -#define DBConsts_SExprInvalidChar 64771 -#define DBConsts_SExprNoLParen 64772 -#define DBConsts_SExprNoRParen 64773 -#define DBConsts_SExprNoRParenOrComma 64774 -#define DBConsts_SExprExpected 64775 -#define DBConsts_SExprBadField 64776 -#define DBConsts_SExprBadNullTest 64777 -#define DBConsts_SExprRangeError 64778 -#define DBConsts_SExprIncorrect 64779 -#define DBConsts_SExprNothing 64780 -#define DBConsts_SExprTypeMis 64781 -#define DBConsts_SExprBadScope 64782 -#define DBConsts_SExprNoArith 64783 -#define DBConsts_SFieldIndexError 64784 -#define DBConsts_SNoFieldIndexes 64785 -#define DBConsts_SNotIndexField 64786 -#define DBConsts_SIndexFieldMissing 64787 -#define DBConsts_SNoIndexForFields 64788 -#define DBConsts_SIndexNotFound 64789 -#define DBConsts_SCircularDataLink 64790 -#define DBConsts_SLookupInfoError 64791 -#define DBConsts_SDataSourceChange 64792 -#define DBConsts_SNoNestedMasterSource 64793 -#define DBConsts_SDataSetOpen 64794 -#define DBConsts_SNotEditing 64795 -#define DBConsts_SDataSetClosed 64796 -#define DBConsts_SDataSetEmpty 64797 -#define DBConsts_SDataSetReadOnly 64798 -#define DBConsts_SNestedDataSetClass 64799 -#define DBConsts_SFieldNotFound 64800 -#define DBConsts_SFieldAccessError 64801 -#define DBConsts_SFieldValueError 64802 -#define DBConsts_SFieldRangeError 64803 -#define DBConsts_SBcdFieldRangeError 64804 -#define DBConsts_SInvalidIntegerValue 64805 -#define DBConsts_SInvalidBoolValue 64806 -#define DBConsts_SInvalidFloatValue 64807 -#define DBConsts_SFieldTypeMismatch 64808 -#define DBConsts_SFieldSizeMismatch 64809 -#define DBConsts_SInvalidVarByteArray 64810 -#define DBConsts_SFieldOutOfRange 64811 -#define DBConsts_SFieldRequired 64812 -#define DBConsts_SDataSetMissing 64813 -#define DBConsts_SInvalidCalcType 64814 -#define DBConsts_SFieldReadOnly 64815 -#define JvResources_RsClInactiveCaptionText 64816 -#define JvResources_RsClBtnHighlight 64817 -#define JvResources_RsCl3DDkShadow 64818 -#define JvResources_RsCl3DLight 64819 -#define JvResources_RsClInfoText 64820 -#define JvResources_RsClInfoBk 64821 -#define JvResources_RsGradientActiveCaption 64822 -#define JvResources_RsGradientInactiveCaption 64823 -#define JvResources_RsHotLight 64824 -#define JvResources_RsMenuBar 64825 -#define JvResources_RsMenuHighlight 64826 -#define DBConsts_SInvalidFieldSize 64827 -#define DBConsts_SInvalidFieldKind 64828 -#define DBConsts_SUnknownFieldType 64829 -#define DBConsts_SFieldNameMissing 64830 -#define DBConsts_SDuplicateFieldName 64831 -#define JvResources_RsClInactiveCaption 64832 -#define JvResources_RsClMenu 64833 -#define JvResources_RsClWindow 64834 -#define JvResources_RsClWindowFrame 64835 -#define JvResources_RsClMenuText 64836 -#define JvResources_RsClWindowText 64837 -#define JvResources_RsClCaptionText 64838 -#define JvResources_RsClActiveBorder 64839 -#define JvResources_RsClInactiveBorder 64840 -#define JvResources_RsClAppWorkSpace 64841 -#define JvResources_RsClHighlight 64842 -#define JvResources_RsClHighlightText 64843 -#define JvResources_RsClBtnFace 64844 -#define JvResources_RsClBtnShadow 64845 -#define JvResources_RsClGrayText 64846 -#define JvResources_RsClBtnText 64847 -#define JvResources_RsClPink 64848 -#define JvResources_RsClGold 64849 -#define JvResources_RsClBrightGreen 64850 -#define JvResources_RsClTurquoise 64851 -#define JvResources_RsClPlum 64852 -#define JvResources_RsClGray25 64853 -#define JvResources_RsClRose 64854 -#define JvResources_RsClTan 64855 -#define JvResources_RsClLightYellow 64856 -#define JvResources_RsClLightGreen 64857 -#define JvResources_RsClLightTurquoise 64858 -#define JvResources_RsClPaleBlue 64859 -#define JvResources_RsClLavender 64860 -#define JvResources_RsClScrollBar 64861 -#define JvResources_RsClBackground 64862 -#define JvResources_RsClActiveCaption 64863 -#define JvResources_RsClOliveGreen 64864 -#define JvResources_RsClDarkGreen 64865 -#define JvResources_RsClDarkTeal 64866 -#define JvResources_RsClDarkBlue 64867 -#define JvResources_RsClIndigo 64868 -#define JvResources_RsClGray80 64869 -#define JvResources_RsClDarkRed 64870 -#define JvResources_RsClOrange 64871 -#define JvResources_RsClDarkYellow 64872 -#define JvResources_RsClBlueGray 64873 -#define JvResources_RsClGray50 64874 -#define JvResources_RsClLightOrange 64875 -#define JvResources_RsClSeaGreen 64876 -#define JvResources_RsClLightBlue 64877 -#define JvResources_RsClViolet 64878 -#define JvResources_RsClGray40 64879 -#define JvResources_RsClPurple 64880 -#define JvResources_RsClTeal 64881 -#define JvResources_RsClGray 64882 -#define JvResources_RsClSilver 64883 -#define JvResources_RsClRed 64884 -#define JvResources_RsClLime 64885 -#define JvResources_RsClYellow 64886 -#define JvResources_RsClBlue 64887 -#define JvResources_RsClFuchsia 64888 -#define JvResources_RsClAqua 64889 -#define JvResources_RsClWhite 64890 -#define JvResources_RsClMoneyGreen 64891 -#define JvResources_RsClSkyBlue 64892 -#define JvResources_RsClCream 64893 -#define JvResources_RsClMedGray 64894 -#define JvResources_RsClBrown 64895 -#define JvResources_RsGIFImage 64896 -#define JvResources_RsEChangeGIFSize 64897 -#define JvResources_RsENoGIFData 64898 -#define JvResources_RsEUnrecognizedGIFExt 64899 -#define JvResources_RsEWrongGIFColors 64900 -#define JvResources_RsEBadGIFCodeSize 64901 -#define JvResources_RsEGIFDecodeError 64902 -#define JvResources_RsEGIFEncodeError 64903 -#define JvResources_RsEGIFVersion 64904 -#define JvResources_RsEPixelFormatNotImplemented 64905 -#define JvResources_RsEBitCountNotImplemented 64906 -#define JvResources_RsClBlack 64907 -#define JvResources_RsClMaroon 64908 -#define JvResources_RsClGreen 64909 -#define JvResources_RsClOlive 64910 -#define JvResources_RsClNavy 64911 -#define JclResources_RsIntelCacheDescr87 64912 -#define JclResources_RsIntelCacheDescrB0 64913 -#define JclResources_RsIntelCacheDescrB3 64914 -#define JclResources_RsIntelCacheDescrB4 64915 -#define JclResources_RsIntelCacheDescrF0 64916 -#define JclResources_RsIntelCacheDescrF1 64917 -#define JvResources_RsAniExtension 64918 -#define JvResources_RsAniFilterName 64919 -#define JvResources_RsRootValueReplaceFmt 64920 -#define JvResources_RsEUnableToCreateKey 64921 -#define JvResources_RsEEnumeratingRegistry 64922 -#define JvResources_RsEInvalidType 64923 -#define JvResources_RsEUnknownBaseType 64924 -#define JvResources_RsEInvalidPath 64925 -#define JvResources_RsENotAUniqueRootPath 64926 -#define JvResources_RsECircularReferenceOfStorages 64927 -#define JclResources_RsIntelCacheDescr68 64928 -#define JclResources_RsIntelCacheDescr70 64929 -#define JclResources_RsIntelCacheDescr71 64930 -#define JclResources_RsIntelCacheDescr72 64931 -#define JclResources_RsIntelCacheDescr78 64932 -#define JclResources_RsIntelCacheDescr79 64933 -#define JclResources_RsIntelCacheDescr7A 64934 -#define JclResources_RsIntelCacheDescr7B 64935 -#define JclResources_RsIntelCacheDescr7C 64936 -#define JclResources_RsIntelCacheDescr7D 64937 -#define JclResources_RsIntelCacheDescr7F 64938 -#define JclResources_RsIntelCacheDescr82 64939 -#define JclResources_RsIntelCacheDescr83 64940 -#define JclResources_RsIntelCacheDescr84 64941 -#define JclResources_RsIntelCacheDescr85 64942 -#define JclResources_RsIntelCacheDescr86 64943 -#define JclResources_RsIntelCacheDescr44 64944 -#define JclResources_RsIntelCacheDescr45 64945 -#define JclResources_RsIntelCacheDescr46 64946 -#define JclResources_RsIntelCacheDescr47 64947 -#define JclResources_RsIntelCacheDescr49 64948 -#define JclResources_RsIntelCacheDescr50 64949 -#define JclResources_RsIntelCacheDescr51 64950 -#define JclResources_RsIntelCacheDescr52 64951 -#define JclResources_RsIntelCacheDescr56 64952 -#define JclResources_RsIntelCacheDescr57 64953 -#define JclResources_RsIntelCacheDescr5B 64954 -#define JclResources_RsIntelCacheDescr5C 64955 -#define JclResources_RsIntelCacheDescr5D 64956 -#define JclResources_RsIntelCacheDescr60 64957 -#define JclResources_RsIntelCacheDescr66 64958 -#define JclResources_RsIntelCacheDescr67 64959 -#define JclResources_RsIntelCacheDescr05 64960 -#define JclResources_RsIntelCacheDescr06 64961 -#define JclResources_RsIntelCacheDescr08 64962 -#define JclResources_RsIntelCacheDescr0A 64963 -#define JclResources_RsIntelCacheDescr0B 64964 -#define JclResources_RsIntelCacheDescr0C 64965 -#define JclResources_RsIntelCacheDescr22 64966 -#define JclResources_RsIntelCacheDescr23 64967 -#define JclResources_RsIntelCacheDescr25 64968 -#define JclResources_RsIntelCacheDescr29 64969 -#define JclResources_RsIntelCacheDescr2C 64970 -#define JclResources_RsIntelCacheDescr30 64971 -#define JclResources_RsIntelCacheDescr40 64972 -#define JclResources_RsIntelCacheDescr41 64973 -#define JclResources_RsIntelCacheDescr42 64974 -#define JclResources_RsIntelCacheDescr43 64975 -#define JclResources_RsRTTIFloatType 64976 -#define JclResources_RsRTTIMethodKind 64977 -#define JclResources_RsRTTIParamCount 64978 -#define JclResources_RsRTTIReturnType 64979 -#define JclResources_RsRTTIMaxLen 64980 -#define JclResources_RsRTTIElSize 64981 -#define JclResources_RsRTTIElType 64982 -#define JclResources_RsRTTIElNeedCleanup 64983 -#define JclResources_RsRTTIVarType 64984 -#define JclResources_RsDeclarationFormat 64985 -#define JclResources_RsSynchCreateEvent 64986 -#define JclResources_RsIntelCacheDescr00 64987 -#define JclResources_RsIntelCacheDescr01 64988 -#define JclResources_RsIntelCacheDescr02 64989 -#define JclResources_RsIntelCacheDescr03 64990 -#define JclResources_RsIntelCacheDescr04 64991 -#define JclResources_RsRTTIIndex 64992 -#define JclResources_RsRTTIDefault 64993 -#define JclResources_RsRTTIName 64994 -#define JclResources_RsRTTIType 64995 -#define JclResources_RsRTTIFlags 64996 -#define JclResources_RsRTTIGUID 64997 -#define JclResources_RsRTTITypeKind 64998 -#define JclResources_RsRTTIOrdinalType 64999 -#define JclResources_RsRTTIMinValue 65000 -#define JclResources_RsRTTIMaxValue 65001 -#define JclResources_RsRTTINameList 65002 -#define JclResources_RsRTTIClassName 65003 -#define JclResources_RsRTTIParent 65004 -#define JclResources_RsRTTIPropCount 65005 -#define JclResources_RsRTTIUnitName 65006 -#define JclResources_RsRTTIBasedOn 65007 -#define JclResources_RsRTTIUnknownIdentifier 65008 -#define JclResources_RsRTTIVar 65009 -#define JclResources_RsRTTIConst 65010 -#define JclResources_RsRTTIArrayOf 65011 -#define JclResources_RsRTTIOut 65012 -#define JclResources_RsRTTIOrdinal 65013 -#define JclResources_RsRTTITrue 65014 -#define JclResources_RsRTTIFalse 65015 -#define JclResources_RsRTTITypeError 65016 -#define JclResources_RsRTTITypeInfoAt 65017 -#define JclResources_RsRTTIPropRead 65018 -#define JclResources_RsRTTIPropWrite 65019 -#define JclResources_RsRTTIPropStored 65020 -#define JclResources_RsRTTIField 65021 -#define JclResources_RsRTTIStaticMethod 65022 -#define JclResources_RsRTTIVirtualMethod 65023 -#define JclResources_RsInconsistentPath 65024 -#define JclResources_RsHKCRLong 65025 -#define JclResources_RsHKCULong 65026 -#define JclResources_RsHKLMLong 65027 -#define JclResources_RsHKUSLong 65028 -#define JclResources_RsHKPDLong 65029 -#define JclResources_RsHKCCLong 65030 -#define JclResources_RsHKDDLong 65031 -#define JclResources_RsHKCRShort 65032 -#define JclResources_RsHKCUShort 65033 -#define JclResources_RsHKLMShort 65034 -#define JclResources_RsHKUSShort 65035 -#define JclResources_RsHKPDShort 65036 -#define JclResources_RsHKCCShort 65037 -#define JclResources_RsHKDDShort 65038 -#define JclResources_RsRTTIValueOutOfRange 65039 -#define ComStrs_sRichEditSaveFail 65040 -#define ComStrs_sUDAssociated 65041 -#define ComStrs_sPageIndexError 65042 -#define JConsts_sChangeJPGSize 65043 -#define JConsts_sJPEGError 65044 -#define JConsts_sJPEGImageFile 65045 -#define JclResources_RsWin32Prefix 65046 -#define JclResources_RsFileUtilsNoVersionInfo 65047 -#define JclResources_RsCreateFileMapping 65048 -#define JclResources_RsCreateFileMappingView 65049 -#define JclResources_RsViewNeedsMapping 65050 -#define JclResources_RsFailedToObtainSize 65051 -#define JclResources_RsUnableToOpenKeyRead 65052 -#define JclResources_RsUnableToOpenKeyWrite 65053 -#define JclResources_RsUnableToAccessValue 65054 -#define JclResources_RsWrongDataType 65055 -#define IdResourceStrings_RSSocksServerCommandError 65056 -#define IdResourceStrings_RSSocksServerAddressError 65057 -#define IdResourceStrings_RSUnevenSizeInDecodeStream 65058 -#define IdResourceStrings_RSUnevenSizeInEncodeStream 65059 -#define IdResourceStrings_RSThreadTerminateAndWaitFor 65060 -#define ComStrs_sTabFailClear 65061 -#define ComStrs_sTabFailDelete 65062 -#define ComStrs_sTabFailRetrieve 65063 -#define ComStrs_sTabFailGetObject 65064 -#define ComStrs_sTabFailSet 65065 -#define ComStrs_sTabFailSetObject 65066 -#define ComStrs_sTabMustBeMultiLine 65067 -#define ComStrs_sInvalidIndex 65068 -#define ComStrs_sInsertError 65069 -#define ComStrs_sRichEditInsertError 65070 -#define ComStrs_sRichEditLoadFail 65071 -#define IdResourceStrings_RSStackEHOSTUNREACH 65072 -#define IdResourceStrings_RSStackENOTEMPTY 65073 -#define IdResourceStrings_RSStackHOST_NOT_FOUND 65074 -#define IdResourceStrings_RSSocksRequestFailed 65075 -#define IdResourceStrings_RSSocksRequestServerFailed 65076 -#define IdResourceStrings_RSSocksRequestIdentFailed 65077 -#define IdResourceStrings_RSSocksUnknownError 65078 -#define IdResourceStrings_RSSocksServerRespondError 65079 -#define IdResourceStrings_RSSocksAuthMethodError 65080 -#define IdResourceStrings_RSSocksAuthError 65081 -#define IdResourceStrings_RSSocksServerGeneralError 65082 -#define IdResourceStrings_RSSocksServerPermissionError 65083 -#define IdResourceStrings_RSSocksServerNetUnreachableError 65084 -#define IdResourceStrings_RSSocksServerHostUnreachableError 65085 -#define IdResourceStrings_RSSocksServerConnectionRefusedError 65086 -#define IdResourceStrings_RSSocksServerTTLExpiredError 65087 -#define IdResourceStrings_RSStackEADDRNOTAVAIL 65088 -#define IdResourceStrings_RSStackENETDOWN 65089 -#define IdResourceStrings_RSStackENETUNREACH 65090 -#define IdResourceStrings_RSStackENETRESET 65091 -#define IdResourceStrings_RSStackECONNABORTED 65092 -#define IdResourceStrings_RSStackECONNRESET 65093 -#define IdResourceStrings_RSStackENOBUFS 65094 -#define IdResourceStrings_RSStackEISCONN 65095 -#define IdResourceStrings_RSStackENOTCONN 65096 -#define IdResourceStrings_RSStackESHUTDOWN 65097 -#define IdResourceStrings_RSStackETOOMANYREFS 65098 -#define IdResourceStrings_RSStackETIMEDOUT 65099 -#define IdResourceStrings_RSStackECONNREFUSED 65100 -#define IdResourceStrings_RSStackELOOP 65101 -#define IdResourceStrings_RSStackENAMETOOLONG 65102 -#define IdResourceStrings_RSStackEHOSTDOWN 65103 -#define IdResourceStrings_RSStackEINVAL 65104 -#define IdResourceStrings_RSStackEMFILE 65105 -#define IdResourceStrings_RSStackEWOULDBLOCK 65106 -#define IdResourceStrings_RSStackEINPROGRESS 65107 -#define IdResourceStrings_RSStackEALREADY 65108 -#define IdResourceStrings_RSStackENOTSOCK 65109 -#define IdResourceStrings_RSStackEDESTADDRREQ 65110 -#define IdResourceStrings_RSStackEMSGSIZE 65111 -#define IdResourceStrings_RSStackEPROTOTYPE 65112 -#define IdResourceStrings_RSStackENOPROTOOPT 65113 -#define IdResourceStrings_RSStackEPROTONOSUPPORT 65114 -#define IdResourceStrings_RSStackESOCKTNOSUPPORT 65115 -#define IdResourceStrings_RSStackEOPNOTSUPP 65116 -#define IdResourceStrings_RSStackEPFNOSUPPORT 65117 -#define IdResourceStrings_RSStackEAFNOSUPPORT 65118 -#define IdResourceStrings_RSStackEADDRINUSE 65119 -#define IdResourceStrings_RSHTTPServiceUnavailable 65120 -#define IdResourceStrings_RSHTTPGatewayTimeout 65121 -#define IdResourceStrings_RSHTTPHTTPVersionNotSupported 65122 -#define IdResourceStrings_RSHTTPUnknownResponseCode 65123 -#define IdResourceStrings_RSHTTPHeaderAlreadyWritten 65124 -#define IdResourceStrings_RSHTTPErrorParsingCommand 65125 -#define IdResourceStrings_RSHTTPUnsupportedAuthorisationScheme 65126 -#define IdResourceStrings_RSHTTPCannotSwitchSessionStateWhenActive 65127 -#define IdResourceStrings_RSHTTPAuthAlreadyRegistered 65128 -#define IdResourceStrings_RSInvalidServiceName 65129 -#define IdResourceStrings_RSStackError 65130 -#define IdResourceStrings_RSStackInvalidIP 65131 -#define IdResourceStrings_RSStackEINTR 65132 -#define IdResourceStrings_RSStackEBADF 65133 -#define IdResourceStrings_RSStackEACCES 65134 -#define IdResourceStrings_RSStackEFAULT 65135 -#define IdResourceStrings_RSHTTPForbidden 65136 -#define IdResourceStrings_RSHTTPNotFound 65137 -#define IdResourceStrings_RSHTTPMethodeNotallowed 65138 -#define IdResourceStrings_RSHTTPNotAcceptable 65139 -#define IdResourceStrings_RSHTTPProxyAuthenticationRequired 65140 -#define IdResourceStrings_RSHTTPRequestTimeout 65141 -#define IdResourceStrings_RSHTTPConflict 65142 -#define IdResourceStrings_RSHTTPGone 65143 -#define IdResourceStrings_RSHTTPLengthRequired 65144 -#define IdResourceStrings_RSHTTPPreconditionFailed 65145 -#define IdResourceStrings_RSHTTPRequestEntityToLong 65146 -#define IdResourceStrings_RSHTTPRequestURITooLong 65147 -#define IdResourceStrings_RSHTTPUnsupportedMediaType 65148 -#define IdResourceStrings_RSHTTPInternalServerError 65149 -#define IdResourceStrings_RSHTTPNotImplemented 65150 -#define IdResourceStrings_RSHTTPBadGateway 65151 -#define IdResourceStrings_RSConnectTimeout 65152 -#define IdResourceStrings_RSHTTPContinue 65153 -#define IdResourceStrings_RSHTTPOK 65154 -#define IdResourceStrings_RSHTTPCreated 65155 -#define IdResourceStrings_RSHTTPAccepted 65156 -#define IdResourceStrings_RSHTTPNonAuthoritativeInformation 65157 -#define IdResourceStrings_RSHTTPNoContent 65158 -#define IdResourceStrings_RSHTTPResetContent 65159 -#define IdResourceStrings_RSHTTPPartialContent 65160 -#define IdResourceStrings_RSHTTPMovedPermanently 65161 -#define IdResourceStrings_RSHTTPMovedTemporarily 65162 -#define IdResourceStrings_RSHTTPSeeOther 65163 -#define IdResourceStrings_RSHTTPNotModified 65164 -#define IdResourceStrings_RSHTTPUseProxy 65165 -#define IdResourceStrings_RSHTTPBadRequest 65166 -#define IdResourceStrings_RSHTTPUnauthorized 65167 -#define IdResourceStrings_RSCanNotBindRange 65168 -#define IdResourceStrings_RSInvalidPortRange 65169 -#define IdResourceStrings_RSReadTimeout 65170 -#define IdResourceStrings_RSReadLnMaxLineLengthExceeded 65171 -#define IdResourceStrings_RSNoCommandHandlerFound 65172 -#define IdResourceStrings_RSWS2CallError 65173 -#define IdResourceStrings_RSWS2LoadError 65174 -#define IdResourceStrings_RSMIMEExtensionEmpty 65175 -#define IdResourceStrings_RSMIMEMIMETypeEmpty 65176 -#define IdResourceStrings_RSMIMEMIMEExtAlreadyExists 65177 -#define IdResourceStrings_RSStatusResolving 65178 -#define IdResourceStrings_RSStatusConnecting 65179 -#define IdResourceStrings_RSStatusConnected 65180 -#define IdResourceStrings_RSStatusDisconnecting 65181 -#define IdResourceStrings_RSStatusDisconnected 65182 -#define IdResourceStrings_RSStatusText 65183 -#define ComConst_STooManyParams 65184 -#define IdResourceStrings_RSCannotAllocateSocket 65185 -#define IdResourceStrings_RSConnectionClosedGracefully 65186 -#define IdResourceStrings_RSCouldNotBindSocket 65187 -#define IdResourceStrings_RSFailedTimeZoneInfo 65188 -#define IdResourceStrings_RSNotEnoughDataInBuffer 65189 -#define IdResourceStrings_RSWinsockInitializationError 65190 -#define IdResourceStrings_RSSetSizeExceeded 65191 -#define IdResourceStrings_RSThreadClassNotSpecified 65192 -#define IdResourceStrings_RSFileNotFound 65193 -#define IdResourceStrings_RSOnlyOneAntiFreeze 65194 -#define IdResourceStrings_RSNotConnected 65195 -#define IdResourceStrings_RSObjectTypeNotSupported 65196 -#define IdResourceStrings_RSTerminateThreadTimeout 65197 -#define IdResourceStrings_RSNoExecuteSpecified 65198 -#define IdResourceStrings_RSIdNoDataToRead 65199 -#define uRORes_err_UnexpectedClassInStream 65200 -#define uRORes_err_SessionNotFound 65201 -#define uRORes_err_ChannelDoesntSupportIROMetadataReader 65202 -#define uRORes_err_TooManySessions 65203 -#define uRORes_err_DOMElementIsNIL 65204 -#define uRORes_err_CannotLoadXMLDocument 65205 -#define uRORes_err_ErrorCreatingMsXmlDoc 65206 -#define uRORes_err_NoXMLParsersAvailable 65207 -#define uRORes_err_IDispatchMarshalingNotSupported 65208 -#define uRORes_err_UnsupportedVariantType 65209 -#define uRORes_err_VariantIsNotArray 65210 -#define uRORes_err_InvalidVarArrayDimCount 65211 -#define uRORes_err_MessageNotAssigned 65212 -#define ComConst_SOleError 65213 -#define ComConst_SNoMethod 65214 -#define ComConst_SVarNotObject 65215 -#define uRORes_err_UnspecifiedMessage 65216 -#define uRORes_err_UnknownMethod 65217 -#define uRORes_err_ClassFactoryDidNotReturnInstance 65218 -#define uRORes_err_TypeNotSupported 65219 -#define uRORes_err_ClassFactoryNotFound 65220 -#define uRORes_err_IROMessageNotSupported 65221 -#define uRORes_err_ClassAlreadyRegistered 65222 -#define uRORes_err_UnknownProxyInterface 65223 -#define uRORes_err_DispatcherAlreadyAssigned 65224 -#define uRORes_err_CannotFindMessageDispatcher 65225 -#define uRORes_err_ServerOnlySupportsOneDispatcher 65226 -#define uRORes_err_UnhandledException 65227 -#define uRORes_err_ChannelBusy 65228 -#define uRORes_err_ArrayIndexOutOfBounds 65229 -#define uRORes_err_InvalidHeader 65230 -#define uRORes_err_UnknownClassInStream 65231 -#define uRORes_err_UnexpectedEndOfStream 65232 -#define uRORes_err_RodlDuplicateName 65233 -#define uRORes_err_RodlNoDataTypeSpecified 65234 -#define uRORes_err_RodlNoEnumValues 65235 -#define uRORes_err_RodlNoStructElementsDefined 65236 -#define uRORes_err_RodlNoOperationsDefined 65237 -#define uRORes_err_RodlUsedFileDoesNotExist 65238 -#define uRORes_err_RodlInvalidDataType 65239 -#define uRORes_err_RodlStructCannotBeNested 65240 -#define uRORes_err_RodlInvalidAncestorType 65241 -#define uRORes_str_ExceptionOnServer 65242 -#define uRORes_str_ExceptionReraisedFromServer 65243 -#define uRORes_err_AssignError 65244 -#define uRORes_err_InvalidRequestStream 65245 -#define uRORes_err_NILMessage 65246 -#define uRORes_err_UnspecifiedInterface 65247 -#define uRODECConst_sInvalidStringFormat 65248 -#define uRODECConst_sInvalidFormatString 65249 -#define uRODECConst_sFMT_COPY 65250 -#define uRODECConst_sFMT_HEX 65251 -#define uRODECConst_sFMT_HEXL 65252 -#define uRODECConst_sFMT_MIME64 65253 -#define uRODECConst_sFMT_UU 65254 -#define uRODECConst_sFMT_XX 65255 -#define uRODECConst_sInvalidKeySize 65256 -#define uRODECConst_sNotInitialized 65257 -#define uRORes_err_InvalidIndex 65258 -#define uRORes_err_InvalidType 65259 -#define uRORes_err_InvalidStream 65260 -#define uRORes_err_InvalidParamFlag 65261 -#define uRORes_err_InvalidStringLength 65262 -#define uRORes_str_InvalidClassTypeInStream 65263 -#define Consts_SDockZoneNotFound 65264 -#define Consts_SDockZoneHasNoCtl 65265 -#define Consts_SDockZoneVersionConflict 65266 -#define Consts_SMultiSelectRequired 65267 -#define Consts_SSeparator 65268 -#define Consts_SErrorSettingCount 65269 -#define Consts_SListBoxMustBeVirtual 65270 -#define Consts_SANSIEncoding 65271 -#define Consts_SASCIIEncoding 65272 -#define Consts_SUnicodeEncoding 65273 -#define Consts_SBigEndianEncoding 65274 -#define Consts_SUTF8Encoding 65275 -#define Consts_SUTF7Encoding 65276 -#define Consts_SPageControlNotSet 65277 -#define uRODECConst_sProtectionCircular 65278 -#define uRODECConst_sStringFormatExists 65279 -#define Consts_srNone 65280 -#define Consts_SOutOfRange 65281 -#define Consts_sAllFilter 65282 -#define Consts_SInsertLineError 65283 -#define Consts_SInvalidClipFmt 65284 -#define Consts_SIconToClipboard 65285 -#define Consts_SCannotOpenClipboard 65286 -#define Consts_SInvalidMemoSize 65287 -#define Consts_SInvalidPrinterOp 65288 -#define Consts_SNoDefaultPrinter 65289 -#define Consts_SDuplicateMenus 65290 -#define Consts_SPictureLabel 65291 -#define Consts_SPictureDesc 65292 -#define Consts_SPreviewLabel 65293 -#define Consts_SDockedCtlNeedsName 65294 -#define Consts_SDockTreeRemoveError 65295 -#define Consts_SmkcEsc 65296 -#define Consts_SmkcEnter 65297 -#define Consts_SmkcSpace 65298 -#define Consts_SmkcPgUp 65299 -#define Consts_SmkcPgDn 65300 -#define Consts_SmkcEnd 65301 -#define Consts_SmkcHome 65302 -#define Consts_SmkcLeft 65303 -#define Consts_SmkcUp 65304 -#define Consts_SmkcRight 65305 -#define Consts_SmkcDown 65306 -#define Consts_SmkcIns 65307 -#define Consts_SmkcDel 65308 -#define Consts_SmkcShift 65309 -#define Consts_SmkcCtrl 65310 -#define Consts_SmkcAlt 65311 -#define Consts_SMsgDlgError 65312 -#define Consts_SMsgDlgInformation 65313 -#define Consts_SMsgDlgConfirm 65314 -#define Consts_SMsgDlgYes 65315 -#define Consts_SMsgDlgNo 65316 -#define Consts_SMsgDlgOK 65317 -#define Consts_SMsgDlgCancel 65318 -#define Consts_SMsgDlgHelp 65319 -#define Consts_SMsgDlgAbort 65320 -#define Consts_SMsgDlgRetry 65321 -#define Consts_SMsgDlgIgnore 65322 -#define Consts_SMsgDlgAll 65323 -#define Consts_SMsgDlgNoToAll 65324 -#define Consts_SMsgDlgYesToAll 65325 -#define Consts_SmkcBkSp 65326 -#define Consts_SmkcTab 65327 -#define Consts_SOKButton 65328 -#define Consts_SCancelButton 65329 -#define Consts_SYesButton 65330 -#define Consts_SNoButton 65331 -#define Consts_SHelpButton 65332 -#define Consts_SCloseButton 65333 -#define Consts_SIgnoreButton 65334 -#define Consts_SRetryButton 65335 -#define Consts_SAbortButton 65336 -#define Consts_SAllButton 65337 -#define Consts_SCannotDragForm 65338 -#define Consts_SVMetafiles 65339 -#define Consts_SVEnhMetafiles 65340 -#define Consts_SVIcons 65341 -#define Consts_SVBitmaps 65342 -#define Consts_SMsgDlgWarning 65343 -#define Consts_SMDIChildNotVisible 65344 -#define Consts_SVisibleChanged 65345 -#define Consts_SCannotShowModal 65346 -#define Consts_SScrollBarRange 65347 -#define Consts_SPropertyOutOfRange 65348 -#define Consts_SMenuIndexError 65349 -#define Consts_SMenuReinserted 65350 -#define Consts_SMenuNotFound 65351 -#define Consts_SNoTimers 65352 -#define Consts_SNotPrinting 65353 -#define Consts_SPrinting 65354 -#define Consts_SInvalidPrinter 65355 -#define Consts_SDeviceOnPort 65356 -#define Consts_SGroupIndexTooLow 65357 -#define Consts_SNoMDIForm 65358 -#define Consts_SControlParentSetToSelf 65359 -#define Consts_SChangeIconSize 65360 -#define Consts_SUnknownExtension 65361 -#define Consts_SUnknownClipboardFormat 65362 -#define Consts_SOutOfResources 65363 -#define Consts_SNoCanvasHandle 65364 -#define Consts_SInvalidImageSize 65365 -#define Consts_SInvalidImageList 65366 -#define Consts_SReplaceImage 65367 -#define Consts_SImageIndexError 65368 -#define Consts_SImageReadFail 65369 -#define Consts_SImageWriteFail 65370 -#define Consts_SWindowDCError 65371 -#define Consts_SWindowClass 65372 -#define Consts_SCannotFocus 65373 -#define Consts_SParentRequired 65374 -#define Consts_SParentGivenNotAParent 65375 -#define RTLConsts_SWriteError 65376 -#define RTLConsts_SThreadCreateError 65377 -#define RTLConsts_SThreadError 65378 -#define HelpIntfs_hNoTableOfContents 65379 -#define HelpIntfs_hNothingFound 65380 -#define HelpIntfs_hNoContext 65381 -#define HelpIntfs_hNoContextFound 65382 -#define HelpIntfs_hNoTopics 65383 -#define Consts_SInvalidTabPosition 65384 -#define Consts_SInvalidTabStyle 65385 -#define Consts_SInvalidBitmap 65386 -#define Consts_SInvalidIcon 65387 -#define Consts_SInvalidMetafile 65388 -#define Consts_SInvalidPixelFormat 65389 -#define Consts_SInvalidImage 65390 -#define Consts_SScanLine 65391 -#define RTLConsts_SInvalidRegType 65392 -#define RTLConsts_SListCapacityError 65393 -#define RTLConsts_SListCountError 65394 -#define RTLConsts_SListIndexError 65395 -#define RTLConsts_SMemoryStreamError 65396 -#define RTLConsts_SPropertyException 65397 -#define RTLConsts_SReadError 65398 -#define RTLConsts_SReadOnlyProperty 65399 -#define RTLConsts_SRegCreateFailed 65400 -#define RTLConsts_SRegGetDataFailed 65401 -#define RTLConsts_SRegSetDataFailed 65402 -#define RTLConsts_SResNotFound 65403 -#define RTLConsts_SSeekNotImplemented 65404 -#define RTLConsts_SSortedListError 65405 -#define RTLConsts_SUnknownGroup 65406 -#define RTLConsts_SUnknownProperty 65407 -#define RTLConsts_SCheckSynchronizeError 65408 -#define RTLConsts_SClassNotFound 65409 -#define RTLConsts_SDuplicateClass 65410 -#define RTLConsts_SDuplicateItem 65411 -#define RTLConsts_SDuplicateName 65412 -#define RTLConsts_SDuplicateString 65413 -#define RTLConsts_SFCreateErrorEx 65414 -#define RTLConsts_SFOpenErrorEx 65415 -#define RTLConsts_SIniFileWriteError 65416 -#define RTLConsts_SInvalidImage 65417 -#define RTLConsts_SInvalidName 65418 -#define RTLConsts_SInvalidProperty 65419 -#define RTLConsts_SInvalidPropertyElement 65420 -#define RTLConsts_SInvalidPropertyPath 65421 -#define RTLConsts_SInvalidPropertyType 65422 -#define RTLConsts_SInvalidPropertyValue 65423 -#define SysConst_SShortDayNameTue 65424 -#define SysConst_SShortDayNameWed 65425 -#define SysConst_SShortDayNameThu 65426 -#define SysConst_SShortDayNameFri 65427 -#define SysConst_SShortDayNameSat 65428 -#define SysConst_SLongDayNameSun 65429 -#define SysConst_SLongDayNameMon 65430 -#define SysConst_SLongDayNameTue 65431 -#define SysConst_SLongDayNameWed 65432 -#define SysConst_SLongDayNameThu 65433 -#define SysConst_SLongDayNameFri 65434 -#define SysConst_SLongDayNameSat 65435 -#define RTLConsts_SAncestorNotFound 65436 -#define RTLConsts_SAssignError 65437 -#define RTLConsts_SBitsIndexError 65438 -#define RTLConsts_SCantWriteResourceStreamError 65439 -#define SysConst_SShortMonthNameNov 65440 -#define SysConst_SShortMonthNameDec 65441 -#define SysConst_SLongMonthNameJan 65442 -#define SysConst_SLongMonthNameFeb 65443 -#define SysConst_SLongMonthNameMar 65444 -#define SysConst_SLongMonthNameApr 65445 -#define SysConst_SLongMonthNameMay 65446 -#define SysConst_SLongMonthNameJun 65447 -#define SysConst_SLongMonthNameJul 65448 -#define SysConst_SLongMonthNameAug 65449 -#define SysConst_SLongMonthNameSep 65450 -#define SysConst_SLongMonthNameOct 65451 -#define SysConst_SLongMonthNameNov 65452 -#define SysConst_SLongMonthNameDec 65453 -#define SysConst_SShortDayNameSun 65454 -#define SysConst_SShortDayNameMon 65455 -#define SysConst_SAssertError 65456 -#define SysConst_SAbstractError 65457 -#define SysConst_SModuleAccessViolation 65458 -#define SysConst_SOSError 65459 -#define SysConst_SUnkOSError 65460 -#define SysConst_SNL 65461 -#define SysConst_SShortMonthNameJan 65462 -#define SysConst_SShortMonthNameFeb 65463 -#define SysConst_SShortMonthNameMar 65464 -#define SysConst_SShortMonthNameApr 65465 -#define SysConst_SShortMonthNameMay 65466 -#define SysConst_SShortMonthNameJun 65467 -#define SysConst_SShortMonthNameJul 65468 -#define SysConst_SShortMonthNameAug 65469 -#define SysConst_SShortMonthNameSep 65470 -#define SysConst_SShortMonthNameOct 65471 -#define SysConst_SInvalidVarOpWithHResultWithPrefix 65472 -#define SysConst_SVarTypeOutOfRangeWithPrefix 65473 -#define SysConst_SVarTypeAlreadyUsedWithPrefix 65474 -#define SysConst_SVarTypeNotUsableWithPrefix 65475 -#define SysConst_SVarTypeTooManyCustom 65476 -#define SysConst_SVarTypeCouldNotConvert 65477 -#define SysConst_SVarTypeConvertOverflow 65478 -#define SysConst_SVarOverflow 65479 -#define SysConst_SVarInvalid 65480 -#define SysConst_SVarBadType 65481 -#define SysConst_SVarNotImplemented 65482 -#define SysConst_SVarUnexpected 65483 -#define SysConst_SExternalException 65484 -#define SysConst_SAssertionFailed 65485 -#define SysConst_SIntfCastError 65486 -#define SysConst_SSafecallException 65487 -#define SysConst_SOperationAborted 65488 -#define SysConst_SException 65489 -#define SysConst_SExceptTitle 65490 -#define SysConst_SInvalidFormat 65491 -#define SysConst_SArgumentMissing 65492 -#define SysConst_SDispatchError 65493 -#define SysConst_SReadAccess 65494 -#define SysConst_SWriteAccess 65495 -#define SysConst_SFormatTooLong 65496 -#define SysConst_SVarArrayCreate 65497 -#define SysConst_SVarArrayBounds 65498 -#define SysConst_SVarArrayLocked 65499 -#define SysConst_SVarArrayWithHResult 65500 -#define SysConst_SInvalidVarCast 65501 -#define SysConst_SInvalidVarOp 65502 -#define SysConst_SInvalidVarNullOp 65503 -#define SysConst_SDiskFull 65504 -#define SysConst_SInvalidInput 65505 -#define SysConst_SDivByZero 65506 -#define SysConst_SRangeError 65507 -#define SysConst_SIntOverflow 65508 -#define SysConst_SInvalidOp 65509 -#define SysConst_SZeroDivide 65510 -#define SysConst_SOverflow 65511 -#define SysConst_SUnderflow 65512 -#define SysConst_SInvalidPointer 65513 -#define SysConst_SInvalidCast 65514 -#define SysConst_SAccessViolationArg3 65515 -#define SysConst_SAccessViolationNoArg 65516 -#define SysConst_SStackOverflow 65517 -#define SysConst_SControlC 65518 -#define SysConst_SPrivilege 65519 -#define SysConst_SInvalidInteger 65520 -#define SysConst_SInvalidFloat 65521 -#define SysConst_SInvalidDate 65522 -#define SysConst_SInvalidTime 65523 -#define SysConst_SInvalidDateTime 65524 -#define SysConst_SInvalidTimeStamp 65525 -#define SysConst_SInvalidGUID 65526 -#define SysConst_STimeEncodeError 65527 -#define SysConst_SDateEncodeError 65528 -#define SysConst_SOutOfMemory 65529 -#define SysConst_SInOutError 65530 -#define SysConst_SFileNotFound 65531 -#define SysConst_SInvalidFilename 65532 -#define SysConst_STooManyOpenFiles 65533 -#define SysConst_SAccessDenied 65534 -#define SysConst_SEndOfFile 65535 -STRINGTABLE -BEGIN - TeeConst_TeeMsg_ValuesGanttStart, "Start" - TeeConst_TeeMsg_ValuesGanttEnd, "End" - TeeConst_TeeMsg_ValuesGanttNextTask, "NextTask" - TeeConst_TeeMsg_ValuesBubbleRadius, "Radius" - TeeConst_TeeMsg_ValuesArrowEndX, "EndX" - TeeConst_TeeMsg_ValuesArrowEndY, "EndY" - OleConst_SLinkProperties, "Link Properties" - OleConst_SInvalidLinkSource, "Cannot link to an invalid source." - OleConst_SCannotBreakLink, "Break link operation is not supported." - OleConst_SEmptyContainer, "Operation not allowed on an empty OLE container" - OleConst_SInvalidVerb, "Invalid object verb" - OleConst_SPropDlgCaption, "%s Properties" - OleConst_SInvalidStreamFormat, "Invalid stream format" - TeeConst_TeeMsg_FunctionHigh, "High" - TeeConst_TeeMsg_FunctionLow, "Low" - TeeConst_TeeMsg_FunctionAverage, "Average" - TeeConst_TeeMsg_GalleryShape, "Shape" - TeeConst_TeeMsg_GalleryBubble, "Bubble" - TeeConst_TeeMsg_DefaultFontName, "Arial" - TeeConst_TeeMsg_CheckPointerSize, "Pointer size must be greater than zero" - TeeConst_TeeMsg_FunctionPeriod, "Function Period should be >= 0" - TeeConst_TeeMsg_PieOther, "Other" - TeeConst_TeeMsg_ShapeGallery1, "abc" - TeeConst_TeeMsg_ShapeGallery2, "123" - TeeConst_TeeMsg_ValuesX, "X" - TeeConst_TeeMsg_ValuesY, "Y" - TeeConst_TeeMsg_ValuesPie, "Pie" - TeeConst_TeeMsg_ValuesBar, "Bar" - TeeConst_TeeMsg_ValuesAngle, "Angle" - TeeConst_TeeMsg_GanttSample1, "Design" - TeeConst_TeeMsg_GanttSample2, "Prototyping" - TeeConst_TeeMsg_GanttSample3, "Development" - TeeConst_TeeMsg_GanttSample4, "Sales" - TeeConst_TeeMsg_GanttSample5, "Marketing" - TeeConst_TeeMsg_GanttSample6, "Testing" - TeeConst_TeeMsg_GanttSample7, "Manufac." - TeeConst_TeeMsg_GanttSample8, "Debugging" - TeeConst_TeeMsg_GanttSample9, "New Version" - TeeConst_TeeMsg_GanttSample10, "Banking" - TeeConst_TeeMsg_DefaultFontSize, "8" - TeeConst_TeeMsg_DefaultGalleryFontSize, "8" - TeeConst_TeeMsg_FunctionAdd, "Add" - TeeConst_TeeMsg_FunctionSubtract, "Subtract" - TeeConst_TeeMsg_FunctionMultiply, "Multiply" - TeeConst_TeeMsg_FunctionDivide, "Divide" - TeeConst_TeeMsg_GalleryPie, "Pie" - TeeConst_TeeMsg_GalleryFastLine, "Fast Line" - TeeConst_TeeMsg_Rotation, "Rotation" - TeeConst_TeeMsg_PieSample1, "Cars" - TeeConst_TeeMsg_PieSample2, "Phones" - TeeConst_TeeMsg_PieSample3, "Tables" - TeeConst_TeeMsg_PieSample4, "Monitors" - TeeConst_TeeMsg_PieSample5, "Lamps" - TeeConst_TeeMsg_PieSample6, "Keyboards" - TeeConst_TeeMsg_PieSample7, "Bikes" - TeeConst_TeeMsg_PieSample8, "Chairs" - TeeConst_TeeMsg_GalleryChartName, "TeeGalleryChart" - TeeConst_TeeMsg_GalleryStandard, "Standard" - TeeConst_TeeMsg_GalleryFunctions, "Functions" - TeeConst_TeeMsg_GalleryArrow, "Arrow" - TeeConst_TeeMsg_GalleryGantt, "Gantt" - TeeConst_TeeMsg_AxisLogBase, "Axis Logarithmic Base should be >= 2" - TeeConst_TeeMsg_MaxPointsPerPage, "MaxPointsPerPage must be >= 0" - TeeConst_TeeMsg_3dPercent, "3D effect percent must be between %d and %d" - TeeConst_TeeMsg_CircularSeries, "Circular Series dependences are not allowed" - TeeConst_TeeMsg_BarWidthPercent, "Bar Width Percent must be between 1 and 100" - TeeConst_TeeMsg_BarOffsetPercent, "Bar Offset Percent must be between -100% and 100%" - TeeConst_TeeMsg_DefaultPercentOf, "%s of %s" - TeeConst_TeeMsg_DefPercentFormat, "##0.## %" - TeeConst_TeeMsg_DefValueFormat, "#,##0.###" - TeeConst_TeeMsg_AxisTitle, "Axis Title" - TeeConst_TeeMsg_AxisLabels, "Axis Labels" - TeeConst_TeeMsg_GalleryLine, "Line" - TeeConst_TeeMsg_GalleryPoint, "Point" - TeeConst_TeeMsg_GalleryArea, "Area" - TeeConst_TeeMsg_GalleryBar, "Bar" - TeeConst_TeeMsg_GalleryHorizBar, "Horiz. Bar" - MidConst_SNoInsertsAllowed, "Inserts are not allowed" - MidConst_SConnectionMissing, "Requires Connection before opening" - MidConst_SNoCircularConnection, "Circular reference to Connection not allowed" - TeeConst_TeeMsg_LegendTopPos, "Top Legend Position must be between 0 and 100 %" - TeeConst_TeeMsg_LegendFirstValue, "First Legend Value must be > 0" - TeeConst_TeeMsg_LegendColorWidth, "Legend Color Width must be between 0 and 100 %" - TeeConst_TeeMsg_SeriesSetDataSource, "No ParentChart to validate DataSource" - TeeConst_TeeMsg_SeriesInvDataSource, "No valid DataSource: %s" - TeeConst_TeeMsg_FillSample, "FillSampleValues NumValues must be > 0" - TeeConst_TeeMsg_Angle, "%s Angle must be between 0 and 359 degrees" - TeeConst_TeeMsg_AxisLogDateTime, "DateTime Axis cannot be Logarithmic" - TeeConst_TeeMsg_AxisLogNotPositive, "Logarithmic Axis Min and Max values should be >= 0" - TeeConst_TeeMsg_AxisLabelSep, "Labels Separation % must be greater than 0" - TeeConst_TeeMsg_AxisIncrementNeg, "Axis increment must be >= 0" - TeeConst_TeeMsg_AxisMinMax, "Axis Minimum Value must be <= Maximum" - TeeConst_TeeMsg_AxisMaxMin, "Axis Maximum Value must be >= Minimum" - MidConst_SNoDataProvider, "Missing data provider or data packet" - MidConst_SInvalidDataPacket, "Invalid data packet" - MidConst_SRefreshError, "Must apply updates before refreshing data" - MidConst_SNoCircularReference, "Circular provider references not allowed" - MidConst_SErrorLoadingMidas, "Error loading MIDAS.DLL" - MidConst_SCannotCreateDataSet, "No fields defined. Cannot create dataset" - MidConst_SNoConnectToBroker, "Connection not allowed to TConnectionBroker" - MidConst_SNoParentConnection, "ParentConnection is not assigned" - MidConst_SInvalidOptParamType, "Value cannot be stored in an optional parameter" - MidConst_SConstraintFailed, "Record or field constraint failed." - MidConst_SField, "Field" - MidConst_SRecConstFail, "Preparation of record constraint failed with error \"%s\"" - MidConst_SFieldConstFail, "Preparation of field constraint failed with error \"%s\"" - MidConst_SDefExprFail, "Preparation of default expression failed with error \"%s\"" - MidConst_SNoEditsAllowed, "Modifications are not allowed" - MidConst_SNoDeletesAllowed, "Deletes are not allowed" - cxEditConsts_scxRegExprIncorrectParameterQuantifier, "Incorrect parameter quantifier" - cxEditConsts_scxRegExprCantUseParameterQuantifier, "The parameter quantifier cannot be applied here" - cxEditConsts_scxMaskEditRegExprError, "Regular expression errors:" - cxEditConsts_scxMaskEditInvalidEditValue, "The edit value is invalid" - cxEditConsts_cxSSpinEditInvalidNumericValue, "Invalid numeric value" - VDBConsts_SFirstRecord, "First record" - VDBConsts_SPriorRecord, "Prior record" - VDBConsts_SNextRecord, "Next record" - VDBConsts_SLastRecord, "Last record" - VDBConsts_SInsertRecord, "Insert record" - VDBConsts_SDeleteRecord, "Delete record" - VDBConsts_SEditRecord, "Edit record" - VDBConsts_SPostEdit, "Post edit" - VDBConsts_SCancelEdit, "Cancel edit" - VDBConsts_SRefreshRecord, "Refresh data" - VDBConsts_SRemoteLogin, "Remote Login" - cxEditConsts_scxRegExprCantUsePlusQuantifier, "The '+' quantifier cannot be applied here" - cxEditConsts_scxRegExprCantUseStarQuantifier, "The '*' quantifier cannot be applied here" - cxEditConsts_scxRegExprCantCreateEmptyAlt, "The alternative should not be empty" - cxEditConsts_scxRegExprCantCreateEmptyBlock, "The block should not be empty" - cxEditConsts_scxRegExprIllegalSymbol, "Illegal '%s'" - cxEditConsts_scxRegExprIllegalQuantifier, "Illegal quantifier '%s'" - cxEditConsts_scxRegExprIllegalIntegerValue, "Illegal integer value" - cxEditConsts_scxRegExprTooBigReferenceNumber, "Too big reference number" - cxEditConsts_scxRegExprCantCreateEmptyEnum, "Can't create empty enumeration" - cxEditConsts_scxRegExprSubrangeOrder, "The starting character of the subrange must be less than the finishing one" - cxEditConsts_scxRegExprHexNumberExpected0, "Hexadecimal number expected" - cxEditConsts_scxRegExprHexNumberExpected, "Hexadecimal number expected but '%s' found" - cxEditConsts_scxRegExprMissing, "Missing '%s'" - cxEditConsts_scxRegExprUnnecessary, "Unnecessary '%s'" - cxEditConsts_scxRegExprIncorrectSpace, "The space character is not allowed after '\\'" - cxEditConsts_scxRegExprNotCompiled, "Regular expression is not compiled" - cxEditConsts_scxSEditRepositoryDateItem, "DateEdit|Represents an edit control with a dropdown calendar" - cxEditConsts_scxSEditRepositoryHyperLinkItem, "HyperLink|Represents a text editor with hyperlink functionality" - cxEditConsts_scxSEditRepositoryImageComboBoxItem, "ImageComboBox|Represents an editor displaying the list of images and text strings within the dropdown window" - cxEditConsts_scxSEditRepositoryImageItem, "Image|Represents an image editor" - cxEditConsts_scxSEditRepositoryMaskItem, "MaskEdit|Represents a generic masked edit control." - cxEditConsts_scxSEditRepositoryMemoItem, "Memo|Represents an edit control that allows editing memo data" - cxEditConsts_scxSEditRepositoryMRUItem, "MRUEdit|Represents a text editor displaying the list of most recently used items (MRU) within a dropdown window" - cxEditConsts_scxSEditRepositoryPopupItem, "PopupEdit|Represents an edit control with a dropdown list" - cxEditConsts_scxSEditRepositorySpinItem, "SpinEdit|Represents a spin editor" - cxEditConsts_scxSEditRepositoryRadioGroupItem, "RadioGroup|Represents a group of radio buttons" - cxEditConsts_scxSEditRepositoryTextItem, "TextEdit|Represents a single line text editor" - cxEditConsts_scxSEditRepositoryTimeItem, "TimeEdit|Represents an editor displaying time values" - cxEditConsts_scxRegExprLine, "Line" - cxEditConsts_scxRegExprChar, "Char" - cxEditConsts_scxRegExprNotAssignedSourceStream, "The source stream is not assigned" - cxEditConsts_scxRegExprEmptySourceStream, "The source stream is empty" - cxEditConsts_cxSDateThird, "third" - cxEditConsts_cxSDateFourth, "fourth" - cxEditConsts_cxSDateFifth, "fifth" - cxEditConsts_cxSDateSixth, "sixth" - cxEditConsts_cxSDateSeventh, "seventh" - cxEditConsts_cxSDateBOM, "bom" - cxEditConsts_cxSDateEOM, "eom" - cxEditConsts_cxSDateNow, "now" - cxEditConsts_scxSCalcError, "Error" - cxEditConsts_scxSHyperLinkPrefix, "http://" - cxEditConsts_scxSEditRepositoryBlobItem, "BlobEdit|Represents the BLOB editor" - cxEditConsts_scxSEditRepositoryButtonItem, "ButtonEdit|Represents an edit control with embedded buttons" - cxEditConsts_scxSEditRepositoryCalcItem, "CalcEdit|Represents an edit control with a dropdown calculator window" - cxEditConsts_scxSEditRepositoryCheckBoxItem, "CheckBox|Represents a check box control that allows selecting an option" - cxEditConsts_scxSEditRepositoryComboBoxItem, "ComboBox|Represents the combo box editor" - cxEditConsts_scxSEditRepositoryCurrencyItem, "CurrencyEdit|Represents an editor enabling editing currency data" - cxEditConsts_cxSDatePopupNow, "Now" - cxEditConsts_cxSDatePopupOK, "OK" - cxEditConsts_cxSDatePopupToday, "Today" - cxEditConsts_cxSDateError, "Invalid Date" - cxEditConsts_cxSDateToday, "today" - cxEditConsts_cxSDateYesterday, "yesterday" - cxEditConsts_cxSDateTomorrow, "tomorrow" - cxEditConsts_cxSDateSunday, "Sunday" - cxEditConsts_cxSDateMonday, "Monday" - cxEditConsts_cxSDateTuesday, "Tuesday" - cxEditConsts_cxSDateWednesday, "Wednesday" - cxEditConsts_cxSDateThursday, "Thursday" - cxEditConsts_cxSDateFriday, "Friday" - cxEditConsts_cxSDateSaturday, "Saturday" - cxEditConsts_cxSDateFirst, "first" - cxEditConsts_cxSDateSecond, "second" - cxEditConsts_cxSEditCheckBoxUnchecked, "False" - cxEditConsts_cxSRadioGroupDefaultCaption, "" - cxEditConsts_cxSBlobButtonOK, "&OK" - cxEditConsts_cxSBlobButtonCancel, "&Cancel" - cxEditConsts_cxSBlobButtonClose, "&Close" - cxEditConsts_cxSBlobMemo, "(MEMO)" - cxEditConsts_cxSBlobMemoEmpty, "(memo)" - cxEditConsts_cxSBlobPicture, "(PICTURE)" - cxEditConsts_cxSBlobPictureEmpty, "(picture)" - cxEditConsts_cxSMenuItemCaptionCut, "Cu&t" - cxEditConsts_cxSMenuItemCaptionCopy, "&Copy" - cxEditConsts_cxSMenuItemCaptionPaste, "&Paste" - cxEditConsts_cxSMenuItemCaptionDelete, "&Delete" - cxEditConsts_cxSMenuItemCaptionLoad, "&Load..." - cxEditConsts_cxSMenuItemCaptionSave, "Save &As..." - cxEditConsts_cxSDatePopupClear, "Clear" - pnglang_EPNGCannotChangeSizeText, "The \"Portable Network Graphics\" image can not be resize by changing width and height properties. Try assigning the image from a bitmap." - pnglang_EPNGCannotAddChunkText, "The program tried to add a existent critical chunk to the current image which is not allowed." - pnglang_EPNGCannotAddInvalidImageText, "It's not allowed to add a new chunk because the current image is invalid." - pnglang_EPNGOutMemoryText, "Some operation could not be performed because the system is out of resources. Close some windows and try again." - pnglang_EPNGHeaderNotPresentText, "This operation is not valid because the current image contains no valid header." - cxDataConsts_cxSDataReadError, "Stream read error" - cxDataConsts_cxSDataWriteError, "Stream write error" - cxEditConsts_cxSEditDateConvertError, "Could not convert to date" - cxEditConsts_cxSEditInvalidRepositoryItem, "The repository item is not acceptable" - cxEditConsts_cxSEditNumericValueConvertError, "Could not convert to numeric value" - cxEditConsts_cxSEditPopupCircularReferencingError, "Circular referencing is not allowed" - cxEditConsts_cxSEditTimeConvertError, "Could not convert to time" - cxEditConsts_cxSEditValidateErrorText, "Invalid input value. Use escape key to abandon changes" - cxEditConsts_cxSEditValueOutOfBounds, "Value out of bounds" - cxEditConsts_cxSEditCheckBoxChecked, "True" - cxEditConsts_cxSEditCheckBoxGrayed, "" - ADOConst_sValueAttr, "Value" - pnglang_EPngInvalidCRCText, "This \"Portable Network Graphics\" image is not valid because it contains invalid pieces of data (crc error)" - pnglang_EPNGInvalidIHDRText, "The \"Portable Network Graphics\" image could not be loaded because one of its main piece of data (ihdr) might be corrupted" - pnglang_EPNGMissingMultipleIDATText, "This \"Portable Network Graphics\" image is invalid because it has missing image parts." - pnglang_EPNGZLIBErrorText, "Could not decompress the image because it contains invalid compressed data.\r\n Description: " - pnglang_EPNGInvalidPaletteText, "The \"Portable Network Graphics\" image contains an invalid palette." - pnglang_EPNGInvalidFileHeaderText, "The file being readed is not a valid \"Portable Network Graphics\" image because it contains an invalid header. This file may be corruped, try obtaining it again." - pnglang_EPNGIHDRNotFirstText, "This \"Portable Network Graphics\" image is not supported or it might be invalid.\r\n(IHDR chunk is not the first)" - pnglang_EPNGSizeExceedsText, "This \"Portable Network Graphics\" image is not supported because either it's width or height exceeds the maximum size, which is 65535 pixels length." - pnglang_EPNGUnknownPalEntryText, "There is no such palette entry." - pnglang_EPNGUnknownCriticalChunkText, "This \"Portable Network Graphics\" image contains an unknown critical part which could not be decoded." - pnglang_EPNGUnknownCompressionText, "This \"Portable Network Graphics\" image is encoded with an unknown compression scheme which could not be decoded." - pnglang_EPNGUnknownInterlaceText, "This \"Portable Network Graphics\" image uses an unknown interlace scheme which could not be decoded." - pnglang_EPNGCannotAssignChunkText, "The chunks must be compatible to be assigned." - pnglang_EPNGUnexpectedEndText, "This \"Portable Network Graphics\" image is invalid because the decoder found an unexpected end of the file." - pnglang_EPNGNoImageDataText, "This \"Portable Network Graphics\" image contains no data." - IBSQLMonitor_StrRollbackRetainin, ": [Rollback retaining (Soft rollback)]" - IBSQLMonitor_StrStartTransaction, ": [Start transaction]" - IBSQLMonitor_StrApplication, "[Application: " - ADOConst_SMissingConnection, "Missing Connection or ConnectionString" - ADOConst_SNoDetailFilter, "Filter property cannot be used for detail tables" - ADOConst_SBookmarksRequired, "Dataset does not support bookmarks, which are required for multi-record data controls" - ADOConst_SMissingCommandText, "Missing %s property" - ADOConst_SNoResultSet, "CommandText does not return a result set" - ADOConst_SADOCreateError, "Error creating object. Please verify that the Microsoft Data Access Components 2.1 (or later) have been properly installed" - ADOConst_SEventsNotSupported, "Events are not supported with server side TableDirect cursors" - ADOConst_SUsupportedFieldType, "Unsupported field type (%s) in field %s" - ADOConst_SConnectionRequired, "A connection component is required for async ExecuteOptions" - ADOConst_SCantRequery, "Cannot perform a requery after connection has changed" - ADOConst_SNoFilterOptions, "FilterOptions are not supported" - ADOConst_SRecordsetNotOpen, "Recordset is not open" - ADOConst_sNameAttr, "Name" - IBSQLMonitor_StrMisc, "[Misc] " - IBSQLMonitor_StrError, "[Error] " - IBSQLMonitor_StrAttach, ": [Attach]" - IBSQLMonitor_StrDetach, ": [Detach]" - IBSQLMonitor_StrQuery, ": [Query]" - IBSQLMonitor_StrStart, ": [Start]" - IBSQLMonitor_StrExecute, ": [Execute] " - IBSQLMonitor_StrNULL, "" - IBSQLMonitor_StrBLOB, "" - IBSQLMonitor_StrFetch, ": [Fetch] " - IBSQLMonitor_StrPrepare, ": [Prepare] " - IBSQLMonitor_StrPlan, " Plan: " - IBSQLMonitor_StrPlanCantRetrive, " Plan: Can't retrieve plan - too large" - IBSQLMonitor_StrCommitHardComm, ": [Commit (Hard commit)]" - IBSQLMonitor_StrCommitRetaining, ": [Commit retaining (Soft commit)]" - IBSQLMonitor_StrRollback, ": [Rollback]" - IBXConst_SInvalidOption, "Invalid option specified" - IBXConst_SInvalidOnErrorResult, "Unexpected onError return value" - IBXConst_SInvalidOnStatusResult, "Unexpected onStatus return value" - IBXConst_SDPBConstantUnknownEx, "DPB Constant (%s) is unknown" - IBXConst_STPBConstantUnknownEx, "TPB Constant (%s) is unknown" - IBXConst_SUnknownPlan, "Unknown Error - Can't retrieve plan" - IBXConst_SFieldSizeMismatch, "Size Mismatch - Field %s size is too small for data" - IBXConst_SEventAlreadyRegistered, "Events already registered" - IBXConst_SStringTooLarge, "Trying to store a string of length %d into a field that can only contain %d" - IBXConst_SNoTimers, "Not enough timers available" - IBXConst_SIB65feature, "%s is an InterBase 6.5 function. Please upgrade to InterBase 6.5 to use this functonality" - IBXConst_SLoginPromptFailure, "Can not find default login prompt dialog. Please add DBLogDlg to the uses section of your main file." - IBXConst_SIB70feature, "%s is an InterBase 7.0 function. Please upgrade to InterBase 7.0 to use this functonality" - IBXConst_SIB71feature, "%s is an InterBase 7.1 function. Please upgrade to InterBase 7.1 to use this functonality" - IBSQLMonitor_StrConnect, ": [Connect]" - IBSQLMonitor_StrDisconnect, ": [Disconnect]" - IBXConst_SOutputParsingError, "Unexpected Output buffer value" - IBXConst_SUseSpecificProcedures, "Generic ServiceStart not applicable: Use Specific Procedures to set configuration params" - IBXConst_SSQLMonitorAlreadyPresent, "SQL Monitor Instance is already present" - IBXConst_SCantPrintValue, "Cannot print value" - IBXConst_SEOFReached, "SEOFReached" - IBXConst_SEOFInComment, "EOF in comment detected" - IBXConst_SEOFInString, "EOF in string detected" - IBXConst_SParamNameExpected, "Parameter name expected" - IBXConst_SSuccess, "Successful execution" - IBXConst_SDelphiException, "DelphiException %s" - IBXConst_SNoOptionsSet, "No Install Options selected" - IBXConst_SNoDestinationDirectory, "DestinationDirectory is not set" - IBXConst_SNosourceDirectory, "SourceDirectory is not set" - IBXConst_SNoUninstallFile, "Uninstall File Name is not set" - IBXConst_SOptionNeedsClient, "%s component requires Client to function properly" - IBXConst_SOptionNeedsServer, "%s component requires Server to function properly" - IBXConst_SIndexFieldMissing, "Index Field Missing" - IBXConst_SInvalidCancellation, "Cannot Cancel events while processing" - IBXConst_SInvalidEvent, "Invalid Event" - IBXConst_SMaximumEvents, "Exceded Maximum Event limits" - IBXConst_SNoEventsRegistered, "No Events Registered" - IBXConst_SInvalidQueueing, "Invalid Queueing" - IBXConst_SInvalidRegistration, "Invalid Registration" - IBXConst_SInvalidBatchMove, "Invalid Batch Move" - IBXConst_SSQLDialectInvalid, "SQL Dialect Invalid" - IBXConst_SSPBConstantNotSupported, "SPB Constant Not supported" - IBXConst_SSPBConstantUnknown, "SPB Constant Unknown" - IBXConst_SServiceActive, "Cannot perform operation -- service is not attached" - IBXConst_SServiceInActive, "Cannot perform operation -- service is attached" - IBXConst_SServerNameMissing, "Server Name Missing" - IBXConst_SQueryParamsError, "Query Parameters missing or incorrect" - IBXConst_SStartParamsError, "start Parameters missing or incorrect" - IBXConst_SFieldUnsupportedType, "Unsupported Field Type" - IBXConst_SCircularDataLink, "Circular DataLink Reference" - IBXConst_SEmptySQLStatement, "Empty SQL Statement" - IBXConst_SIsASelectStatement, "use Open for a Select Statement" - IBXConst_SRequiredParamNotSet, "Required Param value not set" - IBXConst_SNoStoredProcName, "No Stored Procedure Name assigned" - IBXConst_SIsAExecuteProcedure, "use ExecProc for Procedure; use TQuery for Select procedures" - IBXConst_SUpdateFailed, "Update Failed" - IBXConst_SNotCachedUpdates, "CachedUpdates not enabled" - IBXConst_SNotLiveRequest, "Request is not live - cannot modify" - IBXConst_SNoProvider, "No Provider" - IBXConst_SNoRecordsAffected, "No Records Affected" - IBXConst_SNoTableName, "No Table Name assigned" - IBXConst_SCannotCreatePrimaryIndex, "Cannot Create Primary Index; are created automatically" - IBXConst_SCannotDropSystemIndex, "Cannot Drop System Index" - IBXConst_STableNameMismatch, "Table Name Mismatch" - IBXConst_SNotEditing, "Not in edit mode" - IBXConst_SCannotInsert, "Cannot insert into dataset. (No insert query)" - IBXConst_SCannotPost, "Cannot post. (No update/insert query)" - IBXConst_SCannotUpdate, "Cannot update. (No update query)" - IBXConst_SCannotDelete, "Cannot delete from dataset. (No delete query)" - IBXConst_SCannotRefresh, "Cannot refresh row. (No refresh query)" - IBXConst_SBufferNotSet, "Buffer not set" - IBXConst_SCircularReference, "Circular references not permitted" - IBXConst_SSQLParseError, "SQL Parse Error:\r\n\r\n%s" - IBXConst_SUserAbort, "User abort" - IBXConst_SDataSetUniDirectional, "Data set is uni-directional" - IBXConst_SCannotCreateSharedResource, "Cannot create shared resource. (Windows error %d)" - IBXConst_SWindowsAPIError, "Windows API error. (Windows error %d [$%.8x])" - IBXConst_SColumnListsDontMatch, "Column lists do not match" - IBXConst_SColumnTypesDontMatch, "Column types don't match. (From index: %d; To index: %d)" - IBXConst_SCantEndSharedTransaction, "Can't end a shared transaction unless it is forced and equal to the transaction's TimeoutAction" - IBXConst_SSQLOpen, "IBSQL Open" - IBXConst_SSQLClosed, "IBSQL Closed" - IBXConst_SDatasetOpen, "Dataset open" - IBXConst_SDatasetClosed, "Dataset closed" - IBXConst_SUnknownSQLDataType, "Unknown SQL Data type (%d)" - IBXConst_SInvalidColumnIndex, "Invalid column index (index exceeds permitted range)" - IBXConst_SInvalidParamColumnIndex, "Invalid parameter index (index exceeds permitted range)" - IBXConst_SInvalidDataConversion, "Invalid data conversion" - IBXConst_SColumnIsNotNullable, "Column cannot be set to null (%s)" - IBXConst_SBlobCannotBeRead, "Blob stream cannot be read" - IBXConst_SBlobCannotBeWritten, "Blob stream cannot be written" - IBXConst_SEmptyQuery, "Empty query" - IBXConst_SCannotOpenNonSQLSelect, "Cannot \"open\" a non-select statement. Use ExecQuery" - IBXConst_SNoFieldAccess, "No access to field \"%s\"" - IBXConst_SFieldReadOnly, "Field \"%s\" is read-only" - IBXConst_SFieldNotFound, "Field \"%s\" not found" - IBXConst_SDatabaseClosed, "Cannot perform operation -- DB is not open" - IBXConst_SDatabaseOpen, "Cannot perform operation -- DB is currently open" - IBXConst_SDatabaseNameMissing, "Database name is missing" - IBXConst_SNotInTransaction, "Transaction is not active" - IBXConst_SInTransaction, "Transaction is active" - IBXConst_STimeoutNegative, "Timeout values cannot be negative" - IBXConst_SNoDatabasesInTransaction, "No databases are listed in transaction component" - IBXConst_SUpdateWrongDB, "Updating wrong database" - IBXConst_SUpdateWrongTR, "Updating wrong transaction. Unique transaction expected in set" - IBXConst_SDatabaseNotAssigned, "Database not assigned" - IBXConst_STransactionNotAssigned, "Transaction not assigned" - IBXConst_SXSQLDAIndexOutOfRange, "XSQLDA index out of range" - IBXConst_SXSQLDANameDoesNotExist, "XSQLDA name does not exist (%s)" - IBXConst_SEOF, "End of file" - IBXConst_SBOF, "Beginning of file" - IBXConst_SInvalidStatementHandle, "Invalid statement handle" - uDARes_err_ExecuteSQLCommandNotAllowed, "ExecuteSQLCommand is not enabled for this server." - IBXConst_SUnknownError, "Unknown error" - IBXConst_SInterBaseMissing, "InterBase library gds32.dll not found in the path. Please install InterBase to use this functionality" - IBXConst_SInterBaseInstallMissing, "InterBase Install DLL ibinstall.dll not found in the path. Please install InterBase 6 to use this functionality" - IBXConst_SIB60feature, "%s is an InterBase 6 function. Please upgrade to InterBase 6 to use this functonality" - IBXConst_SNotSupported, "Unsupported feature" - IBXConst_SNotPermitted, "Not permitted" - IBXConst_SFileAccessError, "Temporary file access error" - IBXConst_SConnectionTimeout, "Database connection timed out" - IBXConst_SCannotSetDatabase, "Cannot set database" - IBXConst_SCannotSetTransaction, "Cannot set transaction" - IBXConst_SOperationCancelled, "Operation cancelled at user's request" - IBXConst_SDPBConstantNotSupported, "DPB Constant (isc_dpb_%s) is unsupported" - IBXConst_SDPBConstantUnknown, "DPB Constant (%d) is unknown" - IBXConst_STPBConstantNotSupported, "TPB Constant (isc_tpb_%s) is unsupported" - IBXConst_STPBConstantUnknown, "TPB Constant (%d) is unknown" - uDARes_err_UnknownDriver, "Unknown driver %s" - uDARes_err_UnknownParameter, "Unknown parameter %s" - uDARes_err_FieldIsNotBound, "Field is not bound" - uDARes_err_CannotFindField, "Cannot find field %s" - uDARes_err_LoadPackageFailed, "LoadPackage failed for file %s" - uDARes_err_InvalidDriverReference, "The driver in %s could not be loaded" - uDARes_err_CannotFindStatement, "Cannot find statement %s for connection %s" - uDARes_err_CannotFindDefaultItem, "Cannot find default %s" - uDARes_err_PoolIsNotEmpty, "Cannot perform this operation when connections are pooled" - uDARes_err_MaxPoolSizeReached, "Maximum pool size reached. Cannot create a new connection" - uDARes_err_LAMEDataset, "%s does not implement IProviderSupport or implements it incorrectly" - uDARes_err_DARDMInvalidSchema, "Schema must be assigned and must point to a ConnectionManager" - uDARes_err_DARDMUnassignedAdapter, "DataAdapter is not assigned" - uDARes_err_DARDMConnectionIsNotAssigned, "Connection is not assigned" - uDARes_err_DARDMCannotFindProxessorForDelta, "Cannot find a business processor for delta \"%s\"" - uDARes_err_NeedShareMem, "To use dynamically loaded drivers, you must build your application with ShareMem." - DBConsts_SRecordNotFound, "Record not found" - DBConsts_SBcdOverflow, "BCD overflow" - DBConsts_SInvalidBcdValue, "%s is not a valid BCD value" - DBConsts_SInvalidFormatType, "Invalid format type for BCD" - DBConsts_SCouldNotParseTimeStamp, "Could not parse SQL TimeStamp string" - DBConsts_SInvalidSqlTimeStamp, "Invalid SQL date/time values" - uDARes_err_ChangeLogAlreadyStarted, "StartChange has already been called; cannot log more than one change at a time." - uDARes_err_NotAttachedToDataTable, "Delta is not attached to a DataTable" - uDARes_err_DriverProcAlreadyRegistered, "DriverProc 0x%0.8x is already registered" - uDARes_err_DriverManagerAlreadyCreated, "An instance of a TDADriverManager was already initialized. Only one driver manager per module is allowed" - uDARes_err_DriverManagerNotAssigned, "Driver Manager is not assigned" - uDARes_err_FieldTypeNotSupported, "FieldType %s (%d) is not supported" - uDARes_err_InvalidDataset, "Invalid or NIL dataset" - uDARes_err_CannotFindItem, "Cannot find %s \"%s\" in collection of type %s" - uDARes_err_DriverAlreadyLoaded, "Driver %s is already loaded" - uDARes_err_InvalidDLL, "%s is not a valid Data Abstract driver" - DBConsts_SExprNotAgg, "Expression is not an aggregate expression" - DBConsts_SExprBadConst, "Constant is not correct type %s" - DBConsts_SExprNoAggFilter, "Aggregate expressions not allowed in filters" - DBConsts_SExprEmptyInList, "IN predicate list may not be empty" - DBConsts_SInvalidKeywordUse, "Invalid use of keyword" - DBConsts_STextFalse, "False" - DBConsts_STextTrue, "True" - DBConsts_SParameterNotFound, "Parameter '%s' not found" - DBConsts_SInvalidVersion, "Unable to load bind parameters" - DBConsts_SBadFieldType, "Field '%s' is of an unsupported type" - DBConsts_SAggActive, "Property may not be modified while aggregate is active" - DBConsts_SProviderSQLNotSupported, "SQL not supported: %s" - DBConsts_SProviderExecuteNotSupported, "Execute not supported: %s" - DBConsts_SExprNoAggOnCalcs, "Field '%s' is not the correct type of calculated field to be used in an aggregate, use an internalcalc" - DBConsts_SDataSetUnidirectional, "Operation not allowed on a unidirectional dataset" - DBConsts_SUnassignedVar, "Unassigned variant value" - DBConsts_SExprTermination, "Filter expression incorrectly terminated" - DBConsts_SExprNameError, "Unterminated field name" - DBConsts_SExprStringError, "Unterminated string constant" - DBConsts_SExprInvalidChar, "Invalid filter expression character: '%s'" - DBConsts_SExprNoLParen, "'(' expected but %s found" - DBConsts_SExprNoRParen, "')' expected but %s found" - DBConsts_SExprNoRParenOrComma, "')' or ',' expected but %s found" - DBConsts_SExprExpected, "Expression expected but %s found" - DBConsts_SExprBadField, "Field '%s' cannot be used in a filter expression" - DBConsts_SExprBadNullTest, "NULL only allowed with '=' and '<>'" - DBConsts_SExprRangeError, "Constant out of range" - DBConsts_SExprIncorrect, "Incorrectly formed filter expression" - DBConsts_SExprNothing, "nothing" - DBConsts_SExprTypeMis, "Type mismatch in expression" - DBConsts_SExprBadScope, "Operation cannot mix aggregate value with record-varying value" - DBConsts_SExprNoArith, "Arithmetic in filter expressions not supported" - DBConsts_SFieldIndexError, "Field index out of range" - DBConsts_SNoFieldIndexes, "No index currently active" - DBConsts_SNotIndexField, "Field '%s' is not indexed and cannot be modified" - DBConsts_SIndexFieldMissing, "Cannot access index field '%s'" - DBConsts_SNoIndexForFields, "No index for fields '%s'" - DBConsts_SIndexNotFound, "Index '%s' not found" - DBConsts_SCircularDataLink, "Circular datalinks are not allowed" - DBConsts_SLookupInfoError, "Lookup information for field '%s' is incomplete" - DBConsts_SDataSourceChange, "DataSource cannot be changed" - DBConsts_SNoNestedMasterSource, "Nested datasets cannot have a MasterSource" - DBConsts_SDataSetOpen, "Cannot perform this operation on an open dataset" - DBConsts_SNotEditing, "Dataset not in edit or insert mode" - DBConsts_SDataSetClosed, "Cannot perform this operation on a closed dataset" - DBConsts_SDataSetEmpty, "Cannot perform this operation on an empty dataset" - DBConsts_SDataSetReadOnly, "Cannot modify a read-only dataset" - DBConsts_SNestedDataSetClass, "Nested dataset must inherit from %s" - DBConsts_SFieldNotFound, "Field '%s' not found" - DBConsts_SFieldAccessError, "Cannot access field '%s' as type %s" - DBConsts_SFieldValueError, "Invalid value for field '%s'" - DBConsts_SFieldRangeError, "%g is not a valid value for field '%s'. The allowed range is %g to %g" - DBConsts_SBcdFieldRangeError, "%s is not a valid value for field '%s'. The allowed range is %s to %s" - DBConsts_SInvalidIntegerValue, "'%s' is not a valid integer value for field '%s'" - DBConsts_SInvalidBoolValue, "'%s' is not a valid boolean value for field '%s'" - DBConsts_SInvalidFloatValue, "'%s' is not a valid floating point value for field '%s'" - DBConsts_SFieldTypeMismatch, "Type mismatch for field '%s', expecting: %s actual: %s" - DBConsts_SFieldSizeMismatch, "Size mismatch for field '%s', expecting: %d actual: %d" - DBConsts_SInvalidVarByteArray, "Invalid variant type or size for field '%s'" - DBConsts_SFieldOutOfRange, "Value of field '%s' is out of range" - DBConsts_SFieldRequired, "Field '%s' must have a value" - DBConsts_SDataSetMissing, "Field '%s' has no dataset" - DBConsts_SInvalidCalcType, "Field '%s' cannot be a calculated or lookup field" - DBConsts_SFieldReadOnly, "Field '%s' cannot be modified" - JvResources_RsClInactiveCaptionText, "Inactive window title bar text" - JvResources_RsClBtnHighlight, "Button highlight" - JvResources_RsCl3DDkShadow, "Dark shadow 3D elements" - JvResources_RsCl3DLight, "Highlight 3D elements" - JvResources_RsClInfoText, "Tooltip text" - JvResources_RsClInfoBk, "Tooltip background" - JvResources_RsGradientActiveCaption, "Gradient Active Caption" - JvResources_RsGradientInactiveCaption, "Gradient Inactive Caption" - JvResources_RsHotLight, "Hot Light" - JvResources_RsMenuBar, "Menu Bar" - JvResources_RsMenuHighlight, "Menu Highlight" - DBConsts_SInvalidFieldSize, "Invalid field size" - DBConsts_SInvalidFieldKind, "Invalid FieldKind" - DBConsts_SUnknownFieldType, "Field '%s' is of an unknown type" - DBConsts_SFieldNameMissing, "Field name missing" - DBConsts_SDuplicateFieldName, "Duplicate field name '%s'" - JvResources_RsClInactiveCaption, "Inactive window title bar" - JvResources_RsClMenu, "Menu background" - JvResources_RsClWindow, "Window background" - JvResources_RsClWindowFrame, "Window frame" - JvResources_RsClMenuText, "Menu text" - JvResources_RsClWindowText, "Window text" - JvResources_RsClCaptionText, "Active window title bar text" - JvResources_RsClActiveBorder, "Active window border" - JvResources_RsClInactiveBorder, "Inactive window border" - JvResources_RsClAppWorkSpace, "Application workspace" - JvResources_RsClHighlight, "Selection background" - JvResources_RsClHighlightText, "Selection text" - JvResources_RsClBtnFace, "Button face" - JvResources_RsClBtnShadow, "Button shadow" - JvResources_RsClGrayText, "Dimmed text" - JvResources_RsClBtnText, "Button text" - JvResources_RsClPink, "Pink" - JvResources_RsClGold, "Gold" - JvResources_RsClBrightGreen, "Bright Green" - JvResources_RsClTurquoise, "Turquoise" - JvResources_RsClPlum, "Plum" - JvResources_RsClGray25, "Gray 25%" - JvResources_RsClRose, "Rose" - JvResources_RsClTan, "Tan" - JvResources_RsClLightYellow, "Light Yellow" - JvResources_RsClLightGreen, "Light Green" - JvResources_RsClLightTurquoise, "Light Turquoise" - JvResources_RsClPaleBlue, "Pale Blue" - JvResources_RsClLavender, "Lavender" - JvResources_RsClScrollBar, "Scrollbar" - JvResources_RsClBackground, "Desktop background" - JvResources_RsClActiveCaption, "Active window title bar" - JvResources_RsClOliveGreen, "Olive Green" - JvResources_RsClDarkGreen, "Dark Green" - JvResources_RsClDarkTeal, "Dark Teal" - JvResources_RsClDarkBlue, "Dark Blue" - JvResources_RsClIndigo, "Indigo" - JvResources_RsClGray80, "Gray 80%" - JvResources_RsClDarkRed, "Dark Red" - JvResources_RsClOrange, "Orange" - JvResources_RsClDarkYellow, "Dark Yellow" - JvResources_RsClBlueGray, "Blue Gray" - JvResources_RsClGray50, "Gray 50%" - JvResources_RsClLightOrange, "Light Orange" - JvResources_RsClSeaGreen, "Sea Green" - JvResources_RsClLightBlue, "Light Blue" - JvResources_RsClViolet, "Violet" - JvResources_RsClGray40, "Gray 40%" - JvResources_RsClPurple, "Purple" - JvResources_RsClTeal, "Teal" - JvResources_RsClGray, "Gray" - JvResources_RsClSilver, "Silver" - JvResources_RsClRed, "Red" - JvResources_RsClLime, "Lime" - JvResources_RsClYellow, "Yellow" - JvResources_RsClBlue, "Blue" - JvResources_RsClFuchsia, "Fuchsia" - JvResources_RsClAqua, "Aqua" - JvResources_RsClWhite, "White" - JvResources_RsClMoneyGreen, "Money green" - JvResources_RsClSkyBlue, "Sky blue" - JvResources_RsClCream, "Cream" - JvResources_RsClMedGray, "Medium gray" - JvResources_RsClBrown, "Brown" - JvResources_RsGIFImage, "CompuServe GIF Image" - JvResources_RsEChangeGIFSize, "Cannot change the Size of a GIF image" - JvResources_RsENoGIFData, "No GIF Data to write" - JvResources_RsEUnrecognizedGIFExt, "Unrecognized extension block: %.2x" - JvResources_RsEWrongGIFColors, "Wrong number of colors; must be a power of 2" - JvResources_RsEBadGIFCodeSize, "GIF code size not in range 2 to 9" - JvResources_RsEGIFDecodeError, "GIF encoded data is corrupt" - JvResources_RsEGIFEncodeError, "GIF image encoding error" - JvResources_RsEGIFVersion, "Unknown GIF version" - JvResources_RsEPixelFormatNotImplemented, "BitmapToMemoryStream: pixel format not implemented" - JvResources_RsEBitCountNotImplemented, "BitmapToMemoryStream: bit count not implemented" - JvResources_RsClBlack, "Black" - JvResources_RsClMaroon, "Maroon" - JvResources_RsClGreen, "Green" - JvResources_RsClOlive, "Olive green" - JvResources_RsClNavy, "Navy blue" - JclResources_RsIntelCacheDescr87, "2nd-level cache: 1 MByte, 8-way set associative, 64 byte line size" - JclResources_RsIntelCacheDescrB0, "Instruction TLB: 4 KByte pages, 4-way set associative, 128 entries" - JclResources_RsIntelCacheDescrB3, "Data TLB: 4 KByte pages, 4-way set associative, 128 entries" - JclResources_RsIntelCacheDescrB4, "Data TLB1: 4 KByte pages, 4-way set associative, 256 entries" - JclResources_RsIntelCacheDescrF0, "64-Byte Prefetching" - JclResources_RsIntelCacheDescrF1, "128-Byte Prefetching" - JvResources_RsAniExtension, "ani" - JvResources_RsAniFilterName, "ANI Image" - JvResources_RsRootValueReplaceFmt, "The Default Root Value \"%0:s\" has been replaced with \"%1:s\".\r\nPlease change the value in the FileVersionInfo Project Properties." - JvResources_RsEUnableToCreateKey, "Unable to create key '%s'" - JvResources_RsEEnumeratingRegistry, "Error enumerating registry" - JvResources_RsEInvalidType, "Invalid type" - JvResources_RsEUnknownBaseType, "Unknown base type for given set" - JvResources_RsEInvalidPath, "Invalid path" - JvResources_RsENotAUniqueRootPath, "'%s' is not a unique root path" - JvResources_RsECircularReferenceOfStorages, "Circular reference of storages" - JclResources_RsIntelCacheDescr68, "1st-level data cache: 32 KBytes, 4-way set associative, 64 byte line size" - JclResources_RsIntelCacheDescr70, "Trace cache: 12 K-Ops, 8-way set associative" - JclResources_RsIntelCacheDescr71, "Trace cache: 16 K-Ops, 8-way set associative" - JclResources_RsIntelCacheDescr72, "Trace cache: 32 K-Ops, 8-way set associative" - JclResources_RsIntelCacheDescr78, "2nd-level cache: 1 MBytes, 4-way set associative, 64 bytes line size" - JclResources_RsIntelCacheDescr79, "2nd-level cache: 128 KBytes, 8-way set associative, 64 bytes line size, 2 lines per sector" - JclResources_RsIntelCacheDescr7A, "2nd-level cache: 256 KBytes, 8-way set associative, 64 bytes line size, 2 lines per sector" - JclResources_RsIntelCacheDescr7B, "2nd-level cache: 512 KBytes, 8-way set associative, 64 bytes line size, 2 lines per sector" - JclResources_RsIntelCacheDescr7C, "2nd-level cache: 1 MBytes, 8-way set associative, 64 bytes line size, 2 lines per sector" - JclResources_RsIntelCacheDescr7D, "2nd-level cache: 2 MBytes, 8-way set associative, 64 byte line size" - JclResources_RsIntelCacheDescr7F, "2nd-level cache: 512 KBytes, 2-way set associative, 64 byte line size" - JclResources_RsIntelCacheDescr82, "2nd-level cache: 256 KBytes, 8-way associative, 32 byte line size" - JclResources_RsIntelCacheDescr83, "2nd-level cache: 512 KBytes, 8-way associative, 32 byte line size" - JclResources_RsIntelCacheDescr84, "2nd-level cache: 1 MBytes, 8-way associative, 32 byte line size" - JclResources_RsIntelCacheDescr85, "2nd-level cache: 2 MBytes, 8-way associative, 32 byte line size" - JclResources_RsIntelCacheDescr86, "2nd-level cache: 512 KByte, 4-way set associative, 64 byte line size" - JclResources_RsIntelCacheDescr44, "2nd-level cache: 1 MBytes, 4-way set associative, 32 byte line size" - JclResources_RsIntelCacheDescr45, "2nd-level cache: 2 MBytes, 4-way set associative, 32 byte line size" - JclResources_RsIntelCacheDescr46, "3rd-level cache: 4 MBytes, 4-way set associative, 64 byte line size" - JclResources_RsIntelCacheDescr47, "3rd-level cache: 8 MBytes, 4-way set associative, 64 byte line size" - JclResources_RsIntelCacheDescr49, "2nd-level cache: 4 MBytes, 16-way set associative, 64 byte line size" - JclResources_RsIntelCacheDescr50, "Instruction TLB: 4 KByte and 2 MByte or 4 MByte pages, 64 Entries" - JclResources_RsIntelCacheDescr51, "Instruction TLB: 4 KByte and 2 MByte or 4 MByte pages, 128 Entries" - JclResources_RsIntelCacheDescr52, "Instruction TLB: 4 KByte and 2 MByte or 4 MByte pages, 256 Entries" - JclResources_RsIntelCacheDescr56, "Data TLB0: 4 MByte pages, 4-way set associative, 16 entries" - JclResources_RsIntelCacheDescr57, "Data TLB0: 4 KByte pages, 4-way associative, 16 entries" - JclResources_RsIntelCacheDescr5B, "Data TLB: 4 KByte and 4 MByte pages, 64 Entries" - JclResources_RsIntelCacheDescr5C, "Data TLB: 4 KByte and 4 MByte pages, 128 Entries" - JclResources_RsIntelCacheDescr5D, "Data TLB: 4 KByte and 4 MByte pages, 256 Entries" - JclResources_RsIntelCacheDescr60, "1st-level data cache: 16 KByte, 8-way set associative, 64 byte line size" - JclResources_RsIntelCacheDescr66, "1st-level data cache: 8 KBytes, 4-way set associative, 64 byte line size" - JclResources_RsIntelCacheDescr67, "1st-level data cache: 16 KBytes, 4-way set associative, 64 byte line size" - JclResources_RsIntelCacheDescr05, "Data TLB1: 4 MByte pages, 4-way set associative, 32 entries" - JclResources_RsIntelCacheDescr06, "1st level instruction cache: 8 KBytes, 4-way set associative, 32 byte line size" - JclResources_RsIntelCacheDescr08, "1st level instruction cache: 16 KBytes, 4-way set associative, 32 byte line size" - JclResources_RsIntelCacheDescr0A, "1st level data cache: 8 KBytes, 2-way set associative, 32 byte line size" - JclResources_RsIntelCacheDescr0B, "Instruction TLB: 4 MByte pages, 4-way set associative, 4 entries" - JclResources_RsIntelCacheDescr0C, "1st level data cache: 16 KBytes, 4-way set associative, 32 byte line size" - JclResources_RsIntelCacheDescr22, "3rd level cache: 512 KBytes, 4-way set associative, 64 byte line size, 2 lines per sector" - JclResources_RsIntelCacheDescr23, "3rd level cache: 1 MBytes, 8-way set associative, 64 byte line size, 2 lines per sector" - JclResources_RsIntelCacheDescr25, "3rd level cache: 2 MBytes, 8-way set associative, 64 byte line size, 2 lines per sector" - JclResources_RsIntelCacheDescr29, "3rd level cache: 4 MBytes, 8-way set associative, 64 byte line size, 2 lines per sector" - JclResources_RsIntelCacheDescr2C, "1st level data cache: 32 KBytes, 8-way set associative, 64 byte line size" - JclResources_RsIntelCacheDescr30, "1st level instruction cache: 32 KBytes, 8-way set associative, 64 byte line size" - JclResources_RsIntelCacheDescr40, "No 2nd-level cache or, if processor contains a valid 2nd-level cache, no 3rd-level cache" - JclResources_RsIntelCacheDescr41, "2nd-level cache: 128 KBytes, 4-way set associative, 32 byte line size" - JclResources_RsIntelCacheDescr42, "2nd-level cache: 256 KBytes, 4-way set associative, 32 byte line size" - JclResources_RsIntelCacheDescr43, "2nd-level cache: 512 KBytes, 4-way set associative, 32 byte line size" - JclResources_RsRTTIFloatType, "Float type: " - JclResources_RsRTTIMethodKind, "Method kind: " - JclResources_RsRTTIParamCount, "Parameter count: " - JclResources_RsRTTIReturnType, "Return type: " - JclResources_RsRTTIMaxLen, "Max length: " - JclResources_RsRTTIElSize, "Element size: " - JclResources_RsRTTIElType, "Element type: " - JclResources_RsRTTIElNeedCleanup, "Elements need clean up: " - JclResources_RsRTTIVarType, "Variant type: " - JclResources_RsDeclarationFormat, "// Declaration for '%s' not supported." - JclResources_RsSynchCreateEvent, "Failed to create event" - JclResources_RsIntelCacheDescr00, "Null descriptor" - JclResources_RsIntelCacheDescr01, "Instruction TLB: 4 KByte pages, 4-way set associative, 32 entries" - JclResources_RsIntelCacheDescr02, "Instruction TLB: 4 MByte pages, 4-way set associative, 2 entries" - JclResources_RsIntelCacheDescr03, "Data TLB: 4 KByte pages, 4-way set associative, 64 entries" - JclResources_RsIntelCacheDescr04, "Data TLB: 4 MByte pages, 4-way set associative, 8 entries" - JclResources_RsRTTIIndex, "index" - JclResources_RsRTTIDefault, "default" - JclResources_RsRTTIName, "Name: " - JclResources_RsRTTIType, "Type: " - JclResources_RsRTTIFlags, "Flags: " - JclResources_RsRTTIGUID, "GUID: " - JclResources_RsRTTITypeKind, "Type kind: " - JclResources_RsRTTIOrdinalType, "Ordinal type: " - JclResources_RsRTTIMinValue, "Min value: " - JclResources_RsRTTIMaxValue, "Max value: " - JclResources_RsRTTINameList, "Names: " - JclResources_RsRTTIClassName, "Class name: " - JclResources_RsRTTIParent, "Parent: " - JclResources_RsRTTIPropCount, "Property count: " - JclResources_RsRTTIUnitName, "Unit name: " - JclResources_RsRTTIBasedOn, "Based on: " - JclResources_RsRTTIUnknownIdentifier, "Unknown identifier '%s'." - JclResources_RsRTTIVar, "var " - JclResources_RsRTTIConst, "const " - JclResources_RsRTTIArrayOf, "array of " - JclResources_RsRTTIOut, "out " - JclResources_RsRTTIOrdinal, "ordinal=" - JclResources_RsRTTITrue, "True" - JclResources_RsRTTIFalse, "False" - JclResources_RsRTTITypeError, "???" - JclResources_RsRTTITypeInfoAt, "Type info: %p" - JclResources_RsRTTIPropRead, "read" - JclResources_RsRTTIPropWrite, "write" - JclResources_RsRTTIPropStored, "stored" - JclResources_RsRTTIField, "field" - JclResources_RsRTTIStaticMethod, "static method" - JclResources_RsRTTIVirtualMethod, "virtual method" - JclResources_RsInconsistentPath, "\"%s\" does not match RootKey" - JclResources_RsHKCRLong, "HKEY_CLASSES_ROOT" - JclResources_RsHKCULong, "HKEY_CURRENT_USER" - JclResources_RsHKLMLong, "HKEY_LOCAL_MACHINE" - JclResources_RsHKUSLong, "HKEY_USERS" - JclResources_RsHKPDLong, "HKEY_PERFORMANCE_DATA" - JclResources_RsHKCCLong, "HKEY_CURRENT_CONFIG" - JclResources_RsHKDDLong, "HKEY_DYN_DATA" - JclResources_RsHKCRShort, "HKCR" - JclResources_RsHKCUShort, "HKCU" - JclResources_RsHKLMShort, "HKLM" - JclResources_RsHKUSShort, "HKUS" - JclResources_RsHKPDShort, "HKPD" - JclResources_RsHKCCShort, "HKCC" - JclResources_RsHKDDShort, "HKDD" - JclResources_RsRTTIValueOutOfRange, "Value out of range (%s)." - ComStrs_sRichEditSaveFail, "Failed to Save Stream" - ComStrs_sUDAssociated, "%s is already associated with %s" - ComStrs_sPageIndexError, "%d is an invalid PageIndex value. PageIndex must be between 0 and %d" - JConsts_sChangeJPGSize, "Cannot change the size of a JPEG image" - JConsts_sJPEGError, "JPEG error #%d" - JConsts_sJPEGImageFile, "JPEG Image File" - JclResources_RsWin32Prefix, "Win32: %s (%u)" - JclResources_RsFileUtilsNoVersionInfo, "File contains no version information" - JclResources_RsCreateFileMapping, "Failed to create FileMapping" - JclResources_RsCreateFileMappingView, "Failed to create FileMappingView" - JclResources_RsViewNeedsMapping, "FileMap argument of TJclFileMappingView constructor cannot be nil" - JclResources_RsFailedToObtainSize, "Failed to obtain size of file" - JclResources_RsUnableToOpenKeyRead, "Unable to open key \"%s\\%s\" for read" - JclResources_RsUnableToOpenKeyWrite, "Unable to open key \"%s\\%s\" for write" - JclResources_RsUnableToAccessValue, "Unable to open key \"%s\\%s\" and access value \"%s\"" - JclResources_RsWrongDataType, "\"%s\\%s\\%s\" is of wrong kind or size" - IdResourceStrings_RSSocksServerCommandError, "Command not supported." - IdResourceStrings_RSSocksServerAddressError, "Address type not supported." - IdResourceStrings_RSUnevenSizeInDecodeStream, "Uneven size in DecodeToStream." - IdResourceStrings_RSUnevenSizeInEncodeStream, "Uneven size in Encode." - IdResourceStrings_RSThreadTerminateAndWaitFor, "Cannot call TerminateAndWaitFor on FreeAndTerminate threads" - ComStrs_sTabFailClear, "Failed to clear tab control" - ComStrs_sTabFailDelete, "Failed to delete tab at index %d" - ComStrs_sTabFailRetrieve, "Failed to retrieve tab at index %d" - ComStrs_sTabFailGetObject, "Failed to get object at index %d" - ComStrs_sTabFailSet, "Failed to set tab \"%s\" at index %d" - ComStrs_sTabFailSetObject, "Failed to set object at index %d" - ComStrs_sTabMustBeMultiLine, "MultiLine must be True when TabPosition is tpLeft or tpRight" - ComStrs_sInvalidIndex, "Invalid index" - ComStrs_sInsertError, "Unable to insert an item" - ComStrs_sRichEditInsertError, "RichEdit line insertion error" - ComStrs_sRichEditLoadFail, "Failed to Load Stream" - IdResourceStrings_RSStackEHOSTUNREACH, "No route to host." - IdResourceStrings_RSStackENOTEMPTY, "Directory not empty" - IdResourceStrings_RSStackHOST_NOT_FOUND, "Host not found." - IdResourceStrings_RSSocksRequestFailed, "Request rejected or failed." - IdResourceStrings_RSSocksRequestServerFailed, "Request rejected because SOCKS server cannot connect." - IdResourceStrings_RSSocksRequestIdentFailed, "Request rejected because the client program and identd report different user-ids." - IdResourceStrings_RSSocksUnknownError, "Unknown socks error." - IdResourceStrings_RSSocksServerRespondError, "Socks server did not respond." - IdResourceStrings_RSSocksAuthMethodError, "Invalid socks authentication method." - IdResourceStrings_RSSocksAuthError, "Authentication error to socks server." - IdResourceStrings_RSSocksServerGeneralError, "General SOCKS server failure." - IdResourceStrings_RSSocksServerPermissionError, "Connection not allowed by ruleset." - IdResourceStrings_RSSocksServerNetUnreachableError, "Network unreachable." - IdResourceStrings_RSSocksServerHostUnreachableError, "Host unreachable." - IdResourceStrings_RSSocksServerConnectionRefusedError, "Connection refused." - IdResourceStrings_RSSocksServerTTLExpiredError, "TTL expired." - IdResourceStrings_RSStackEADDRNOTAVAIL, "Cannot assign requested address." - IdResourceStrings_RSStackENETDOWN, "Network is down." - IdResourceStrings_RSStackENETUNREACH, "Network is unreachable." - IdResourceStrings_RSStackENETRESET, "Net dropped connection or reset." - IdResourceStrings_RSStackECONNABORTED, "Software caused connection abort." - IdResourceStrings_RSStackECONNRESET, "Connection reset by peer." - IdResourceStrings_RSStackENOBUFS, "No buffer space available." - IdResourceStrings_RSStackEISCONN, "Socket is already connected." - IdResourceStrings_RSStackENOTCONN, "Socket is not connected." - IdResourceStrings_RSStackESHUTDOWN, "Cannot send or receive after socket is closed." - IdResourceStrings_RSStackETOOMANYREFS, "Too many references, cannot splice." - IdResourceStrings_RSStackETIMEDOUT, "Connection timed out." - IdResourceStrings_RSStackECONNREFUSED, "Connection refused." - IdResourceStrings_RSStackELOOP, "Too many levels of symbolic links." - IdResourceStrings_RSStackENAMETOOLONG, "File name too long." - IdResourceStrings_RSStackEHOSTDOWN, "Host is down." - IdResourceStrings_RSStackEINVAL, "Invalid argument." - IdResourceStrings_RSStackEMFILE, "Too many open files." - IdResourceStrings_RSStackEWOULDBLOCK, "Operation would block. " - IdResourceStrings_RSStackEINPROGRESS, "Operation now in progress." - IdResourceStrings_RSStackEALREADY, "Operation already in progress." - IdResourceStrings_RSStackENOTSOCK, "Socket operation on non-socket." - IdResourceStrings_RSStackEDESTADDRREQ, "Destination address required." - IdResourceStrings_RSStackEMSGSIZE, "Message too long." - IdResourceStrings_RSStackEPROTOTYPE, "Protocol wrong type for socket." - IdResourceStrings_RSStackENOPROTOOPT, "Bad protocol option." - IdResourceStrings_RSStackEPROTONOSUPPORT, "Protocol not supported." - IdResourceStrings_RSStackESOCKTNOSUPPORT, "Socket type not supported." - IdResourceStrings_RSStackEOPNOTSUPP, "Operation not supported on socket." - IdResourceStrings_RSStackEPFNOSUPPORT, "Protocol family not supported." - IdResourceStrings_RSStackEAFNOSUPPORT, "Address family not supported by protocol family." - IdResourceStrings_RSStackEADDRINUSE, "Address already in use." - IdResourceStrings_RSHTTPServiceUnavailable, "Service Unavailable" - IdResourceStrings_RSHTTPGatewayTimeout, "Gateway timeout" - IdResourceStrings_RSHTTPHTTPVersionNotSupported, "HTTP version not supported" - IdResourceStrings_RSHTTPUnknownResponseCode, "Unknown Response Code" - IdResourceStrings_RSHTTPHeaderAlreadyWritten, "Header has already been written." - IdResourceStrings_RSHTTPErrorParsingCommand, "Error in parsing command." - IdResourceStrings_RSHTTPUnsupportedAuthorisationScheme, "Unsupported authorization scheme." - IdResourceStrings_RSHTTPCannotSwitchSessionStateWhenActive, "Cannot change session state when the server is active." - IdResourceStrings_RSHTTPAuthAlreadyRegistered, "This authentication method is already registered with class name %s." - IdResourceStrings_RSInvalidServiceName, "%s is not a valid service." - IdResourceStrings_RSStackError, "Socket Error # %d\r\n%s" - IdResourceStrings_RSStackInvalidIP, "%s is not a valid IP address." - IdResourceStrings_RSStackEINTR, "Interrupted system call." - IdResourceStrings_RSStackEBADF, "Bad file number." - IdResourceStrings_RSStackEACCES, "Access denied." - IdResourceStrings_RSStackEFAULT, "Bad address." - IdResourceStrings_RSHTTPForbidden, "Forbidden" - IdResourceStrings_RSHTTPNotFound, "Not Found" - IdResourceStrings_RSHTTPMethodeNotallowed, "Method not allowed" - IdResourceStrings_RSHTTPNotAcceptable, "Not Acceptable" - IdResourceStrings_RSHTTPProxyAuthenticationRequired, "Proxy Authentication Required" - IdResourceStrings_RSHTTPRequestTimeout, "Request Timeout" - IdResourceStrings_RSHTTPConflict, "Conflict" - IdResourceStrings_RSHTTPGone, "Gone" - IdResourceStrings_RSHTTPLengthRequired, "Length Required" - IdResourceStrings_RSHTTPPreconditionFailed, "Precondition Failed" - IdResourceStrings_RSHTTPRequestEntityToLong, "Request Entity To Long" - IdResourceStrings_RSHTTPRequestURITooLong, "Request-URI Too Long. 256 Chars max" - IdResourceStrings_RSHTTPUnsupportedMediaType, "Unsupported Media Type" - IdResourceStrings_RSHTTPInternalServerError, "Internal Server Error" - IdResourceStrings_RSHTTPNotImplemented, "Not Implemented" - IdResourceStrings_RSHTTPBadGateway, "Bad Gateway" - IdResourceStrings_RSConnectTimeout, "Connect timed out." - IdResourceStrings_RSHTTPContinue, "Continue" - IdResourceStrings_RSHTTPOK, "OK" - IdResourceStrings_RSHTTPCreated, "Created" - IdResourceStrings_RSHTTPAccepted, "Accepted" - IdResourceStrings_RSHTTPNonAuthoritativeInformation, "Non-authoritative Information" - IdResourceStrings_RSHTTPNoContent, "No Content" - IdResourceStrings_RSHTTPResetContent, "Reset Content" - IdResourceStrings_RSHTTPPartialContent, "Partial Content" - IdResourceStrings_RSHTTPMovedPermanently, "Moved Permanently" - IdResourceStrings_RSHTTPMovedTemporarily, "Moved Temporarily" - IdResourceStrings_RSHTTPSeeOther, "See Other" - IdResourceStrings_RSHTTPNotModified, "Not Modified" - IdResourceStrings_RSHTTPUseProxy, "Use Proxy" - IdResourceStrings_RSHTTPBadRequest, "Bad Request" - IdResourceStrings_RSHTTPUnauthorized, "Unauthorized" - IdResourceStrings_RSCanNotBindRange, "Can not bind in port range (%d - %d)" - IdResourceStrings_RSInvalidPortRange, "Invalid Port Range (%d - %d)" - IdResourceStrings_RSReadTimeout, "Read Timeout" - IdResourceStrings_RSReadLnMaxLineLengthExceeded, "Max line length exceeded." - IdResourceStrings_RSNoCommandHandlerFound, "No command handler found." - IdResourceStrings_RSWS2CallError, "Error on call Winsock2 library function %s" - IdResourceStrings_RSWS2LoadError, "Error on loading Winsock2 library (%s)" - IdResourceStrings_RSMIMEExtensionEmpty, "Extension is empty" - IdResourceStrings_RSMIMEMIMETypeEmpty, "Mimetype is empty" - IdResourceStrings_RSMIMEMIMEExtAlreadyExists, "Extension already exits" - IdResourceStrings_RSStatusResolving, "Resolving hostname %s." - IdResourceStrings_RSStatusConnecting, "Connecting to %s." - IdResourceStrings_RSStatusConnected, "Connected." - IdResourceStrings_RSStatusDisconnecting, "Disconnecting." - IdResourceStrings_RSStatusDisconnected, "Disconnected." - IdResourceStrings_RSStatusText, "%s" - ComConst_STooManyParams, "Dispatch methods do not support more than 64 parameters" - IdResourceStrings_RSCannotAllocateSocket, "Cannot allocate socket." - IdResourceStrings_RSConnectionClosedGracefully, "Connection Closed Gracefully." - IdResourceStrings_RSCouldNotBindSocket, "Could not bind socket. Address and port are already in use." - IdResourceStrings_RSFailedTimeZoneInfo, "Failed attempting to retrieve time zone information." - IdResourceStrings_RSNotEnoughDataInBuffer, "Not enough data in buffer." - IdResourceStrings_RSWinsockInitializationError, "Winsock Initialization Error." - IdResourceStrings_RSSetSizeExceeded, "Set Size Exceeded." - IdResourceStrings_RSThreadClassNotSpecified, "Thread Class Not Specified." - IdResourceStrings_RSFileNotFound, "File \"%s\" not found" - IdResourceStrings_RSOnlyOneAntiFreeze, "Only one TIdAntiFreeze can exist per application." - IdResourceStrings_RSNotConnected, "Not Connected" - IdResourceStrings_RSObjectTypeNotSupported, "Object type not supported." - IdResourceStrings_RSTerminateThreadTimeout, "Terminate Thread Timeout" - IdResourceStrings_RSNoExecuteSpecified, "No execute handler found." - IdResourceStrings_RSIdNoDataToRead, "No data to read." - uRORes_err_UnexpectedClassInStream, "Unexpected class found in stream; class \"%s\" does not descend from \"%s\"." - uRORes_err_SessionNotFound, "Session %s could not be found" - uRORes_err_ChannelDoesntSupportIROMetadataReader, "Channel does not support IROMetadataReader" - uRORes_err_TooManySessions, "Too many sessions. Try again in %d minute(s)" - uRORes_err_DOMElementIsNIL, "DOMElement is NIL" - uRORes_err_CannotLoadXMLDocument, "Cannot load XML document.\rReason: %s\rLine: %d\rPosition: %d" - uRORes_err_ErrorCreatingMsXmlDoc, "Error creating MSXML Document class\r\r%s: %s" - uRORes_err_NoXMLParsersAvailable, "MSXML is not installed" - uRORes_err_IDispatchMarshalingNotSupported, "Marshaling of IDispatch (%d) type variants is not supported." - uRORes_err_UnsupportedVariantType, "Unsupported variant type \"%d\"" - uRORes_err_VariantIsNotArray, "Variant must be Array, but is %d" - uRORes_err_InvalidVarArrayDimCount, "Variant Array DimCount must be 1 but is %d" - uRORes_err_MessageNotAssigned, "Message is NIL" - ComConst_SOleError, "OLE error %.8x" - ComConst_SNoMethod, "Method '%s' not supported by automation object" - ComConst_SVarNotObject, "Variant does not reference an automation object" - uRORes_err_UnspecifiedMessage, "The message does not have a name" - uRORes_err_UnknownMethod, "Unknown method %s for interface %s" - uRORes_err_ClassFactoryDidNotReturnInstance, "Class factory did not return an instance of \"%s\"" - uRORes_err_TypeNotSupported, "Type \"%s\" not supported" - uRORes_err_ClassFactoryNotFound, "Class factory for interface %s not found" - uRORes_err_IROMessageNotSupported, "Class \"%s\" does not support IROMessage" - uRORes_err_ClassAlreadyRegistered, "Class \"%s\" is already registered" - uRORes_err_UnknownProxyInterface, "Unknown proxy interface \"%s\"" - uRORes_err_DispatcherAlreadyAssigned, "Dispatcher for %s already assigned" - uRORes_err_CannotFindMessageDispatcher, "Cannot find message dispatcher. Maybe there is no message component configured for for the requested path?" - uRORes_err_ServerOnlySupportsOneDispatcher, "%s servers only support one dispatcher" - uRORes_err_UnhandledException, "Unhandled exception" - uRORes_err_ChannelBusy, "Channel is busy. Try again later." - uRORes_err_ArrayIndexOutOfBounds, "Array index out of bounds (%d)." - uRORes_err_InvalidHeader, "Invalid binary header. Either incompatible or not a binary message." - uRORes_err_UnknownClassInStream, "Unknown class \"%s\" found in stream." - uRORes_err_UnexpectedEndOfStream, "Unexpected end of stream." - uRORes_err_RodlDuplicateName, "Duplicate name." - uRORes_err_RodlNoDataTypeSpecified, "No data type specified." - uRORes_err_RodlNoEnumValues, "Enum does not contain any values." - uRORes_err_RodlNoStructElementsDefined, "Struct does not contain any elements." - uRORes_err_RodlNoOperationsDefined, "Service interface does not contain any elements." - uRORes_err_RodlUsedFileDoesNotExist, "The referenced RODL file \"%s\" could not be found." - uRORes_err_RodlInvalidDataType, "Invalid or undefined data type \"%s\"." - uRORes_err_RodlStructCannotBeNested, "Structs cannot recursively contain themselves." - uRORes_err_RodlInvalidAncestorType, "Invalid or undefined ancestor type \"%s\"." - uRORes_str_ExceptionOnServer, "An exception of type %s was raised on the server: %s" - uRORes_str_ExceptionReraisedFromServer, "An exception was raised on the server: %s" - uRORes_err_AssignError, "Cannot assign a \"%s\" to a \"%s\"." - uRORes_err_InvalidRequestStream, "Invalid request stream (%d bytes)" - uRORes_err_NILMessage, "Message is NIL" - uRORes_err_UnspecifiedInterface, "The message does not have an interface name" - uRODECConst_sInvalidStringFormat, "Input is not an valid %s Format." - uRODECConst_sInvalidFormatString, "Input can not be convert to %s Format." - uRODECConst_sFMT_COPY, "copy Input to Output" - uRODECConst_sFMT_HEX, "Hexadecimal" - uRODECConst_sFMT_HEXL, "Hexadecimal lowercase" - uRODECConst_sFMT_MIME64, "MIME Base 64" - uRODECConst_sFMT_UU, "UU Coding" - uRODECConst_sFMT_XX, "XX Coding" - uRODECConst_sInvalidKeySize, "Length from Encryptionkey is invalid.\r\nKeysize for %s must be to %d-%d bytes" - uRODECConst_sNotInitialized, "%s is not initialized call Init() or InitKey() before." - uRORes_err_InvalidIndex, "Invalid index %d" - uRORes_err_InvalidType, "Invalid type \"%s. Expected \"%s\"\"" - uRORes_err_InvalidStream, "Invalid stream" - uRORes_err_InvalidParamFlag, "Invalid Parameter Flag \"%s\"" - uRORes_err_InvalidStringLength, "Stream read error: Invalid string length \"%d\"" - uRORes_str_InvalidClassTypeInStream, "Stream read error: Invalid class type encountered: \"%s\"" - Consts_SDockZoneNotFound, " - Dock zone not found" - Consts_SDockZoneHasNoCtl, " - Dock zone has no control" - Consts_SDockZoneVersionConflict, "Error loading dock zone from the stream. Expecting version %d, but found %d." - Consts_SMultiSelectRequired, "Multiselect mode must be on for this feature" - Consts_SSeparator, "Separator" - Consts_SErrorSettingCount, "Error setting %s.Count" - Consts_SListBoxMustBeVirtual, "Listbox (%s) style must be virtual in order to set Count" - Consts_SANSIEncoding, "ANSI" - Consts_SASCIIEncoding, "ASCII" - Consts_SUnicodeEncoding, "Unicode" - Consts_SBigEndianEncoding, "Big Endian Unicode" - Consts_SUTF8Encoding, "UTF-8" - Consts_SUTF7Encoding, "UTF-7" - Consts_SPageControlNotSet, "PageControl must first be assigned" - uRODECConst_sProtectionCircular, "Circular Protection detected, Protection Object is invalid." - uRODECConst_sStringFormatExists, "String Format \"%d\" not exists." - Consts_srNone, "(None)" - Consts_SOutOfRange, "Value must be between %d and %d" - Consts_sAllFilter, "All" - Consts_SInsertLineError, "Unable to insert a line" - Consts_SInvalidClipFmt, "Invalid clipboard format" - Consts_SIconToClipboard, "Clipboard does not support Icons" - Consts_SCannotOpenClipboard, "Cannot open clipboard" - Consts_SInvalidMemoSize, "Text exceeds memo capacity" - Consts_SInvalidPrinterOp, "Operation not supported on selected printer" - Consts_SNoDefaultPrinter, "There is no default printer currently selected" - Consts_SDuplicateMenus, "Menu '%s' is already being used by another form" - Consts_SPictureLabel, "Picture:" - Consts_SPictureDesc, " (%dx%d)" - Consts_SPreviewLabel, "Preview" - Consts_SDockedCtlNeedsName, "Docked control must have a name" - Consts_SDockTreeRemoveError, "Error removing control from dock tree" - Consts_SmkcEsc, "Esc" - Consts_SmkcEnter, "Enter" - Consts_SmkcSpace, "Space" - Consts_SmkcPgUp, "PgUp" - Consts_SmkcPgDn, "PgDn" - Consts_SmkcEnd, "End" - Consts_SmkcHome, "Home" - Consts_SmkcLeft, "Left" - Consts_SmkcUp, "Up" - Consts_SmkcRight, "Right" - Consts_SmkcDown, "Down" - Consts_SmkcIns, "Ins" - Consts_SmkcDel, "Del" - Consts_SmkcShift, "Shift+" - Consts_SmkcCtrl, "Ctrl+" - Consts_SmkcAlt, "Alt+" - Consts_SMsgDlgError, "Error" - Consts_SMsgDlgInformation, "Information" - Consts_SMsgDlgConfirm, "Confirm" - Consts_SMsgDlgYes, "&Yes" - Consts_SMsgDlgNo, "&No" - Consts_SMsgDlgOK, "OK" - Consts_SMsgDlgCancel, "Cancel" - Consts_SMsgDlgHelp, "&Help" - Consts_SMsgDlgAbort, "&Abort" - Consts_SMsgDlgRetry, "&Retry" - Consts_SMsgDlgIgnore, "&Ignore" - Consts_SMsgDlgAll, "&All" - Consts_SMsgDlgNoToAll, "N&o to All" - Consts_SMsgDlgYesToAll, "Yes to &All" - Consts_SmkcBkSp, "BkSp" - Consts_SmkcTab, "Tab" - Consts_SOKButton, "OK" - Consts_SCancelButton, "Cancel" - Consts_SYesButton, "&Yes" - Consts_SNoButton, "&No" - Consts_SHelpButton, "&Help" - Consts_SCloseButton, "&Close" - Consts_SIgnoreButton, "&Ignore" - Consts_SRetryButton, "&Retry" - Consts_SAbortButton, "Abort" - Consts_SAllButton, "&All" - Consts_SCannotDragForm, "Cannot drag a form" - Consts_SVMetafiles, "Metafiles" - Consts_SVEnhMetafiles, "Enhanced Metafiles" - Consts_SVIcons, "Icons" - Consts_SVBitmaps, "Bitmaps" - Consts_SMsgDlgWarning, "Warning" - Consts_SMDIChildNotVisible, "Cannot hide an MDI Child Form" - Consts_SVisibleChanged, "Cannot change Visible in OnShow or OnHide" - Consts_SCannotShowModal, "Cannot make a visible window modal" - Consts_SScrollBarRange, "Scrollbar property out of range" - Consts_SPropertyOutOfRange, "%s property out of range" - Consts_SMenuIndexError, "Menu index out of range" - Consts_SMenuReinserted, "Menu inserted twice" - Consts_SMenuNotFound, "Sub-menu is not in menu" - Consts_SNoTimers, "Not enough timers available" - Consts_SNotPrinting, "Printer is not currently printing" - Consts_SPrinting, "Printing in progress" - Consts_SInvalidPrinter, "Printer selected is not valid" - Consts_SDeviceOnPort, "%s on %s" - Consts_SGroupIndexTooLow, "GroupIndex cannot be less than a previous menu item's GroupIndex" - Consts_SNoMDIForm, "Cannot create form. No MDI forms are currently active" - Consts_SControlParentSetToSelf, "A control cannot have itself as its parent" - Consts_SChangeIconSize, "Cannot change the size of an icon" - Consts_SUnknownExtension, "Unknown picture file extension (.%s)" - Consts_SUnknownClipboardFormat, "Unsupported clipboard format" - Consts_SOutOfResources, "Out of system resources" - Consts_SNoCanvasHandle, "Canvas does not allow drawing" - Consts_SInvalidImageSize, "Invalid image size" - Consts_SInvalidImageList, "Invalid ImageList" - Consts_SReplaceImage, "Unable to Replace Image" - Consts_SImageIndexError, "Invalid ImageList Index" - Consts_SImageReadFail, "Failed to read ImageList data from stream" - Consts_SImageWriteFail, "Failed to write ImageList data to stream" - Consts_SWindowDCError, "Error creating window device context" - Consts_SWindowClass, "Error creating window class" - Consts_SCannotFocus, "Cannot focus a disabled or invisible window" - Consts_SParentRequired, "Control '%s' has no parent window" - Consts_SParentGivenNotAParent, "Parent given is not a parent of '%s'" - RTLConsts_SWriteError, "Stream write error" - RTLConsts_SThreadCreateError, "Thread creation error: %s" - RTLConsts_SThreadError, "Thread Error: %s (%d)" - HelpIntfs_hNoTableOfContents, "Unable to find a Table of Contents" - HelpIntfs_hNothingFound, "No help found for %s" - HelpIntfs_hNoContext, "No context-sensitive help installed" - HelpIntfs_hNoContextFound, "No help found for context" - HelpIntfs_hNoTopics, "No topic-based help system installed" - Consts_SInvalidTabPosition, "Tab position incompatible with current tab style" - Consts_SInvalidTabStyle, "Tab style incompatible with current tab position" - Consts_SInvalidBitmap, "Bitmap image is not valid" - Consts_SInvalidIcon, "Icon image is not valid" - Consts_SInvalidMetafile, "Metafile is not valid" - Consts_SInvalidPixelFormat, "Invalid pixel format" - Consts_SInvalidImage, "Invalid image" - Consts_SScanLine, "Scan line index out of range" - RTLConsts_SInvalidRegType, "Invalid data type for '%s'" - RTLConsts_SListCapacityError, "List capacity out of bounds (%d)" - RTLConsts_SListCountError, "List count out of bounds (%d)" - RTLConsts_SListIndexError, "List index out of bounds (%d)" - RTLConsts_SMemoryStreamError, "Out of memory while expanding memory stream" - RTLConsts_SPropertyException, "Error reading %s%s%s: %s" - RTLConsts_SReadError, "Stream read error" - RTLConsts_SReadOnlyProperty, "Property is read-only" - RTLConsts_SRegCreateFailed, "Failed to create key %s" - RTLConsts_SRegGetDataFailed, "Failed to get data for '%s'" - RTLConsts_SRegSetDataFailed, "Failed to set data for '%s'" - RTLConsts_SResNotFound, "Resource %s not found" - RTLConsts_SSeekNotImplemented, "%s.Seek not implemented" - RTLConsts_SSortedListError, "Operation not allowed on sorted list" - RTLConsts_SUnknownGroup, "%s not in a class registration group" - RTLConsts_SUnknownProperty, "Property %s does not exist" - RTLConsts_SCheckSynchronizeError, "CheckSynchronize called from thread $%x, which is NOT the main thread" - RTLConsts_SClassNotFound, "Class %s not found" - RTLConsts_SDuplicateClass, "A class named %s already exists" - RTLConsts_SDuplicateItem, "List does not allow duplicates ($0%x)" - RTLConsts_SDuplicateName, "A component named %s already exists" - RTLConsts_SDuplicateString, "String list does not allow duplicates" - RTLConsts_SFCreateErrorEx, "Cannot create file \"%s\". %s" - RTLConsts_SFOpenErrorEx, "Cannot open file \"%s\". %s" - RTLConsts_SIniFileWriteError, "Unable to write to %s" - RTLConsts_SInvalidImage, "Invalid stream format" - RTLConsts_SInvalidName, "''%s'' is not a valid component name" - RTLConsts_SInvalidProperty, "Invalid property value" - RTLConsts_SInvalidPropertyElement, "Invalid property element: %s" - RTLConsts_SInvalidPropertyPath, "Invalid property path" - RTLConsts_SInvalidPropertyType, "Invalid property type: %s" - RTLConsts_SInvalidPropertyValue, "Invalid property value" - SysConst_SShortDayNameTue, "Tue" - SysConst_SShortDayNameWed, "Wed" - SysConst_SShortDayNameThu, "Thu" - SysConst_SShortDayNameFri, "Fri" - SysConst_SShortDayNameSat, "Sat" - SysConst_SLongDayNameSun, "Sunday" - SysConst_SLongDayNameMon, "Monday" - SysConst_SLongDayNameTue, "Tuesday" - SysConst_SLongDayNameWed, "Wednesday" - SysConst_SLongDayNameThu, "Thursday" - SysConst_SLongDayNameFri, "Friday" - SysConst_SLongDayNameSat, "Saturday" - RTLConsts_SAncestorNotFound, "Ancestor for '%s' not found" - RTLConsts_SAssignError, "Cannot assign a %s to a %s" - RTLConsts_SBitsIndexError, "Bits index out of range" - RTLConsts_SCantWriteResourceStreamError, "Can't write to a read-only resource stream" - SysConst_SShortMonthNameNov, "Nov" - SysConst_SShortMonthNameDec, "Dec" - SysConst_SLongMonthNameJan, "January" - SysConst_SLongMonthNameFeb, "February" - SysConst_SLongMonthNameMar, "March" - SysConst_SLongMonthNameApr, "April" - SysConst_SLongMonthNameMay, "May" - SysConst_SLongMonthNameJun, "June" - SysConst_SLongMonthNameJul, "July" - SysConst_SLongMonthNameAug, "August" - SysConst_SLongMonthNameSep, "September" - SysConst_SLongMonthNameOct, "October" - SysConst_SLongMonthNameNov, "November" - SysConst_SLongMonthNameDec, "December" - SysConst_SShortDayNameSun, "Sun" - SysConst_SShortDayNameMon, "Mon" - SysConst_SAssertError, "%s (%s, line %d)" - SysConst_SAbstractError, "Abstract Error" - SysConst_SModuleAccessViolation, "Access violation at address %p in module '%s'. %s of address %p" - SysConst_SOSError, "System Error. Code: %d.\r\n%s" - SysConst_SUnkOSError, "A call to an OS function failed" - SysConst_SNL, "Application is not licensed to use this feature" - SysConst_SShortMonthNameJan, "Jan" - SysConst_SShortMonthNameFeb, "Feb" - SysConst_SShortMonthNameMar, "Mar" - SysConst_SShortMonthNameApr, "Apr" - SysConst_SShortMonthNameMay, "May" - SysConst_SShortMonthNameJun, "Jun" - SysConst_SShortMonthNameJul, "Jul" - SysConst_SShortMonthNameAug, "Aug" - SysConst_SShortMonthNameSep, "Sep" - SysConst_SShortMonthNameOct, "Oct" - SysConst_SInvalidVarOpWithHResultWithPrefix, "Invalid variant operation (%s%.8x)\n%s" - SysConst_SVarTypeOutOfRangeWithPrefix, "Custom variant type (%s%.4x) is out of range" - SysConst_SVarTypeAlreadyUsedWithPrefix, "Custom variant type (%s%.4x) already used by %s" - SysConst_SVarTypeNotUsableWithPrefix, "Custom variant type (%s%.4x) is not usable" - SysConst_SVarTypeTooManyCustom, "Too many custom variant types have been registered" - SysConst_SVarTypeCouldNotConvert, "Could not convert variant of type (%s) into type (%s)" - SysConst_SVarTypeConvertOverflow, "Overflow while converting variant of type (%s) into type (%s)" - SysConst_SVarOverflow, "Variant overflow" - SysConst_SVarInvalid, "Invalid argument" - SysConst_SVarBadType, "Invalid variant type" - SysConst_SVarNotImplemented, "Operation not supported" - SysConst_SVarUnexpected, "Unexpected variant error" - SysConst_SExternalException, "External exception %x" - SysConst_SAssertionFailed, "Assertion failed" - SysConst_SIntfCastError, "Interface not supported" - SysConst_SSafecallException, "Exception in safecall method" - SysConst_SOperationAborted, "Operation aborted" - SysConst_SException, "Exception %s in module %s at %p.\r\n%s%s\r\n" - SysConst_SExceptTitle, "Application Error" - SysConst_SInvalidFormat, "Format '%s' invalid or incompatible with argument" - SysConst_SArgumentMissing, "No argument for format '%s'" - SysConst_SDispatchError, "Variant method calls not supported" - SysConst_SReadAccess, "Read" - SysConst_SWriteAccess, "Write" - SysConst_SFormatTooLong, "Format string too long" - SysConst_SVarArrayCreate, "Error creating variant or safe array" - SysConst_SVarArrayBounds, "Variant or safe array index out of bounds" - SysConst_SVarArrayLocked, "Variant or safe array is locked" - SysConst_SVarArrayWithHResult, "Unexpected variant or safe array error: %s%.8x" - SysConst_SInvalidVarCast, "Invalid variant type conversion" - SysConst_SInvalidVarOp, "Invalid variant operation" - SysConst_SInvalidVarNullOp, "Invalid NULL variant operation" - SysConst_SDiskFull, "Disk full" - SysConst_SInvalidInput, "Invalid numeric input" - SysConst_SDivByZero, "Division by zero" - SysConst_SRangeError, "Range check error" - SysConst_SIntOverflow, "Integer overflow" - SysConst_SInvalidOp, "Invalid floating point operation" - SysConst_SZeroDivide, "Floating point division by zero" - SysConst_SOverflow, "Floating point overflow" - SysConst_SUnderflow, "Floating point underflow" - SysConst_SInvalidPointer, "Invalid pointer operation" - SysConst_SInvalidCast, "Invalid class typecast" - SysConst_SAccessViolationArg3, "Access violation at address %p. %s of address %p" - SysConst_SAccessViolationNoArg, "Access violation" - SysConst_SStackOverflow, "Stack overflow" - SysConst_SControlC, "Control-C hit" - SysConst_SPrivilege, "Privileged instruction" - SysConst_SInvalidInteger, "'%s' is not a valid integer value" - SysConst_SInvalidFloat, "'%s' is not a valid floating point value" - SysConst_SInvalidDate, "'%s' is not a valid date" - SysConst_SInvalidTime, "'%s' is not a valid time" - SysConst_SInvalidDateTime, "'%s' is not a valid date and time" - SysConst_SInvalidTimeStamp, "'%d.%d' is not a valid timestamp" - SysConst_SInvalidGUID, "'%s' is not a valid GUID value" - SysConst_STimeEncodeError, "Invalid argument to time encode" - SysConst_SDateEncodeError, "Invalid argument to date encode" - SysConst_SOutOfMemory, "Out of memory" - SysConst_SInOutError, "I/O error %d" - SysConst_SFileNotFound, "File not found" - SysConst_SInvalidFilename, "Invalid filename" - SysConst_STooManyOpenFiles, "Too many open files" - SysConst_SAccessDenied, "File access denied" - SysConst_SEndOfFile, "Read beyond end of file" -END - +/* c:\archivos de programa\codegear\rad studio\5.0\lib\Controls.res */ +/* C:\Archivos de programa\RemObjects Software\RemObjects SDK for Delphi\Source\uROPoweredByRemObjectsButton.res */ +/* C:\Archivos de programa\RemObjects Software\RemObjects SDK for Delphi\Source\uROHtmlServerInfo.res */ +/* c:\archivos de programa\codegear\rad studio\5.0\lib\Buttons.res */ +/* c:\archivos de programa\codegear\rad studio\5.0\lib\ExtDlgs.res */ +/* C:\Codigo Tecsitel\Lib\FastReport3\frxProgress.DFM */ +/* C:\Codigo Tecsitel\Lib\FastReport3\frxCtrls.RES */ +/* C:\Codigo Tecsitel\Lib\FastReport3\frxPrintDialog.DFM */ +/* C:\Codigo Tecsitel\Lib\FastReport3\frxDock.DFM */ +/* C:\Codigo Tecsitel\Lib\FastReport3\frxPreviewPageSettings.DFM */ +/* C:\Codigo Tecsitel\Lib\FastReport3\frxSearchDialog.DFM */ +/* C:\Codigo Tecsitel\Lib\FastReport3\frxPreview.DFM */ +/* C:\Codigo Tecsitel\Lib\FastReport3\frxPreview.RES */ +/* C:\Codigo Tecsitel\Lib\FastReport3\frxDialogForm.DFM */ +/* C:\Codigo Tecsitel\Lib\FastReport3\frxPassw.dfm */ +/* C:\Codigo Tecsitel\Lib\FastReport3\frxClass.RES */ +/* C:\Codigo Tecsitel\Lib\jvcl\JvConsts.res */ +/* c:\archivos de programa\codegear\rad studio\5.0\lib\WindowsXP.res */ +/* C:\Codigo Tecsitel\Lib\jvcl\JvLogForm.dfm */ +/* C:\Archivos de programa\RemObjects Software\Data Abstract for Delphi\Source\Drivers\DataAbstract_IBXDriver_Glyphs.res */ +/* C:\Archivos de programa\RemObjects Software\Data Abstract for Delphi\Source\Drivers\DataAbstract_ADODriver_Glyphs.res */ +/* C:\Codigo Tecsitel\Source\Servidor\uDataModuleServer.dfm */ +/* C:\Codigo Tecsitel\Source\Servidor\Configuracion\uFrameConfiguracion.dfm */ +/* C:\Codigo Tecsitel\Lib\DevExpressVCL\dxOffice11.res */ +/* C:\Codigo Tecsitel\Lib\DevExpressVCL\cxControls.res */ +/* C:\Codigo Tecsitel\Lib\DevExpressVCL\cxLookAndFeelPainters.res */ +/* c:\archivos de programa\codegear\rad studio\5.0\lib\FileCtrl.res */ +/* C:\Codigo Tecsitel\Lib\DevExpressVCL\cxEdit.res */ +/* C:\Codigo Tecsitel\Lib\DevExpressVCL\cxShellBrowser.dfm */ +/* C:\Codigo Tecsitel\Source\Servidor\Configuracion\uConexionBD.dfm */ +/* C:\Codigo Tecsitel\Source\Servidor\Configuracion\uConfGeneral.dfm */ +/* C:\Codigo Tecsitel\Source\Servidor\Configuracion\uConfiguracion.dfm */ +/* C:\Codigo Tecsitel\Source\Servidor\uAcercaDe.dfm */ +/* C:\Codigo Tecsitel\Source\Servidor\uServerMainForm.dfm */ +/* C:\Codigo Tecsitel\Source\Servidor\srvLogin_Impl.dfm */ +/* C:\Codigo Tecsitel\Source\Modulos\Contactos\Servidor\srvContactos_Impl.dfm */ +/* C:\Codigo Tecsitel\Source\ApplicationBase\Empresas\Servidor\srvEmpresas_Impl.dfm */ +/* C:\Codigo Tecsitel\Source\Servidor\Configuracion\srvConfiguracion_Impl.dfm */ +/* C:\Codigo Tecsitel\Source\Modulos\Familias\Servidor\srvFamilias_Impl.dfm */ +/* C:\Codigo Tecsitel\Source\Modulos\Formas de pago\Servidor\srvFormasPago_Impl.dfm */ +/* C:\Codigo Tecsitel\Source\Modulos\Tipos de IVA\Servidor\srvTiposIVA_Impl.dfm */ +/* C:\Codigo Tecsitel\Source\ApplicationBase\Usuarios\Servidor\srvUsuarios_Impl.dfm */ diff --git a/Source/Servidor/FactuGES_Server.rc b/Source/Servidor/FactuGES_Server.rc index f2ee8f35..9272a28e 100644 --- a/Source/Servidor/FactuGES_Server.rc +++ b/Source/Servidor/FactuGES_Server.rc @@ -1,7 +1,7 @@ -MAINICON ICON "T:\Codigo (Tecsitel)\Source\Iconos\Servidor.ico" +MAINICON ICON "C:\Codigo Tecsitel\Resources\Iconos\Servidor.ico" 1 VERSIONINFO -FILEVERSION 2,2,2,0 -PRODUCTVERSION 2,2,2,0 +FILEVERSION 3,0,0,0 +PRODUCTVERSION 3,0,0,0 FILEFLAGSMASK 0x3FL FILEFLAGS 0x00L FILEOS 0x40004L @@ -10,15 +10,15 @@ FILESUBTYPE 0x0L BEGIN BLOCK "StringFileInfo" BEGIN - BLOCK "0C0904E4" + BLOCK "0C0A04E4" BEGIN - VALUE "FileVersion", "2.2.2.0\0" - VALUE "ProductVersion", "2.2.2.0\0" - VALUE "CompileDate", "miércoles, 05 de septiembre de 2007 12:20\0" + VALUE "FileVersion", "3.0.0.0\0" + VALUE "ProductVersion", "3.0.0.0\0" + VALUE "CompileDate", "sábado, 13 de octubre de 2007 22:49\0" END END BLOCK "VarFileInfo" BEGIN - VALUE "Translation", 0x0C09, 1252 + VALUE "Translation", 0x0C0A, 1252 END END diff --git a/Source/Servidor/Utiles/RegExpr.pas b/Source/Servidor/Utiles/RegExpr.pas new file mode 100644 index 00000000..f17279a4 --- /dev/null +++ b/Source/Servidor/Utiles/RegExpr.pas @@ -0,0 +1,4042 @@ +unit RegExpr; + +{ + TRegExpr class library + Delphi Regular Expressions + + Copyright (c) 1999-2004 Andrey V. Sorokin, St.Petersburg, Russia + + You may use this software in any kind of development, + including comercial, redistribute, and modify it freely, + under the following restrictions : + 1. This software is provided as it is, without any kind of + warranty given. Use it at Your own risk.The author is not + responsible for any consequences of use of this software. + 2. The origin of this software may not be mispresented, You + must not claim that You wrote the original software. If + You use this software in any kind of product, it would be + appreciated that there in a information box, or in the + documentation would be an acknowledgement like + + Partial Copyright (c) 2004 Andrey V. Sorokin + http://RegExpStudio.com + mailto:anso@mail.ru + + 3. You may not have any income from distributing this source + (or altered version of it) to other developers. When You + use this product in a comercial package, the source may + not be charged seperatly. + 4. Altered versions must be plainly marked as such, and must + not be misrepresented as being the original software. + 5. RegExp Studio application and all the visual components as + well as documentation is not part of the TRegExpr library + and is not free for usage. + + mailto:anso@mail.ru + http://RegExpStudio.com + http://anso.da.ru/ +} + +interface + +// ======== Determine compiler +{$IFDEF VER80} Sorry, TRegExpr is for 32-bits Delphi only. Delphi 1 is not supported (and whos really care today?!). {$ENDIF} +{$IFDEF VER90} {$DEFINE D2} {$ENDIF} // D2 +{$IFDEF VER93} {$DEFINE D2} {$ENDIF} // CPPB 1 +{$IFDEF VER100} {$DEFINE D3} {$DEFINE D2} {$ENDIF} // D3 +{$IFDEF VER110} {$DEFINE D4} {$DEFINE D3} {$DEFINE D2} {$ENDIF} // CPPB 3 +{$IFDEF VER120} {$DEFINE D4} {$DEFINE D3} {$DEFINE D2} {$ENDIF} // D4 +{$IFDEF VER130} {$DEFINE D5} {$DEFINE D4} {$DEFINE D3} {$DEFINE D2} {$ENDIF} // D5 +{$IFDEF VER140} {$DEFINE D6} {$DEFINE D5} {$DEFINE D4} {$DEFINE D3} {$DEFINE D2} {$ENDIF} // D6 +{$IFDEF VER150} {$DEFINE D7} {$DEFINE D6} {$DEFINE D5} {$DEFINE D4} {$DEFINE D3} {$DEFINE D2} {$ENDIF} // D7 +{$IFDEF VER180} {$DEFINE D2007} {$DEFINE D10} {$DEFINE D7} {$DEFINE D6} {$DEFINE D5} {$DEFINE D4} {$DEFINE D3} {$DEFINE D2} {$ENDIF} // D10/D2007 + +// ======== Define base compiler options +{$BOOLEVAL OFF} +{$EXTENDEDSYNTAX ON} +{$LONGSTRINGS ON} +{$OPTIMIZATION ON} +{$IFDEF D6} + {$WARN SYMBOL_PLATFORM OFF} // Suppress .Net warnings +{$ENDIF} +{$IFDEF D7} + {$WARN UNSAFE_CAST OFF} // Suppress .Net warnings + {$WARN UNSAFE_TYPE OFF} // Suppress .Net warnings + {$WARN UNSAFE_CODE OFF} // Suppress .Net warnings +{$ENDIF} +{$IFDEF FPC} + {$MODE DELPHI} // Delphi-compatible mode in FreePascal +{$ENDIF} + +// ======== Define options for TRegExpr engine +{.$DEFINE UniCode} // Unicode support +{$DEFINE RegExpPCodeDump} // p-code dumping (see Dump method) +{$IFNDEF FPC} // the option is not supported in FreePascal + {$DEFINE reRealExceptionAddr} // exceptions will point to appropriate source line, not to Error procedure +{$ENDIF} +{$DEFINE ComplexBraces} // support braces in complex cases +{$IFNDEF UniCode} // the option applicable only for non-UniCode mode + {$DEFINE UseSetOfChar} // Significant optimization by using set of char +{$ENDIF} +{$IFDEF UseSetOfChar} + {$DEFINE UseFirstCharSet} // Fast skip between matches for r.e. that starts with determined set of chars +{$ENDIF} + +// ======== Define Pascal-language options +// Define 'UseAsserts' option (do not edit this definitions). +// Asserts used to catch 'strange bugs' in TRegExpr implementation (when something goes +// completely wrong). You can swith asserts on/off with help of {$C+}/{$C-} compiler options. +{$IFDEF D3} {$DEFINE UseAsserts} {$ENDIF} +{$IFDEF FPC} {$DEFINE UseAsserts} {$ENDIF} + +// Define 'use subroutine parameters default values' option (do not edit this definition). +{$IFDEF D4} {$DEFINE DefParam} {$ENDIF} + +// Define 'OverMeth' options, to use method overloading (do not edit this definitions). +{$IFDEF D5} {$DEFINE OverMeth} {$ENDIF} +{$IFDEF FPC} {$DEFINE OverMeth} {$ENDIF} + +uses + Classes, // TStrings in Split method + SysUtils; // Exception + +type + {$IFDEF UniCode} + PRegExprChar = PWideChar; + RegExprString = WideString; + REChar = WideChar; + {$ELSE} + PRegExprChar = PChar; + RegExprString = AnsiString; //###0.952 was string + REChar = Char; + {$ENDIF} + TREOp = REChar; // internal p-code type //###0.933 + PREOp = ^TREOp; + TRENextOff = integer; // internal Next "pointer" (offset to current p-code) //###0.933 + PRENextOff = ^TRENextOff; // used for extracting Next "pointers" from compiled r.e. //###0.933 + TREBracesArg = integer; // type of {m,n} arguments + PREBracesArg = ^TREBracesArg; + +const + REOpSz = SizeOf (TREOp) div SizeOf (REChar); // size of p-code in RegExprString units + RENextOffSz = SizeOf (TRENextOff) div SizeOf (REChar); // size of Next 'pointer' -"- + REBracesArgSz = SizeOf (TREBracesArg) div SizeOf (REChar); // size of BRACES arguments -"- + +type + TRegExprInvertCaseFunction = function (const Ch : REChar) : REChar + of object; + +const + EscChar = '\'; // 'Escape'-char ('\' in common r.e.) used for escaping metachars (\w, \d etc). + RegExprModifierI : boolean = False; // default value for ModifierI + RegExprModifierR : boolean = True; // default value for ModifierR + RegExprModifierS : boolean = True; // default value for ModifierS + RegExprModifierG : boolean = True; // default value for ModifierG + RegExprModifierM : boolean = False; // default value for ModifierM + RegExprModifierX : boolean = False; // default value for ModifierX + RegExprSpaceChars : RegExprString = // default value for SpaceChars + ' '#$9#$A#$D#$C; + RegExprWordChars : RegExprString = // default value for WordChars + '0123456789' //###0.940 + + 'abcdefghijklmnopqrstuvwxyz' + + 'ABCDEFGHIJKLMNOPQRSTUVWXYZ_'; + RegExprLineSeparators : RegExprString =// default value for LineSeparators + #$d#$a{$IFDEF UniCode}+#$b#$c#$2028#$2029#$85{$ENDIF}; //###0.947 + RegExprLinePairedSeparator : RegExprString =// default value for LinePairedSeparator + #$d#$a; + { if You need Unix-styled line separators (only \n), then use: + RegExprLineSeparators = #$a; + RegExprLinePairedSeparator = ''; + } + + +const + NSUBEXP = 15; // max number of subexpression //###0.929 + // Cannot be more than NSUBEXPMAX + // Be carefull - don't use values which overflow CLOSE opcode + // (in this case you'll get compiler erorr). + // Big NSUBEXP will cause more slow work and more stack required + NSUBEXPMAX = 255; // Max possible value for NSUBEXP. //###0.945 + // Don't change it! It's defined by internal TRegExpr design. + + MaxBracesArg = $7FFFFFFF - 1; // max value for {n,m} arguments //###0.933 + + {$IFDEF ComplexBraces} + LoopStackMax = 10; // max depth of loops stack //###0.925 + {$ENDIF} + + TinySetLen = 3; + // if range includes more then TinySetLen chars, //###0.934 + // then use full (32 bytes) ANYOFFULL instead of ANYOF[BUT]TINYSET + // !!! Attension ! If you change TinySetLen, you must + // change code marked as "//!!!TinySet" + + +type + +{$IFDEF UseSetOfChar} + PSetOfREChar = ^TSetOfREChar; + TSetOfREChar = set of REChar; +{$ENDIF} + + TRegExpr = class; + + TRegExprReplaceFunction = function (ARegExpr : TRegExpr): string + of object; + + TRegExpr = class + private + startp : array [0 .. NSUBEXP - 1] of PRegExprChar; // founded expr starting points + endp : array [0 .. NSUBEXP - 1] of PRegExprChar; // founded expr end points + + {$IFDEF ComplexBraces} + LoopStack : array [1 .. LoopStackMax] of integer; // state before entering loop + LoopStackIdx : integer; // 0 - out of all loops + {$ENDIF} + + // The "internal use only" fields to pass info from compile + // to execute that permits the execute phase to run lots faster on + // simple cases. + regstart : REChar; // char that must begin a match; '\0' if none obvious + reganch : REChar; // is the match anchored (at beginning-of-line only)? + regmust : PRegExprChar; // string (pointer into program) that match must include, or nil + regmlen : integer; // length of regmust string + // Regstart and reganch permit very fast decisions on suitable starting points + // for a match, cutting down the work a lot. Regmust permits fast rejection + // of lines that cannot possibly match. The regmust tests are costly enough + // that regcomp() supplies a regmust only if the r.e. contains something + // potentially expensive (at present, the only such thing detected is * or + + // at the start of the r.e., which can involve a lot of backup). Regmlen is + // supplied because the test in regexec() needs it and regcomp() is computing + // it anyway. + {$IFDEF UseFirstCharSet} //###0.929 + FirstCharSet : TSetOfREChar; + {$ENDIF} + + // work variables for Exec's routins - save stack in recursion} + reginput : PRegExprChar; // String-input pointer. + fInputStart : PRegExprChar; // Pointer to first char of input string. + fInputEnd : PRegExprChar; // Pointer to char AFTER last char of input string + + // work variables for compiler's routines + regparse : PRegExprChar; // Input-scan pointer. + regnpar : integer; // count. + regdummy : char; + regcode : PRegExprChar; // Code-emit pointer; @regdummy = don't. + regsize : integer; // Code size. + + regexpbeg : PRegExprChar; // only for error handling. Contains + // pointer to beginning of r.e. while compiling + fExprIsCompiled : boolean; // true if r.e. successfully compiled + + // programm is essentially a linear encoding + // of a nondeterministic finite-state machine (aka syntax charts or + // "railroad normal form" in parsing technology). Each node is an opcode + // plus a "next" pointer, possibly plus an operand. "Next" pointers of + // all nodes except BRANCH implement concatenation; a "next" pointer with + // a BRANCH on both ends of it is connecting two alternatives. (Here we + // have one of the subtle syntax dependencies: an individual BRANCH (as + // opposed to a collection of them) is never concatenated with anything + // because of operator precedence.) The operand of some types of node is + // a literal string; for others, it is a node leading into a sub-FSM. In + // particular, the operand of a BRANCH node is the first node of the branch. + // (NB this is *not* a tree structure: the tail of the branch connects + // to the thing following the set of BRANCHes.) The opcodes are: + programm : PRegExprChar; // Unwarranted chumminess with compiler. + + fExpression : PRegExprChar; // source of compiled r.e. + fInputString : PRegExprChar; // input string + + fLastError : integer; // see Error, LastError + + fModifiers : integer; // modifiers + fCompModifiers : integer; // compiler's copy of modifiers + fProgModifiers : integer; // modifiers values from last programm compilation + + fSpaceChars : RegExprString; //###0.927 + fWordChars : RegExprString; //###0.929 + fInvertCase : TRegExprInvertCaseFunction; //###0.927 + + fLineSeparators : RegExprString; //###0.941 + fLinePairedSeparatorAssigned : boolean; + fLinePairedSeparatorHead, + fLinePairedSeparatorTail : REChar; + {$IFNDEF UniCode} + fLineSeparatorsSet : set of REChar; + {$ENDIF} + + procedure InvalidateProgramm; + // Mark programm as have to be [re]compiled + + function IsProgrammOk : boolean; //###0.941 + // Check if we can use precompiled r.e. or + // [re]compile it if something changed + + function GetExpression : RegExprString; + procedure SetExpression (const s : RegExprString); + + function GetModifierStr : RegExprString; + class function ParseModifiersStr (const AModifiers : RegExprString; + var AModifiersInt : integer) : boolean; //###0.941 class function now + // Parse AModifiers string and return true and set AModifiersInt + // if it's in format 'ismxrg-ismxrg'. + procedure SetModifierStr (const AModifiers : RegExprString); + + function GetModifier (AIndex : integer) : boolean; + procedure SetModifier (AIndex : integer; ASet : boolean); + + procedure Error (AErrorID : integer); virtual; // error handler. + // Default handler raise exception ERegExpr with + // Message = ErrorMsg (AErrorID), ErrorCode = AErrorID + // and CompilerErrorPos = value of property CompilerErrorPos. + + + {==================== Compiler section ===================} + function CompileRegExpr (exp : PRegExprChar) : boolean; + // compile a regular expression into internal code + + procedure Tail (p : PRegExprChar; val : PRegExprChar); + // set the next-pointer at the end of a node chain + + procedure OpTail (p : PRegExprChar; val : PRegExprChar); + // regoptail - regtail on operand of first argument; nop if operandless + + function EmitNode (op : TREOp) : PRegExprChar; + // regnode - emit a node, return location + + procedure EmitC (b : REChar); + // emit (if appropriate) a byte of code + + procedure InsertOperator (op : TREOp; opnd : PRegExprChar; sz : integer); //###0.90 + // insert an operator in front of already-emitted operand + // Means relocating the operand. + + function ParseReg (paren : integer; var flagp : integer) : PRegExprChar; + // regular expression, i.e. main body or parenthesized thing + + function ParseBranch (var flagp : integer) : PRegExprChar; + // one alternative of an | operator + + function ParsePiece (var flagp : integer) : PRegExprChar; + // something followed by possible [*+?] + + function ParseAtom (var flagp : integer) : PRegExprChar; + // the lowest level + + function GetCompilerErrorPos : integer; + // current pos in r.e. - for error hanling + + {$IFDEF UseFirstCharSet} //###0.929 + procedure FillFirstCharSet (prog : PRegExprChar); + {$ENDIF} + + {===================== Mathing section ===================} + function regrepeat (p : PRegExprChar; AMax : integer) : integer; + // repeatedly match something simple, report how many + + function regnext (p : PRegExprChar) : PRegExprChar; + // dig the "next" pointer out of a node + + function MatchPrim (prog : PRegExprChar) : boolean; + // recursively matching routine + + function ExecPrim (AOffset: integer) : boolean; + // Exec for stored InputString + + {$IFDEF RegExpPCodeDump} + function DumpOp (op : REChar) : RegExprString; + {$ENDIF} + + function GetSubExprMatchCount : integer; + function GetMatchPos (Idx : integer) : integer; + function GetMatchLen (Idx : integer) : integer; + function GetMatch (Idx : integer) : RegExprString; + + function GetInputString : RegExprString; + procedure SetInputString (const AInputString : RegExprString); + + {$IFNDEF UseSetOfChar} + function StrScanCI (s : PRegExprChar; ch : REChar) : PRegExprChar; //###0.928 + {$ENDIF} + + procedure SetLineSeparators (const AStr : RegExprString); + procedure SetLinePairedSeparator (const AStr : RegExprString); + function GetLinePairedSeparator : RegExprString; + + public + constructor Create; + destructor Destroy; override; + + class function VersionMajor : integer; //###0.944 + class function VersionMinor : integer; //###0.944 + + property Expression : RegExprString read GetExpression write SetExpression; + // Regular expression. + // For optimization, TRegExpr will automatically compiles it into 'P-code' + // (You can see it with help of Dump method) and stores in internal + // structures. Real [re]compilation occures only when it really needed - + // while calling Exec[Next], Substitute, Dump, etc + // and only if Expression or other P-code affected properties was changed + // after last [re]compilation. + // If any errors while [re]compilation occures, Error method is called + // (by default Error raises exception - see below) + + property ModifierStr : RegExprString read GetModifierStr write SetModifierStr; + // Set/get default values of r.e.syntax modifiers. Modifiers in + // r.e. (?ismx-ismx) will replace this default values. + // If you try to set unsupported modifier, Error will be called + // (by defaul Error raises exception ERegExpr). + + property ModifierI : boolean index 1 read GetModifier write SetModifier; + // Modifier /i - caseinsensitive, initialized from RegExprModifierI + + property ModifierR : boolean index 2 read GetModifier write SetModifier; + // Modifier /r - use r.e.syntax extended for russian, + // (was property ExtSyntaxEnabled in previous versions) + // If true, then à-ÿ additional include russian letter '¸', + // À-ß additional include '¨', and à-ß include all russian symbols. + // You have to turn it off if it may interfere with you national alphabet. + // , initialized from RegExprModifierR + + property ModifierS : boolean index 3 read GetModifier write SetModifier; + // Modifier /s - '.' works as any char (else as [^\n]), + // , initialized from RegExprModifierS + + property ModifierG : boolean index 4 read GetModifier write SetModifier; + // Switching off modifier /g switchs all operators in + // non-greedy style, so if ModifierG = False, then + // all '*' works as '*?', all '+' as '+?' and so on. + // , initialized from RegExprModifierG + + property ModifierM : boolean index 5 read GetModifier write SetModifier; + // Treat string as multiple lines. That is, change `^' and `$' from + // matching at only the very start or end of the string to the start + // or end of any line anywhere within the string. + // , initialized from RegExprModifierM + + property ModifierX : boolean index 6 read GetModifier write SetModifier; + // Modifier /x - eXtended syntax, allow r.e. text formatting, + // see description in the help. Initialized from RegExprModifierX + + function Exec (const AInputString : RegExprString) : boolean; {$IFDEF OverMeth} overload; + {$IFNDEF FPC} // I do not know why FreePascal cannot overload methods with empty param list + function Exec : boolean; overload; //###0.949 + {$ENDIF} + function Exec (AOffset: integer) : boolean; overload; //###0.949 + {$ENDIF} + // match a programm against a string AInputString + // !!! Exec store AInputString into InputString property + // For Delphi 5 and higher available overloaded versions - first without + // parameter (uses already assigned to InputString property value) + // and second that has integer parameter and is same as ExecPos + + function ExecNext : boolean; + // find next match: + // ExecNext; + // works same as + // if MatchLen [0] = 0 then ExecPos (MatchPos [0] + 1) + // else ExecPos (MatchPos [0] + MatchLen [0]); + // but it's more simpler ! + // Raises exception if used without preceeding SUCCESSFUL call to + // Exec* (Exec, ExecPos, ExecNext). So You always must use something like + // if Exec (InputString) then repeat { proceed results} until not ExecNext; + + function ExecPos (AOffset: integer {$IFDEF DefParam}= 1{$ENDIF}) : boolean; + // find match for InputString starting from AOffset position + // (AOffset=1 - first char of InputString) + + property InputString : RegExprString read GetInputString write SetInputString; + // returns current input string (from last Exec call or last assign + // to this property). + // Any assignment to this property clear Match* properties ! + + function Substitute (const ATemplate : RegExprString) : RegExprString; + // Returns ATemplate with '$&' or '$0' replaced by whole r.e. + // occurence and '$n' replaced by occurence of subexpression #n. + // Since v.0.929 '$' used instead of '\' (for future extensions + // and for more Perl-compatibility) and accept more then one digit. + // If you want place into template raw '$' or '\', use prefix '\' + // Example: '1\$ is $2\\rub\\' -> '1$ is \rub\' + // If you want to place raw digit after '$n' you must delimit + // n with curly braces '{}'. + // Example: 'a$12bc' -> 'abc' + // 'a${1}2bc' -> 'a2bc'. + + procedure Split (AInputStr : RegExprString; APieces : TStrings); + // Split AInputStr into APieces by r.e. occurencies + // Internally calls Exec[Next] + + function Replace (AInputStr : RegExprString; + const AReplaceStr : RegExprString; + AUseSubstitution : boolean{$IFDEF DefParam}= False{$ENDIF}) //###0.946 + : RegExprString; {$IFDEF OverMeth} overload; + function Replace (AInputStr : RegExprString; + AReplaceFunc : TRegExprReplaceFunction) + : RegExprString; overload; + {$ENDIF} + function ReplaceEx (AInputStr : RegExprString; + AReplaceFunc : TRegExprReplaceFunction) + : RegExprString; + // Returns AInputStr with r.e. occurencies replaced by AReplaceStr + // If AUseSubstitution is true, then AReplaceStr will be used + // as template for Substitution methods. + // For example: + // Expression := '({-i}block|var)\s*\(\s*([^ ]*)\s*\)\s*'; + // Replace ('BLOCK( test1)', 'def "$1" value "$2"', True); + // will return: def 'BLOCK' value 'test1' + // Replace ('BLOCK( test1)', 'def "$1" value "$2"') + // will return: def "$1" value "$2" + // Internally calls Exec[Next] + // Overloaded version and ReplaceEx operate with call-back function, + // so You can implement really complex functionality. + + property SubExprMatchCount : integer read GetSubExprMatchCount; + // Number of subexpressions has been found in last Exec* call. + // If there are no subexpr. but whole expr was found (Exec* returned True), + // then SubExprMatchCount=0, if no subexpressions nor whole + // r.e. found (Exec* returned false) then SubExprMatchCount=-1. + // Note, that some subexpr. may be not found and for such + // subexpr. MathPos=MatchLen=-1 and Match=''. + // For example: Expression := '(1)?2(3)?'; + // Exec ('123'): SubExprMatchCount=2, Match[0]='123', [1]='1', [2]='3' + // Exec ('12'): SubExprMatchCount=1, Match[0]='12', [1]='1' + // Exec ('23'): SubExprMatchCount=2, Match[0]='23', [1]='', [2]='3' + // Exec ('2'): SubExprMatchCount=0, Match[0]='2' + // Exec ('7') - return False: SubExprMatchCount=-1 + + property MatchPos [Idx : integer] : integer read GetMatchPos; + // pos of entrance subexpr. #Idx into tested in last Exec* + // string. First subexpr. have Idx=1, last - MatchCount, + // whole r.e. have Idx=0. + // Returns -1 if in r.e. no such subexpr. or this subexpr. + // not found in input string. + + property MatchLen [Idx : integer] : integer read GetMatchLen; + // len of entrance subexpr. #Idx r.e. into tested in last Exec* + // string. First subexpr. have Idx=1, last - MatchCount, + // whole r.e. have Idx=0. + // Returns -1 if in r.e. no such subexpr. or this subexpr. + // not found in input string. + // Remember - MatchLen may be 0 (if r.e. match empty string) ! + + property Match [Idx : integer] : RegExprString read GetMatch; + // == copy (InputString, MatchPos [Idx], MatchLen [Idx]) + // Returns '' if in r.e. no such subexpr. or this subexpr. + // not found in input string. + + function LastError : integer; + // Returns ID of last error, 0 if no errors (unusable if + // Error method raises exception) and clear internal status + // into 0 (no errors). + + function ErrorMsg (AErrorID : integer) : RegExprString; virtual; + // Returns Error message for error with ID = AErrorID. + + property CompilerErrorPos : integer read GetCompilerErrorPos; + // Returns pos in r.e. there compiler stopped. + // Usefull for error diagnostics + + property SpaceChars : RegExprString read fSpaceChars write fSpaceChars; //###0.927 + // Contains chars, treated as /s (initially filled with RegExprSpaceChars + // global constant) + + property WordChars : RegExprString read fWordChars write fWordChars; //###0.929 + // Contains chars, treated as /w (initially filled with RegExprWordChars + // global constant) + + property LineSeparators : RegExprString read fLineSeparators write SetLineSeparators; //###0.941 + // line separators (like \n in Unix) + + property LinePairedSeparator : RegExprString read GetLinePairedSeparator write SetLinePairedSeparator; //###0.941 + // paired line separator (like \r\n in DOS and Windows). + // must contain exactly two chars or no chars at all + + class function InvertCaseFunction (const Ch : REChar) : REChar; + // Converts Ch into upper case if it in lower case or in lower + // if it in upper (uses current system local setings) + + property InvertCase : TRegExprInvertCaseFunction read fInvertCase write fInvertCase; //##0.935 + // Set this property if you want to override case-insensitive functionality. + // Create set it to RegExprInvertCaseFunction (InvertCaseFunction by default) + + procedure Compile; //###0.941 + // [Re]compile r.e. Usefull for example for GUI r.e. editors (to check + // all properties validity). + + {$IFDEF RegExpPCodeDump} + function Dump : RegExprString; + // dump a compiled regexp in vaguely comprehensible form + {$ENDIF} + end; + + ERegExpr = class (Exception) + public + ErrorCode : integer; + CompilerErrorPos : integer; + end; + +const + RegExprInvertCaseFunction : TRegExprInvertCaseFunction = {$IFDEF FPC} nil {$ELSE} TRegExpr.InvertCaseFunction{$ENDIF}; + // defaul for InvertCase property + +function ExecRegExpr (const ARegExpr, AInputStr : RegExprString) : boolean; +// true if string AInputString match regular expression ARegExpr +// ! will raise exeption if syntax errors in ARegExpr + +procedure SplitRegExpr (const ARegExpr, AInputStr : RegExprString; APieces : TStrings); +// Split AInputStr into APieces by r.e. ARegExpr occurencies + +function ReplaceRegExpr (const ARegExpr, AInputStr, AReplaceStr : RegExprString; + AUseSubstitution : boolean{$IFDEF DefParam}= False{$ENDIF}) : RegExprString; //###0.947 +// Returns AInputStr with r.e. occurencies replaced by AReplaceStr +// If AUseSubstitution is true, then AReplaceStr will be used +// as template for Substitution methods. +// For example: +// ReplaceRegExpr ('({-i}block|var)\s*\(\s*([^ ]*)\s*\)\s*', +// 'BLOCK( test1)', 'def "$1" value "$2"', True) +// will return: def 'BLOCK' value 'test1' +// ReplaceRegExpr ('({-i}block|var)\s*\(\s*([^ ]*)\s*\)\s*', +// 'BLOCK( test1)', 'def "$1" value "$2"') +// will return: def "$1" value "$2" + +function QuoteRegExprMetaChars (const AStr : RegExprString) : RegExprString; +// Replace all metachars with its safe representation, +// for example 'abc$cd.(' converts into 'abc\$cd\.\(' +// This function usefull for r.e. autogeneration from +// user input + +function RegExprSubExpressions (const ARegExpr : string; + ASubExprs : TStrings; AExtendedSyntax : boolean{$IFDEF DefParam}= False{$ENDIF}) : integer; +// Makes list of subexpressions found in ARegExpr r.e. +// In ASubExps every item represent subexpression, +// from first to last, in format: +// String - subexpression text (without '()') +// low word of Object - starting position in ARegExpr, including '(' +// if exists! (first position is 1) +// high word of Object - length, including starting '(' and ending ')' +// if exist! +// AExtendedSyntax - must be True if modifier /m will be On while +// using the r.e. +// Usefull for GUI editors of r.e. etc (You can find example of using +// in TestRExp.dpr project) +// Returns +// 0 Success. No unbalanced brackets was found; +// -1 There are not enough closing brackets ')'; +// -(n+1) At position n was found opening '[' without //###0.942 +// corresponding closing ']'; +// n At position n was found closing bracket ')' without +// corresponding opening '('. +// If Result <> 0, then ASubExpr can contain empty items or illegal ones + + +implementation + +uses + Windows; // CharUpper/Lower + +const + TRegExprVersionMajor : integer = 0; + TRegExprVersionMinor : integer = 952; + // TRegExpr.VersionMajor/Minor return values of this constants + + MaskModI = 1; // modifier /i bit in fModifiers + MaskModR = 2; // -"- /r + MaskModS = 4; // -"- /s + MaskModG = 8; // -"- /g + MaskModM = 16; // -"- /m + MaskModX = 32; // -"- /x + + {$IFDEF UniCode} + XIgnoredChars = ' '#9#$d#$a; + {$ELSE} + XIgnoredChars = [' ', #9, #$d, #$a]; + {$ENDIF} + +{=============================================================} +{=================== WideString functions ====================} +{=============================================================} + +{$IFDEF UniCode} + +function StrPCopy (Dest: PRegExprChar; const Source: RegExprString): PRegExprChar; + var + i, Len : Integer; + begin + Len := length (Source); //###0.932 + for i := 1 to Len do + Dest [i - 1] := Source [i]; + Dest [Len] := #0; + Result := Dest; + end; { of function StrPCopy +--------------------------------------------------------------} + +function StrLCopy (Dest, Source: PRegExprChar; MaxLen: Cardinal): PRegExprChar; + var i: Integer; + begin + for i := 0 to MaxLen - 1 do + Dest [i] := Source [i]; + Result := Dest; + end; { of function StrLCopy +--------------------------------------------------------------} + +function StrLen (Str: PRegExprChar): Cardinal; + begin + Result:=0; + while Str [result] <> #0 + do Inc (Result); + end; { of function StrLen +--------------------------------------------------------------} + +function StrPos (Str1, Str2: PRegExprChar): PRegExprChar; + var n: Integer; + begin + Result := nil; + n := Pos (RegExprString (Str2), RegExprString (Str1)); + if n = 0 + then EXIT; + Result := Str1 + n - 1; + end; { of function StrPos +--------------------------------------------------------------} + +function StrLComp (Str1, Str2: PRegExprChar; MaxLen: Cardinal): Integer; + var S1, S2: RegExprString; + begin + S1 := Str1; + S2 := Str2; + if Copy (S1, 1, MaxLen) > Copy (S2, 1, MaxLen) + then Result := 1 + else + if Copy (S1, 1, MaxLen) < Copy (S2, 1, MaxLen) + then Result := -1 + else Result := 0; + end; { function StrLComp +--------------------------------------------------------------} + +function StrScan (Str: PRegExprChar; Chr: WideChar): PRegExprChar; + begin + Result := nil; + while (Str^ <> #0) and (Str^ <> Chr) + do Inc (Str); + if (Str^ <> #0) + then Result := Str; + end; { of function StrScan +--------------------------------------------------------------} + +{$ENDIF} + + +{=============================================================} +{===================== Global functions ======================} +{=============================================================} + +function ExecRegExpr (const ARegExpr, AInputStr : RegExprString) : boolean; + var r : TRegExpr; + begin + r := TRegExpr.Create; + try + r.Expression := ARegExpr; + Result := r.Exec (AInputStr); + finally r.Free; + end; + end; { of function ExecRegExpr +--------------------------------------------------------------} + +procedure SplitRegExpr (const ARegExpr, AInputStr : RegExprString; APieces : TStrings); + var r : TRegExpr; + begin + APieces.Clear; + r := TRegExpr.Create; + try + r.Expression := ARegExpr; + r.Split (AInputStr, APieces); + finally r.Free; + end; + end; { of procedure SplitRegExpr +--------------------------------------------------------------} + +function ReplaceRegExpr (const ARegExpr, AInputStr, AReplaceStr : RegExprString; + AUseSubstitution : boolean{$IFDEF DefParam}= False{$ENDIF}) : RegExprString; + begin + with TRegExpr.Create do try + Expression := ARegExpr; + Result := Replace (AInputStr, AReplaceStr, AUseSubstitution); + finally Free; + end; + end; { of function ReplaceRegExpr +--------------------------------------------------------------} + +function QuoteRegExprMetaChars (const AStr : RegExprString) : RegExprString; + const + RegExprMetaSet : RegExprString = '^$.[()|?+*'+EscChar+'{' + + ']}'; // - this last are additional to META. + // Very similar to META array, but slighly changed. + // !Any changes in META array must be synchronized with this set. + var + i, i0, Len : integer; + begin + Result := ''; + Len := length (AStr); + i := 1; + i0 := i; + while i <= Len do begin + if Pos (AStr [i], RegExprMetaSet) > 0 then begin + Result := Result + System.Copy (AStr, i0, i - i0) + + EscChar + AStr [i]; + i0 := i + 1; + end; + inc (i); + end; + Result := Result + System.Copy (AStr, i0, MaxInt); // Tail + end; { of function QuoteRegExprMetaChars +--------------------------------------------------------------} + +function RegExprSubExpressions (const ARegExpr : string; + ASubExprs : TStrings; AExtendedSyntax : boolean{$IFDEF DefParam}= False{$ENDIF}) : integer; + type + TStackItemRec = record //###0.945 + SubExprIdx : integer; + StartPos : integer; + end; + TStackArray = packed array [0 .. NSUBEXPMAX - 1] of TStackItemRec; + var + Len, SubExprLen : integer; + i, i0 : integer; + Modif : integer; + Stack : ^TStackArray; //###0.945 + StackIdx, StackSz : integer; + begin + Result := 0; // no unbalanced brackets found at this very moment + + ASubExprs.Clear; // I don't think that adding to non empty list + // can be usefull, so I simplified algorithm to work only with empty list + + Len := length (ARegExpr); // some optimization tricks + + // first we have to calculate number of subexpression to reserve + // space in Stack array (may be we'll reserve more then need, but + // it's faster then memory reallocation during parsing) + StackSz := 1; // add 1 for entire r.e. + for i := 1 to Len do + if ARegExpr [i] = '(' + then inc (StackSz); +// SetLength (Stack, StackSz); //###0.945 + GetMem (Stack, SizeOf (TStackItemRec) * StackSz); + try + + StackIdx := 0; + i := 1; + while (i <= Len) do begin + case ARegExpr [i] of + '(': begin + if (i < Len) and (ARegExpr [i + 1] = '?') then begin + // this is not subexpression, but comment or other + // Perl extension. We must check is it (?ismxrg-ismxrg) + // and change AExtendedSyntax if /x is changed. + inc (i, 2); // skip '(?' + i0 := i; + while (i <= Len) and (ARegExpr [i] <> ')') + do inc (i); + if i > Len + then Result := -1 // unbalansed '(' + else + if TRegExpr.ParseModifiersStr (System.Copy (ARegExpr, i, i - i0), Modif) + then AExtendedSyntax := (Modif and MaskModX) <> 0; + end + else begin // subexpression starts + ASubExprs.Add (''); // just reserve space + with Stack [StackIdx] do begin + SubExprIdx := ASubExprs.Count - 1; + StartPos := i; + end; + inc (StackIdx); + end; + end; + ')': begin + if StackIdx = 0 + then Result := i // unbalanced ')' + else begin + dec (StackIdx); + with Stack [StackIdx] do begin + SubExprLen := i - StartPos + 1; + ASubExprs.Objects [SubExprIdx] := + TObject (StartPos or (SubExprLen ShL 16)); + ASubExprs [SubExprIdx] := System.Copy ( + ARegExpr, StartPos + 1, SubExprLen - 2); // add without brackets + end; + end; + end; + EscChar: inc (i); // skip quoted symbol + '[': begin + // we have to skip character ranges at once, because they can + // contain '#', and '#' in it must NOT be recognized as eXtended + // comment beginning! + i0 := i; + inc (i); + if ARegExpr [i] = ']' // cannot be 'emty' ranges - this interpretes + then inc (i); // as ']' by itself + while (i <= Len) and (ARegExpr [i] <> ']') do + if ARegExpr [i] = EscChar //###0.942 + then inc (i, 2) // skip 'escaped' char to prevent stopping at '\]' + else inc (i); + if (i > Len) or (ARegExpr [i] <> ']') //###0.942 + then Result := - (i0 + 1); // unbalansed '[' //###0.942 + end; + '#': if AExtendedSyntax then begin + // skip eXtended comments + while (i <= Len) and (ARegExpr [i] <> #$d) and (ARegExpr [i] <> #$a) + // do not use [#$d, #$a] due to UniCode compatibility + do inc (i); + while (i + 1 <= Len) and ((ARegExpr [i + 1] = #$d) or (ARegExpr [i + 1] = #$a)) + do inc (i); // attempt to work with different kinds of line separators + // now we are at the line separator that must be skipped. + end; + // here is no 'else' clause - we simply skip ordinary chars + end; // of case + inc (i); // skip scanned char + // ! can move after Len due to skipping quoted symbol + end; + + // check brackets balance + if StackIdx <> 0 + then Result := -1; // unbalansed '(' + + // check if entire r.e. added + if (ASubExprs.Count = 0) + or ((integer (ASubExprs.Objects [0]) and $FFFF) <> 1) + or (((integer (ASubExprs.Objects [0]) ShR 16) and $FFFF) <> Len) + // whole r.e. wasn't added because it isn't bracketed + // well, we add it now: + then ASubExprs.InsertObject (0, ARegExpr, TObject ((Len ShL 16) or 1)); + + finally FreeMem (Stack); + end; + end; { of function RegExprSubExpressions +--------------------------------------------------------------} + + + +const + MAGIC = TREOp (216);// programm signature + +// name opcode opnd? meaning + EEND = TREOp (0); // - End of program + BOL = TREOp (1); // - Match "" at beginning of line + EOL = TREOp (2); // - Match "" at end of line + ANY = TREOp (3); // - Match any one character + ANYOF = TREOp (4); // Str Match any character in string Str + ANYBUT = TREOp (5); // Str Match any char. not in string Str + BRANCH = TREOp (6); // Node Match this alternative, or the next + BACK = TREOp (7); // - Jump backward (Next < 0) + EXACTLY = TREOp (8); // Str Match string Str + NOTHING = TREOp (9); // - Match empty string + STAR = TREOp (10); // Node Match this (simple) thing 0 or more times + PLUS = TREOp (11); // Node Match this (simple) thing 1 or more times + ANYDIGIT = TREOp (12); // - Match any digit (equiv [0-9]) + NOTDIGIT = TREOp (13); // - Match not digit (equiv [0-9]) + ANYLETTER = TREOp (14); // - Match any letter from property WordChars + NOTLETTER = TREOp (15); // - Match not letter from property WordChars + ANYSPACE = TREOp (16); // - Match any space char (see property SpaceChars) + NOTSPACE = TREOp (17); // - Match not space char (see property SpaceChars) + BRACES = TREOp (18); // Node,Min,Max Match this (simple) thing from Min to Max times. + // Min and Max are TREBracesArg + COMMENT = TREOp (19); // - Comment ;) + EXACTLYCI = TREOp (20); // Str Match string Str case insensitive + ANYOFCI = TREOp (21); // Str Match any character in string Str, case insensitive + ANYBUTCI = TREOp (22); // Str Match any char. not in string Str, case insensitive + LOOPENTRY = TREOp (23); // Node Start of loop (Node - LOOP for this loop) + LOOP = TREOp (24); // Node,Min,Max,LoopEntryJmp - back jump for LOOPENTRY. + // Min and Max are TREBracesArg + // Node - next node in sequence, + // LoopEntryJmp - associated LOOPENTRY node addr + ANYOFTINYSET= TREOp (25); // Chrs Match any one char from Chrs (exactly TinySetLen chars) + ANYBUTTINYSET=TREOp (26); // Chrs Match any one char not in Chrs (exactly TinySetLen chars) + ANYOFFULLSET= TREOp (27); // Set Match any one char from set of char + // - very fast (one CPU instruction !) but takes 32 bytes of p-code + BSUBEXP = TREOp (28); // Idx Match previously matched subexpression #Idx (stored as REChar) //###0.936 + BSUBEXPCI = TREOp (29); // Idx -"- in case-insensitive mode + + // Non-Greedy Style Ops //###0.940 + STARNG = TREOp (30); // Same as START but in non-greedy mode + PLUSNG = TREOp (31); // Same as PLUS but in non-greedy mode + BRACESNG = TREOp (32); // Same as BRACES but in non-greedy mode + LOOPNG = TREOp (33); // Same as LOOP but in non-greedy mode + + // Multiline mode \m + BOLML = TREOp (34); // - Match "" at beginning of line + EOLML = TREOp (35); // - Match "" at end of line + ANYML = TREOp (36); // - Match any one character + + // Word boundary + BOUND = TREOp (37); // Match "" between words //###0.943 + NOTBOUND = TREOp (38); // Match "" not between words //###0.943 + + // !!! Change OPEN value if you add new opcodes !!! + + OPEN = TREOp (39); // - Mark this point in input as start of \n + // OPEN + 1 is \1, etc. + CLOSE = TREOp (ord (OPEN) + NSUBEXP); + // - Analogous to OPEN. + + // !!! Don't add new OpCodes after CLOSE !!! + +// We work with p-code thru pointers, compatible with PRegExprChar. +// Note: all code components (TRENextOff, TREOp, TREBracesArg, etc) +// must have lengths that can be divided by SizeOf (REChar) ! +// A node is TREOp of opcode followed Next "pointer" of TRENextOff type. +// The Next is a offset from the opcode of the node containing it. +// An operand, if any, simply follows the node. (Note that much of +// the code generation knows about this implicit relationship!) +// Using TRENextOff=integer speed up p-code processing. + +// Opcodes description: +// +// BRANCH The set of branches constituting a single choice are hooked +// together with their "next" pointers, since precedence prevents +// anything being concatenated to any individual branch. The +// "next" pointer of the last BRANCH in a choice points to the +// thing following the whole choice. This is also where the +// final "next" pointer of each individual branch points; each +// branch starts with the operand node of a BRANCH node. +// BACK Normal "next" pointers all implicitly point forward; BACK +// exists to make loop structures possible. +// STAR,PLUS,BRACES '?', and complex '*' and '+', are implemented as +// circular BRANCH structures using BACK. Complex '{min,max}' +// - as pair LOOPENTRY-LOOP (see below). Simple cases (one +// character per match) are implemented with STAR, PLUS and +// BRACES for speed and to minimize recursive plunges. +// LOOPENTRY,LOOP {min,max} are implemented as special pair +// LOOPENTRY-LOOP. Each LOOPENTRY initialize loopstack for +// current level. +// OPEN,CLOSE are numbered at compile time. + + +{=============================================================} +{================== Error handling section ===================} +{=============================================================} + +const + reeOk = 0; + reeCompNullArgument = 100; + reeCompRegexpTooBig = 101; + reeCompParseRegTooManyBrackets = 102; + reeCompParseRegUnmatchedBrackets = 103; + reeCompParseRegUnmatchedBrackets2 = 104; + reeCompParseRegJunkOnEnd = 105; + reePlusStarOperandCouldBeEmpty = 106; + reeNestedSQP = 107; + reeBadHexDigit = 108; + reeInvalidRange = 109; + reeParseAtomTrailingBackSlash = 110; + reeNoHexCodeAfterBSlashX = 111; + reeHexCodeAfterBSlashXTooBig = 112; + reeUnmatchedSqBrackets = 113; + reeInternalUrp = 114; + reeQPSBFollowsNothing = 115; + reeTrailingBackSlash = 116; + reeRarseAtomInternalDisaster = 119; + reeBRACESArgTooBig = 122; + reeBracesMinParamGreaterMax = 124; + reeUnclosedComment = 125; + reeComplexBracesNotImplemented = 126; + reeUrecognizedModifier = 127; + reeBadLinePairedSeparator = 128; + reeRegRepeatCalledInappropriately = 1000; + reeMatchPrimMemoryCorruption = 1001; + reeMatchPrimCorruptedPointers = 1002; + reeNoExpression = 1003; + reeCorruptedProgram = 1004; + reeNoInpitStringSpecified = 1005; + reeOffsetMustBeGreaterThen0 = 1006; + reeExecNextWithoutExec = 1007; + reeGetInputStringWithoutInputString = 1008; + reeDumpCorruptedOpcode = 1011; + reeModifierUnsupported = 1013; + reeLoopStackExceeded = 1014; + reeLoopWithoutEntry = 1015; + reeBadPCodeImported = 2000; + +function TRegExpr.ErrorMsg (AErrorID : integer) : RegExprString; + begin + case AErrorID of + reeOk: Result := 'No errors'; + reeCompNullArgument: Result := 'TRegExpr(comp): Null Argument'; + reeCompRegexpTooBig: Result := 'TRegExpr(comp): Regexp Too Big'; + reeCompParseRegTooManyBrackets: Result := 'TRegExpr(comp): ParseReg Too Many ()'; + reeCompParseRegUnmatchedBrackets: Result := 'TRegExpr(comp): ParseReg Unmatched ()'; + reeCompParseRegUnmatchedBrackets2: Result := 'TRegExpr(comp): ParseReg Unmatched ()'; + reeCompParseRegJunkOnEnd: Result := 'TRegExpr(comp): ParseReg Junk On End'; + reePlusStarOperandCouldBeEmpty: Result := 'TRegExpr(comp): *+ Operand Could Be Empty'; + reeNestedSQP: Result := 'TRegExpr(comp): Nested *?+'; + reeBadHexDigit: Result := 'TRegExpr(comp): Bad Hex Digit'; + reeInvalidRange: Result := 'TRegExpr(comp): Invalid [] Range'; + reeParseAtomTrailingBackSlash: Result := 'TRegExpr(comp): Parse Atom Trailing \'; + reeNoHexCodeAfterBSlashX: Result := 'TRegExpr(comp): No Hex Code After \x'; + reeHexCodeAfterBSlashXTooBig: Result := 'TRegExpr(comp): Hex Code After \x Is Too Big'; + reeUnmatchedSqBrackets: Result := 'TRegExpr(comp): Unmatched []'; + reeInternalUrp: Result := 'TRegExpr(comp): Internal Urp'; + reeQPSBFollowsNothing: Result := 'TRegExpr(comp): ?+*{ Follows Nothing'; + reeTrailingBackSlash: Result := 'TRegExpr(comp): Trailing \'; + reeRarseAtomInternalDisaster: Result := 'TRegExpr(comp): RarseAtom Internal Disaster'; + reeBRACESArgTooBig: Result := 'TRegExpr(comp): BRACES Argument Too Big'; + reeBracesMinParamGreaterMax: Result := 'TRegExpr(comp): BRACE Min Param Greater then Max'; + reeUnclosedComment: Result := 'TRegExpr(comp): Unclosed (?#Comment)'; + reeComplexBracesNotImplemented: Result := 'TRegExpr(comp): If you want take part in beta-testing BRACES ''{min,max}'' and non-greedy ops ''*?'', ''+?'', ''??'' for complex cases - remove ''.'' from {.$DEFINE ComplexBraces}'; + reeUrecognizedModifier: Result := 'TRegExpr(comp): Urecognized Modifier'; + reeBadLinePairedSeparator: Result := 'TRegExpr(comp): LinePairedSeparator must countain two different chars or no chars at all'; + + reeRegRepeatCalledInappropriately: Result := 'TRegExpr(exec): RegRepeat Called Inappropriately'; + reeMatchPrimMemoryCorruption: Result := 'TRegExpr(exec): MatchPrim Memory Corruption'; + reeMatchPrimCorruptedPointers: Result := 'TRegExpr(exec): MatchPrim Corrupted Pointers'; + reeNoExpression: Result := 'TRegExpr(exec): Not Assigned Expression Property'; + reeCorruptedProgram: Result := 'TRegExpr(exec): Corrupted Program'; + reeNoInpitStringSpecified: Result := 'TRegExpr(exec): No Input String Specified'; + reeOffsetMustBeGreaterThen0: Result := 'TRegExpr(exec): Offset Must Be Greater Then 0'; + reeExecNextWithoutExec: Result := 'TRegExpr(exec): ExecNext Without Exec[Pos]'; + reeGetInputStringWithoutInputString: Result := 'TRegExpr(exec): GetInputString Without InputString'; + reeDumpCorruptedOpcode: Result := 'TRegExpr(dump): Corrupted Opcode'; + reeLoopStackExceeded: Result := 'TRegExpr(exec): Loop Stack Exceeded'; + reeLoopWithoutEntry: Result := 'TRegExpr(exec): Loop Without LoopEntry !'; + + reeBadPCodeImported: Result := 'TRegExpr(misc): Bad p-code imported'; + else Result := 'Unknown error'; + end; + end; { of procedure TRegExpr.Error +--------------------------------------------------------------} + +function TRegExpr.LastError : integer; + begin + Result := fLastError; + fLastError := reeOk; + end; { of function TRegExpr.LastError +--------------------------------------------------------------} + + +{=============================================================} +{===================== Common section ========================} +{=============================================================} + +class function TRegExpr.VersionMajor : integer; //###0.944 + begin + Result := TRegExprVersionMajor; + end; { of class function TRegExpr.VersionMajor +--------------------------------------------------------------} + +class function TRegExpr.VersionMinor : integer; //###0.944 + begin + Result := TRegExprVersionMinor; + end; { of class function TRegExpr.VersionMinor +--------------------------------------------------------------} + +constructor TRegExpr.Create; + begin + inherited; + programm := nil; + fExpression := nil; + fInputString := nil; + + regexpbeg := nil; + fExprIsCompiled := false; + + ModifierI := RegExprModifierI; + ModifierR := RegExprModifierR; + ModifierS := RegExprModifierS; + ModifierG := RegExprModifierG; + ModifierM := RegExprModifierM; //###0.940 + + SpaceChars := RegExprSpaceChars; //###0.927 + WordChars := RegExprWordChars; //###0.929 + fInvertCase := RegExprInvertCaseFunction; //###0.927 + + fLineSeparators := RegExprLineSeparators; //###0.941 + LinePairedSeparator := RegExprLinePairedSeparator; //###0.941 + end; { of constructor TRegExpr.Create +--------------------------------------------------------------} + +destructor TRegExpr.Destroy; + begin + if programm <> nil + then FreeMem (programm); + if fExpression <> nil + then FreeMem (fExpression); + if fInputString <> nil + then FreeMem (fInputString); + end; { of destructor TRegExpr.Destroy +--------------------------------------------------------------} + +class function TRegExpr.InvertCaseFunction (const Ch : REChar) : REChar; + begin + {$IFDEF UniCode} + if Ch >= #128 + then Result := Ch + else + {$ENDIF} + begin + Result := {$IFDEF FPC}AnsiUpperCase (Ch) [1]{$ELSE} REChar (CharUpper (PChar (Ch))){$ENDIF}; + if Result = Ch + then Result := {$IFDEF FPC}AnsiLowerCase (Ch) [1]{$ELSE} REChar (CharLower (PChar (Ch))){$ENDIF}; + end; + end; { of function TRegExpr.InvertCaseFunction +--------------------------------------------------------------} + +function TRegExpr.GetExpression : RegExprString; + begin + if fExpression <> nil + then Result := fExpression + else Result := ''; + end; { of function TRegExpr.GetExpression +--------------------------------------------------------------} + +procedure TRegExpr.SetExpression (const s : RegExprString); + var + Len : integer; //###0.950 + begin + if (s <> fExpression) or not fExprIsCompiled then begin + fExprIsCompiled := false; + if fExpression <> nil then begin + FreeMem (fExpression); + fExpression := nil; + end; + if s <> '' then begin + Len := length (s); //###0.950 + GetMem (fExpression, (Len + 1) * SizeOf (REChar)); +// StrPCopy (fExpression, s); //###0.950 replaced due to StrPCopy limitation of 255 chars + {$IFDEF UniCode} + StrPCopy (fExpression, Copy (s, 1, Len)); //###0.950 + {$ELSE} + StrLCopy (fExpression, PRegExprChar (s), Len); //###0.950 + {$ENDIF UniCode} + + InvalidateProgramm; //###0.941 + end; + end; + end; { of procedure TRegExpr.SetExpression +--------------------------------------------------------------} + +function TRegExpr.GetSubExprMatchCount : integer; + begin + if Assigned (fInputString) then begin + Result := NSUBEXP - 1; + while (Result > 0) and ((startp [Result] = nil) + or (endp [Result] = nil)) + do dec (Result); + end + else Result := -1; + end; { of function TRegExpr.GetSubExprMatchCount +--------------------------------------------------------------} + +function TRegExpr.GetMatchPos (Idx : integer) : integer; + begin + if (Idx >= 0) and (Idx < NSUBEXP) and Assigned (fInputString) + and Assigned (startp [Idx]) and Assigned (endp [Idx]) then begin + Result := (startp [Idx] - fInputString) + 1; + end + else Result := -1; + end; { of function TRegExpr.GetMatchPos +--------------------------------------------------------------} + +function TRegExpr.GetMatchLen (Idx : integer) : integer; + begin + if (Idx >= 0) and (Idx < NSUBEXP) and Assigned (fInputString) + and Assigned (startp [Idx]) and Assigned (endp [Idx]) then begin + Result := endp [Idx] - startp [Idx]; + end + else Result := -1; + end; { of function TRegExpr.GetMatchLen +--------------------------------------------------------------} + +function TRegExpr.GetMatch (Idx : integer) : RegExprString; + begin + if (Idx >= 0) and (Idx < NSUBEXP) and Assigned (fInputString) + and Assigned (startp [Idx]) and Assigned (endp [Idx]) + //then Result := copy (fInputString, MatchPos [Idx], MatchLen [Idx]) //###0.929 + then SetString (Result, startp [idx], endp [idx] - startp [idx]) + else Result := ''; + end; { of function TRegExpr.GetMatch +--------------------------------------------------------------} + +function TRegExpr.GetModifierStr : RegExprString; + begin + Result := '-'; + + if ModifierI + then Result := 'i' + Result + else Result := Result + 'i'; + if ModifierR + then Result := 'r' + Result + else Result := Result + 'r'; + if ModifierS + then Result := 's' + Result + else Result := Result + 's'; + if ModifierG + then Result := 'g' + Result + else Result := Result + 'g'; + if ModifierM + then Result := 'm' + Result + else Result := Result + 'm'; + if ModifierX + then Result := 'x' + Result + else Result := Result + 'x'; + + if Result [length (Result)] = '-' // remove '-' if all modifiers are 'On' + then System.Delete (Result, length (Result), 1); + end; { of function TRegExpr.GetModifierStr +--------------------------------------------------------------} + +class function TRegExpr.ParseModifiersStr (const AModifiers : RegExprString; +var AModifiersInt : integer) : boolean; +// !!! Be carefull - this is class function and must not use object instance fields + var + i : integer; + IsOn : boolean; + Mask : integer; + begin + Result := true; + IsOn := true; + Mask := 0; // prevent compiler warning + for i := 1 to length (AModifiers) do + if AModifiers [i] = '-' + then IsOn := false + else begin + if Pos (AModifiers [i], 'iI') > 0 + then Mask := MaskModI + else if Pos (AModifiers [i], 'rR') > 0 + then Mask := MaskModR + else if Pos (AModifiers [i], 'sS') > 0 + then Mask := MaskModS + else if Pos (AModifiers [i], 'gG') > 0 + then Mask := MaskModG + else if Pos (AModifiers [i], 'mM') > 0 + then Mask := MaskModM + else if Pos (AModifiers [i], 'xX') > 0 + then Mask := MaskModX + else begin + Result := false; + EXIT; + end; + if IsOn + then AModifiersInt := AModifiersInt or Mask + else AModifiersInt := AModifiersInt and not Mask; + end; + end; { of function TRegExpr.ParseModifiersStr +--------------------------------------------------------------} + +procedure TRegExpr.SetModifierStr (const AModifiers : RegExprString); + begin + if not ParseModifiersStr (AModifiers, fModifiers) + then Error (reeModifierUnsupported); + end; { of procedure TRegExpr.SetModifierStr +--------------------------------------------------------------} + +function TRegExpr.GetModifier (AIndex : integer) : boolean; + var + Mask : integer; + begin + Result := false; + case AIndex of + 1: Mask := MaskModI; + 2: Mask := MaskModR; + 3: Mask := MaskModS; + 4: Mask := MaskModG; + 5: Mask := MaskModM; + 6: Mask := MaskModX; + else begin + Error (reeModifierUnsupported); + EXIT; + end; + end; + Result := (fModifiers and Mask) <> 0; + end; { of function TRegExpr.GetModifier +--------------------------------------------------------------} + +procedure TRegExpr.SetModifier (AIndex : integer; ASet : boolean); + var + Mask : integer; + begin + case AIndex of + 1: Mask := MaskModI; + 2: Mask := MaskModR; + 3: Mask := MaskModS; + 4: Mask := MaskModG; + 5: Mask := MaskModM; + 6: Mask := MaskModX; + else begin + Error (reeModifierUnsupported); + EXIT; + end; + end; + if ASet + then fModifiers := fModifiers or Mask + else fModifiers := fModifiers and not Mask; + end; { of procedure TRegExpr.SetModifier +--------------------------------------------------------------} + + +{=============================================================} +{==================== Compiler section =======================} +{=============================================================} + +procedure TRegExpr.InvalidateProgramm; + begin + if programm <> nil then begin + FreeMem (programm); + programm := nil; + end; + end; { of procedure TRegExpr.InvalidateProgramm +--------------------------------------------------------------} + +procedure TRegExpr.Compile; //###0.941 + begin + if fExpression = nil then begin // No Expression assigned + Error (reeNoExpression); + EXIT; + end; + CompileRegExpr (fExpression); + end; { of procedure TRegExpr.Compile +--------------------------------------------------------------} + +function TRegExpr.IsProgrammOk : boolean; + {$IFNDEF UniCode} + var + i : integer; + {$ENDIF} + begin + Result := false; + + // check modifiers + if fModifiers <> fProgModifiers //###0.941 + then InvalidateProgramm; + + // can we optimize line separators by using sets? + {$IFNDEF UniCode} + fLineSeparatorsSet := []; + for i := 1 to length (fLineSeparators) + do System.Include (fLineSeparatorsSet, fLineSeparators [i]); + {$ENDIF} + + // [Re]compile if needed + if programm = nil + then Compile; //###0.941 + + // check [re]compiled programm + if programm = nil + then EXIT // error was set/raised by Compile (was reeExecAfterCompErr) + else if programm [0] <> MAGIC // Program corrupted. + then Error (reeCorruptedProgram) + else Result := true; + end; { of function TRegExpr.IsProgrammOk +--------------------------------------------------------------} + +procedure TRegExpr.Tail (p : PRegExprChar; val : PRegExprChar); +// set the next-pointer at the end of a node chain + var + scan : PRegExprChar; + temp : PRegExprChar; +// i : int64; + begin + if p = @regdummy + then EXIT; + // Find last node. + scan := p; + REPEAT + temp := regnext (scan); + if temp = nil + then BREAK; + scan := temp; + UNTIL false; + // Set Next 'pointer' + if val < scan + then PRENextOff (scan + REOpSz)^ := - (scan - val) //###0.948 + // work around PWideChar subtraction bug (Delphi uses + // shr after subtraction to calculate widechar distance %-( ) + // so, if difference is negative we have .. the "feature" :( + // I could wrap it in $IFDEF UniCode, but I didn't because + // "P – Q computes the difference between the address given + // by P (the higher address) and the address given by Q (the + // lower address)" - Delphi help quotation. + else PRENextOff (scan + REOpSz)^ := val - scan; //###0.933 + end; { of procedure TRegExpr.Tail +--------------------------------------------------------------} + +procedure TRegExpr.OpTail (p : PRegExprChar; val : PRegExprChar); +// regtail on operand of first argument; nop if operandless + begin + // "Operandless" and "op != BRANCH" are synonymous in practice. + if (p = nil) or (p = @regdummy) or (PREOp (p)^ <> BRANCH) + then EXIT; + Tail (p + REOpSz + RENextOffSz, val); //###0.933 + end; { of procedure TRegExpr.OpTail +--------------------------------------------------------------} + +function TRegExpr.EmitNode (op : TREOp) : PRegExprChar; //###0.933 +// emit a node, return location + begin + Result := regcode; + if Result <> @regdummy then begin + PREOp (regcode)^ := op; + inc (regcode, REOpSz); + PRENextOff (regcode)^ := 0; // Next "pointer" := nil + inc (regcode, RENextOffSz); + end + else inc (regsize, REOpSz + RENextOffSz); // compute code size without code generation + end; { of function TRegExpr.EmitNode +--------------------------------------------------------------} + +procedure TRegExpr.EmitC (b : REChar); +// emit a byte to code + begin + if regcode <> @regdummy then begin + regcode^ := b; + inc (regcode); + end + else inc (regsize); // Type of p-code pointer always is ^REChar + end; { of procedure TRegExpr.EmitC +--------------------------------------------------------------} + +procedure TRegExpr.InsertOperator (op : TREOp; opnd : PRegExprChar; sz : integer); +// insert an operator in front of already-emitted operand +// Means relocating the operand. + var + src, dst, place : PRegExprChar; + i : integer; + begin + if regcode = @regdummy then begin + inc (regsize, sz); + EXIT; + end; + src := regcode; + inc (regcode, sz); + dst := regcode; + while src > opnd do begin + dec (dst); + dec (src); + dst^ := src^; + end; + place := opnd; // Op node, where operand used to be. + PREOp (place)^ := op; + inc (place, REOpSz); + for i := 1 + REOpSz to sz do begin + place^ := #0; + inc (place); + end; + end; { of procedure TRegExpr.InsertOperator +--------------------------------------------------------------} + +function strcspn (s1 : PRegExprChar; s2 : PRegExprChar) : integer; +// find length of initial segment of s1 consisting +// entirely of characters not from s2 + var scan1, scan2 : PRegExprChar; + begin + Result := 0; + scan1 := s1; + while scan1^ <> #0 do begin + scan2 := s2; + while scan2^ <> #0 do + if scan1^ = scan2^ + then EXIT + else inc (scan2); + inc (Result); + inc (scan1) + end; + end; { of function strcspn +--------------------------------------------------------------} + +const +// Flags to be passed up and down. + HASWIDTH = 01; // Known never to match nil string. + SIMPLE = 02; // Simple enough to be STAR/PLUS/BRACES operand. + SPSTART = 04; // Starts with * or +. + WORST = 0; // Worst case. + META : array [0 .. 12] of REChar = ( + '^', '$', '.', '[', '(', ')', '|', '?', '+', '*', EscChar, '{', #0); + // Any modification must be synchronized with QuoteRegExprMetaChars !!! + +{$IFDEF UniCode} + RusRangeLo : array [0 .. 33] of REChar = + (#$430,#$431,#$432,#$433,#$434,#$435,#$451,#$436,#$437, + #$438,#$439,#$43A,#$43B,#$43C,#$43D,#$43E,#$43F, + #$440,#$441,#$442,#$443,#$444,#$445,#$446,#$447, + #$448,#$449,#$44A,#$44B,#$44C,#$44D,#$44E,#$44F,#0); + RusRangeHi : array [0 .. 33] of REChar = + (#$410,#$411,#$412,#$413,#$414,#$415,#$401,#$416,#$417, + #$418,#$419,#$41A,#$41B,#$41C,#$41D,#$41E,#$41F, + #$420,#$421,#$422,#$423,#$424,#$425,#$426,#$427, + #$428,#$429,#$42A,#$42B,#$42C,#$42D,#$42E,#$42F,#0); + RusRangeLoLow = #$430{'à'}; + RusRangeLoHigh = #$44F{'ÿ'}; + RusRangeHiLow = #$410{'À'}; + RusRangeHiHigh = #$42F{'ß'}; +{$ELSE} + RusRangeLo = 'àáâãä叿çèéêëìíîïðñòóôõö÷øùúûüýþÿ'; + RusRangeHi = 'ÀÁÂÃÄŨÆÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖרÙÚÛÜÝÞß'; + RusRangeLoLow = 'à'; + RusRangeLoHigh = 'ÿ'; + RusRangeHiLow = 'À'; + RusRangeHiHigh = 'ß'; +{$ENDIF} + +function TRegExpr.CompileRegExpr (exp : PRegExprChar) : boolean; +// compile a regular expression into internal code +// We can't allocate space until we know how big the compiled form will be, +// but we can't compile it (and thus know how big it is) until we've got a +// place to put the code. So we cheat: we compile it twice, once with code +// generation turned off and size counting turned on, and once "for real". +// This also means that we don't allocate space until we are sure that the +// thing really will compile successfully, and we never have to move the +// code and thus invalidate pointers into it. (Note that it has to be in +// one piece because free() must be able to free it all.) +// Beware that the optimization-preparation code in here knows about some +// of the structure of the compiled regexp. + var + scan, longest : PRegExprChar; + len : cardinal; + flags : integer; + begin + Result := false; // life too dark + + regparse := nil; // for correct error handling + regexpbeg := exp; + try + + if programm <> nil then begin + FreeMem (programm); + programm := nil; + end; + + if exp = nil then begin + Error (reeCompNullArgument); + EXIT; + end; + + fProgModifiers := fModifiers; + // well, may it's paranoia. I'll check it later... !!!!!!!! + + // First pass: determine size, legality. + fCompModifiers := fModifiers; + regparse := exp; + regnpar := 1; + regsize := 0; + regcode := @regdummy; + EmitC (MAGIC); + if ParseReg (0, flags) = nil + then EXIT; + + // Small enough for 2-bytes programm pointers ? + // ###0.933 no real p-code length limits now :))) +// if regsize >= 64 * 1024 then begin +// Error (reeCompRegexpTooBig); +// EXIT; +// end; + + // Allocate space. + GetMem (programm, regsize * SizeOf (REChar)); + + // Second pass: emit code. + fCompModifiers := fModifiers; + regparse := exp; + regnpar := 1; + regcode := programm; + EmitC (MAGIC); + if ParseReg (0, flags) = nil + then EXIT; + + // Dig out information for optimizations. + {$IFDEF UseFirstCharSet} //###0.929 + FirstCharSet := []; + FillFirstCharSet (programm + REOpSz); + {$ENDIF} + regstart := #0; // Worst-case defaults. + reganch := #0; + regmust := nil; + regmlen := 0; + scan := programm + REOpSz; // First BRANCH. + if PREOp (regnext (scan))^ = EEND then begin // Only one top-level choice. + scan := scan + REOpSz + RENextOffSz; + + // Starting-point info. + if PREOp (scan)^ = EXACTLY + then regstart := (scan + REOpSz + RENextOffSz)^ + else if PREOp (scan)^ = BOL + then inc (reganch); + + // If there's something expensive in the r.e., find the longest + // literal string that must appear and make it the regmust. Resolve + // ties in favor of later strings, since the regstart check works + // with the beginning of the r.e. and avoiding duplication + // strengthens checking. Not a strong reason, but sufficient in the + // absence of others. + if (flags and SPSTART) <> 0 then begin + longest := nil; + len := 0; + while scan <> nil do begin + if (PREOp (scan)^ = EXACTLY) + and (strlen (scan + REOpSz + RENextOffSz) >= len) then begin + longest := scan + REOpSz + RENextOffSz; + len := strlen (longest); + end; + scan := regnext (scan); + end; + regmust := longest; + regmlen := len; + end; + end; + + Result := true; + + finally begin + if not Result + then InvalidateProgramm; + regexpbeg := nil; + fExprIsCompiled := Result; //###0.944 + end; + end; + + end; { of function TRegExpr.CompileRegExpr +--------------------------------------------------------------} + +function TRegExpr.ParseReg (paren : integer; var flagp : integer) : PRegExprChar; +// regular expression, i.e. main body or parenthesized thing +// Caller must absorb opening parenthesis. +// Combining parenthesis handling with the base level of regular expression +// is a trifle forced, but the need to tie the tails of the branches to what +// follows makes it hard to avoid. + var + ret, br, ender : PRegExprChar; + parno : integer; + flags : integer; + SavedModifiers : integer; + begin + Result := nil; + flagp := HASWIDTH; // Tentatively. + parno := 0; // eliminate compiler stupid warning + SavedModifiers := fCompModifiers; + + // Make an OPEN node, if parenthesized. + if paren <> 0 then begin + if regnpar >= NSUBEXP then begin + Error (reeCompParseRegTooManyBrackets); + EXIT; + end; + parno := regnpar; + inc (regnpar); + ret := EmitNode (TREOp (ord (OPEN) + parno)); + end + else ret := nil; + + // Pick up the branches, linking them together. + br := ParseBranch (flags); + if br = nil then begin + Result := nil; + EXIT; + end; + if ret <> nil + then Tail (ret, br) // OPEN -> first. + else ret := br; + if (flags and HASWIDTH) = 0 + then flagp := flagp and not HASWIDTH; + flagp := flagp or flags and SPSTART; + while (regparse^ = '|') do begin + inc (regparse); + br := ParseBranch (flags); + if br = nil then begin + Result := nil; + EXIT; + end; + Tail (ret, br); // BRANCH -> BRANCH. + if (flags and HASWIDTH) = 0 + then flagp := flagp and not HASWIDTH; + flagp := flagp or flags and SPSTART; + end; + + // Make a closing node, and hook it on the end. + if paren <> 0 + then ender := EmitNode (TREOp (ord (CLOSE) + parno)) + else ender := EmitNode (EEND); + Tail (ret, ender); + + // Hook the tails of the branches to the closing node. + br := ret; + while br <> nil do begin + OpTail (br, ender); + br := regnext (br); + end; + + // Check for proper termination. + if paren <> 0 then + if regparse^ <> ')' then begin + Error (reeCompParseRegUnmatchedBrackets); + EXIT; + end + else inc (regparse); // skip trailing ')' + if (paren = 0) and (regparse^ <> #0) then begin + if regparse^ = ')' + then Error (reeCompParseRegUnmatchedBrackets2) + else Error (reeCompParseRegJunkOnEnd); + EXIT; + end; + fCompModifiers := SavedModifiers; // restore modifiers of parent + Result := ret; + end; { of function TRegExpr.ParseReg +--------------------------------------------------------------} + +function TRegExpr.ParseBranch (var flagp : integer) : PRegExprChar; +// one alternative of an | operator +// Implements the concatenation operator. + var + ret, chain, latest : PRegExprChar; + flags : integer; + begin + flagp := WORST; // Tentatively. + + ret := EmitNode (BRANCH); + chain := nil; + while (regparse^ <> #0) and (regparse^ <> '|') + and (regparse^ <> ')') do begin + latest := ParsePiece (flags); + if latest = nil then begin + Result := nil; + EXIT; + end; + flagp := flagp or flags and HASWIDTH; + if chain = nil // First piece. + then flagp := flagp or flags and SPSTART + else Tail (chain, latest); + chain := latest; + end; + if chain = nil // Loop ran zero times. + then EmitNode (NOTHING); + Result := ret; + end; { of function TRegExpr.ParseBranch +--------------------------------------------------------------} + +function TRegExpr.ParsePiece (var flagp : integer) : PRegExprChar; +// something followed by possible [*+?{] +// Note that the branching code sequences used for ? and the general cases +// of * and + and { are somewhat optimized: they use the same NOTHING node as +// both the endmarker for their branch list and the body of the last branch. +// It might seem that this node could be dispensed with entirely, but the +// endmarker role is not redundant. + function parsenum (AStart, AEnd : PRegExprChar) : TREBracesArg; + begin + Result := 0; + if AEnd - AStart + 1 > 8 then begin // prevent stupid scanning + Error (reeBRACESArgTooBig); + EXIT; + end; + while AStart <= AEnd do begin + Result := Result * 10 + (ord (AStart^) - ord ('0')); + inc (AStart); + end; + if (Result > MaxBracesArg) or (Result < 0) then begin + Error (reeBRACESArgTooBig); + EXIT; + end; + end; + + var + op : REChar; + NonGreedyOp, NonGreedyCh : boolean; //###0.940 + TheOp : TREOp; //###0.940 + NextNode : PRegExprChar; + flags : integer; + BracesMin, Bracesmax : TREBracesArg; + p, savedparse : PRegExprChar; + + procedure EmitComplexBraces (ABracesMin, ABracesMax : TREBracesArg; + ANonGreedyOp : boolean); //###0.940 + {$IFDEF ComplexBraces} + var + off : integer; + {$ENDIF} + begin + {$IFNDEF ComplexBraces} + Error (reeComplexBracesNotImplemented); + {$ELSE} + if ANonGreedyOp + then TheOp := LOOPNG + else TheOp := LOOP; + InsertOperator (LOOPENTRY, Result, REOpSz + RENextOffSz); + NextNode := EmitNode (TheOp); + if regcode <> @regdummy then begin + off := (Result + REOpSz + RENextOffSz) + - (regcode - REOpSz - RENextOffSz); // back to Atom after LOOPENTRY + PREBracesArg (regcode)^ := ABracesMin; + inc (regcode, REBracesArgSz); + PREBracesArg (regcode)^ := ABracesMax; + inc (regcode, REBracesArgSz); + PRENextOff (regcode)^ := off; + inc (regcode, RENextOffSz); + end + else inc (regsize, REBracesArgSz * 2 + RENextOffSz); + Tail (Result, NextNode); // LOOPENTRY -> LOOP + if regcode <> @regdummy then + Tail (Result + REOpSz + RENextOffSz, NextNode); // Atom -> LOOP + {$ENDIF} + end; + + procedure EmitSimpleBraces (ABracesMin, ABracesMax : TREBracesArg; + ANonGreedyOp : boolean); //###0.940 + begin + if ANonGreedyOp //###0.940 + then TheOp := BRACESNG + else TheOp := BRACES; + InsertOperator (TheOp, Result, REOpSz + RENextOffSz + REBracesArgSz * 2); + if regcode <> @regdummy then begin + PREBracesArg (Result + REOpSz + RENextOffSz)^ := ABracesMin; + PREBracesArg (Result + REOpSz + RENextOffSz + REBracesArgSz)^ := ABracesMax; + end; + end; + + begin + Result := ParseAtom (flags); + if Result = nil + then EXIT; + + op := regparse^; + if not ((op = '*') or (op = '+') or (op = '?') or (op = '{')) then begin + flagp := flags; + EXIT; + end; + if ((flags and HASWIDTH) = 0) and (op <> '?') then begin + Error (reePlusStarOperandCouldBeEmpty); + EXIT; + end; + + case op of + '*': begin + flagp := WORST or SPSTART; + NonGreedyCh := (regparse + 1)^ = '?'; //###0.940 + NonGreedyOp := NonGreedyCh or ((fCompModifiers and MaskModG) = 0); //###0.940 + if (flags and SIMPLE) = 0 then begin + if NonGreedyOp //###0.940 + then EmitComplexBraces (0, MaxBracesArg, NonGreedyOp) + else begin // Emit x* as (x&|), where & means "self". + InsertOperator (BRANCH, Result, REOpSz + RENextOffSz); // Either x + OpTail (Result, EmitNode (BACK)); // and loop + OpTail (Result, Result); // back + Tail (Result, EmitNode (BRANCH)); // or + Tail (Result, EmitNode (NOTHING)); // nil. + end + end + else begin // Simple + if NonGreedyOp //###0.940 + then TheOp := STARNG + else TheOp := STAR; + InsertOperator (TheOp, Result, REOpSz + RENextOffSz); + end; + if NonGreedyCh //###0.940 + then inc (regparse); // Skip extra char ('?') + end; { of case '*'} + '+': begin + flagp := WORST or SPSTART or HASWIDTH; + NonGreedyCh := (regparse + 1)^ = '?'; //###0.940 + NonGreedyOp := NonGreedyCh or ((fCompModifiers and MaskModG) = 0); //###0.940 + if (flags and SIMPLE) = 0 then begin + if NonGreedyOp //###0.940 + then EmitComplexBraces (1, MaxBracesArg, NonGreedyOp) + else begin // Emit x+ as x(&|), where & means "self". + NextNode := EmitNode (BRANCH); // Either + Tail (Result, NextNode); + Tail (EmitNode (BACK), Result); // loop back + Tail (NextNode, EmitNode (BRANCH)); // or + Tail (Result, EmitNode (NOTHING)); // nil. + end + end + else begin // Simple + if NonGreedyOp //###0.940 + then TheOp := PLUSNG + else TheOp := PLUS; + InsertOperator (TheOp, Result, REOpSz + RENextOffSz); + end; + if NonGreedyCh //###0.940 + then inc (regparse); // Skip extra char ('?') + end; { of case '+'} + '?': begin + flagp := WORST; + NonGreedyCh := (regparse + 1)^ = '?'; //###0.940 + NonGreedyOp := NonGreedyCh or ((fCompModifiers and MaskModG) = 0); //###0.940 + if NonGreedyOp then begin //###0.940 // We emit x?? as x{0,1}? + if (flags and SIMPLE) = 0 + then EmitComplexBraces (0, 1, NonGreedyOp) + else EmitSimpleBraces (0, 1, NonGreedyOp); + end + else begin // greedy '?' + InsertOperator (BRANCH, Result, REOpSz + RENextOffSz); // Either x + Tail (Result, EmitNode (BRANCH)); // or + NextNode := EmitNode (NOTHING); // nil. + Tail (Result, NextNode); + OpTail (Result, NextNode); + end; + if NonGreedyCh //###0.940 + then inc (regparse); // Skip extra char ('?') + end; { of case '?'} + '{': begin + savedparse := regparse; + // !!!!!!!!!!!! + // Filip Jirsak's note - what will happen, when we are at the end of regparse? + inc (regparse); + p := regparse; + while Pos (regparse^, '0123456789') > 0 // MUST appear + do inc (regparse); + if (regparse^ <> '}') and (regparse^ <> ',') or (p = regparse) then begin + regparse := savedparse; + flagp := flags; + EXIT; + end; + BracesMin := parsenum (p, regparse - 1); + if regparse^ = ',' then begin + inc (regparse); + p := regparse; + while Pos (regparse^, '0123456789') > 0 + do inc (regparse); + if regparse^ <> '}' then begin + regparse := savedparse; + EXIT; + end; + if p = regparse + then BracesMax := MaxBracesArg + else BracesMax := parsenum (p, regparse - 1); + end + else BracesMax := BracesMin; // {n} == {n,n} + if BracesMin > BracesMax then begin + Error (reeBracesMinParamGreaterMax); + EXIT; + end; + if BracesMin > 0 + then flagp := WORST; + if BracesMax > 0 + then flagp := flagp or HASWIDTH or SPSTART; + + NonGreedyCh := (regparse + 1)^ = '?'; //###0.940 + NonGreedyOp := NonGreedyCh or ((fCompModifiers and MaskModG) = 0); //###0.940 + if (flags and SIMPLE) <> 0 + then EmitSimpleBraces (BracesMin, BracesMax, NonGreedyOp) + else EmitComplexBraces (BracesMin, BracesMax, NonGreedyOp); + if NonGreedyCh //###0.940 + then inc (regparse); // Skip extra char '?' + end; { of case '{'} +// else // here we can't be + end; { of case op} + + inc (regparse); + if (regparse^ = '*') or (regparse^ = '+') or (regparse^ = '?') or (regparse^ = '{') then begin + Error (reeNestedSQP); + EXIT; + end; + end; { of function TRegExpr.ParsePiece +--------------------------------------------------------------} + +function TRegExpr.ParseAtom (var flagp : integer) : PRegExprChar; +// the lowest level +// Optimization: gobbles an entire sequence of ordinary characters so that +// it can turn them into a single node, which is smaller to store and +// faster to run. Backslashed characters are exceptions, each becoming a +// separate node; the code is simpler that way and it's not worth fixing. + var + ret : PRegExprChar; + flags : integer; + RangeBeg, RangeEnd : REChar; + CanBeRange : boolean; + len : integer; + ender : REChar; + begmodfs : PRegExprChar; + + {$IFDEF UseSetOfChar} //###0.930 + RangePCodeBeg : PRegExprChar; + RangePCodeIdx : integer; + RangeIsCI : boolean; + RangeSet : TSetOfREChar; + RangeLen : integer; + RangeChMin, RangeChMax : REChar; + {$ENDIF} + + procedure EmitExactly (ch : REChar); + begin + if (fCompModifiers and MaskModI) <> 0 + then ret := EmitNode (EXACTLYCI) + else ret := EmitNode (EXACTLY); + EmitC (ch); + EmitC (#0); + flagp := flagp or HASWIDTH or SIMPLE; + end; + + procedure EmitStr (const s : RegExprString); + var i : integer; + begin + for i := 1 to length (s) + do EmitC (s [i]); + end; + + function HexDig (ch : REChar) : integer; + begin + Result := 0; + if (ch >= 'a') and (ch <= 'f') + then ch := REChar (ord (ch) - (ord ('a') - ord ('A'))); + if (ch < '0') or (ch > 'F') or ((ch > '9') and (ch < 'A')) then begin + Error (reeBadHexDigit); + EXIT; + end; + Result := ord (ch) - ord ('0'); + if ch >= 'A' + then Result := Result - (ord ('A') - ord ('9') - 1); + end; + + function EmitRange (AOpCode : REChar) : PRegExprChar; + begin + {$IFDEF UseSetOfChar} + case AOpCode of + ANYBUTCI, ANYBUT: + Result := EmitNode (ANYBUTTINYSET); + else // ANYOFCI, ANYOF + Result := EmitNode (ANYOFTINYSET); + end; + case AOpCode of + ANYBUTCI, ANYOFCI: + RangeIsCI := True; + else // ANYBUT, ANYOF + RangeIsCI := False; + end; + RangePCodeBeg := regcode; + RangePCodeIdx := regsize; + RangeLen := 0; + RangeSet := []; + RangeChMin := #255; + RangeChMax := #0; + {$ELSE} + Result := EmitNode (AOpCode); + // ToDo: + // !!!!!!!!!!!!! Implement ANYOF[BUT]TINYSET generation for UniCode !!!!!!!!!! + {$ENDIF} + end; + +{$IFDEF UseSetOfChar} + procedure EmitRangeCPrim (b : REChar); //###0.930 + begin + if b in RangeSet + then EXIT; + inc (RangeLen); + if b < RangeChMin + then RangeChMin := b; + if b > RangeChMax + then RangeChMax := b; + Include (RangeSet, b); + end; + {$ENDIF} + + procedure EmitRangeC (b : REChar); + {$IFDEF UseSetOfChar} + var + Ch : REChar; + {$ENDIF} + begin + CanBeRange := false; + {$IFDEF UseSetOfChar} + if b <> #0 then begin + EmitRangeCPrim (b); //###0.930 + if RangeIsCI + then EmitRangeCPrim (InvertCase (b)); //###0.930 + end + else begin + {$IFDEF UseAsserts} + Assert (RangeLen > 0, 'TRegExpr.ParseAtom(subroutine EmitRangeC): empty range'); // impossible, but who knows.. + Assert (RangeChMin <= RangeChMax, 'TRegExpr.ParseAtom(subroutine EmitRangeC): RangeChMin > RangeChMax'); // impossible, but who knows.. + {$ENDIF} + if RangeLen <= TinySetLen then begin // emit "tiny set" + if regcode = @regdummy then begin + regsize := RangePCodeIdx + TinySetLen; // RangeChMin/Max !!! + EXIT; + end; + regcode := RangePCodeBeg; + for Ch := RangeChMin to RangeChMax do //###0.930 + if Ch in RangeSet then begin + regcode^ := Ch; + inc (regcode); + end; + // fill rest: + while regcode < RangePCodeBeg + TinySetLen do begin + regcode^ := RangeChMax; + inc (regcode); + end; + end + else begin + if regcode = @regdummy then begin + regsize := RangePCodeIdx + SizeOf (TSetOfREChar); + EXIT; + end; + if (RangePCodeBeg - REOpSz - RENextOffSz)^ = ANYBUTTINYSET + then RangeSet := [#0 .. #255] - RangeSet; + PREOp (RangePCodeBeg - REOpSz - RENextOffSz)^ := ANYOFFULLSET; + regcode := RangePCodeBeg; + Move (RangeSet, regcode^, SizeOf (TSetOfREChar)); + inc (regcode, SizeOf (TSetOfREChar)); + end; + end; + {$ELSE} + EmitC (b); + {$ENDIF} + end; + + procedure EmitSimpleRangeC (b : REChar); + begin + RangeBeg := b; + EmitRangeC (b); + CanBeRange := true; + end; + + procedure EmitRangeStr (const s : RegExprString); + var i : integer; + begin + for i := 1 to length (s) + do EmitRangeC (s [i]); + end; + + function UnQuoteChar (var APtr : PRegExprChar) : REChar; //###0.934 + begin + case APtr^ of + 't': Result := #$9; // tab (HT/TAB) + 'n': Result := #$a; // newline (NL) + 'r': Result := #$d; // car.return (CR) + 'f': Result := #$c; // form feed (FF) + 'a': Result := #$7; // alarm (bell) (BEL) + 'e': Result := #$1b; // escape (ESC) + 'x': begin // hex char + Result := #0; + inc (APtr); + if APtr^ = #0 then begin + Error (reeNoHexCodeAfterBSlashX); + EXIT; + end; + if APtr^ = '{' then begin // \x{nnnn} //###0.936 + REPEAT + inc (APtr); + if APtr^ = #0 then begin + Error (reeNoHexCodeAfterBSlashX); + EXIT; + end; + if APtr^ <> '}' then begin + if (Ord (Result) + ShR (SizeOf (REChar) * 8 - 4)) and $F <> 0 then begin + Error (reeHexCodeAfterBSlashXTooBig); + EXIT; + end; + Result := REChar ((Ord (Result) ShL 4) or HexDig (APtr^)); + // HexDig will cause Error if bad hex digit found + end + else BREAK; + UNTIL False; + end + else begin + Result := REChar (HexDig (APtr^)); + // HexDig will cause Error if bad hex digit found + inc (APtr); + if APtr^ = #0 then begin + Error (reeNoHexCodeAfterBSlashX); + EXIT; + end; + Result := REChar ((Ord (Result) ShL 4) or HexDig (APtr^)); + // HexDig will cause Error if bad hex digit found + end; + end; + else Result := APtr^; + end; + end; + + begin + Result := nil; + flagp := WORST; // Tentatively. + + inc (regparse); + case (regparse - 1)^ of + '^': if ((fCompModifiers and MaskModM) = 0) + or ((fLineSeparators = '') and not fLinePairedSeparatorAssigned) + then ret := EmitNode (BOL) + else ret := EmitNode (BOLML); + '$': if ((fCompModifiers and MaskModM) = 0) + or ((fLineSeparators = '') and not fLinePairedSeparatorAssigned) + then ret := EmitNode (EOL) + else ret := EmitNode (EOLML); + '.': + if (fCompModifiers and MaskModS) <> 0 then begin + ret := EmitNode (ANY); + flagp := flagp or HASWIDTH or SIMPLE; + end + else begin // not /s, so emit [^:LineSeparators:] + ret := EmitNode (ANYML); + flagp := flagp or HASWIDTH; // not so simple ;) +// ret := EmitRange (ANYBUT); +// EmitRangeStr (LineSeparators); //###0.941 +// EmitRangeStr (LinePairedSeparator); // !!! isn't correct if have to accept only paired +// EmitRangeC (#0); +// flagp := flagp or HASWIDTH or SIMPLE; + end; + '[': begin + if regparse^ = '^' then begin // Complement of range. + if (fCompModifiers and MaskModI) <> 0 + then ret := EmitRange (ANYBUTCI) + else ret := EmitRange (ANYBUT); + inc (regparse); + end + else + if (fCompModifiers and MaskModI) <> 0 + then ret := EmitRange (ANYOFCI) + else ret := EmitRange (ANYOF); + + CanBeRange := false; + + if (regparse^ = ']') then begin + EmitSimpleRangeC (regparse^); // []-a] -> ']' .. 'a' + inc (regparse); + end; + + while (regparse^ <> #0) and (regparse^ <> ']') do begin + if (regparse^ = '-') + and ((regparse + 1)^ <> #0) and ((regparse + 1)^ <> ']') + and CanBeRange then begin + inc (regparse); + RangeEnd := regparse^; + if RangeEnd = EscChar then begin + {$IFDEF UniCode} //###0.935 + if (ord ((regparse + 1)^) < 256) + and (char ((regparse + 1)^) + in ['d', 'D', 's', 'S', 'w', 'W']) then begin + {$ELSE} + if (regparse + 1)^ in ['d', 'D', 's', 'S', 'w', 'W'] then begin + {$ENDIF} + EmitRangeC ('-'); // or treat as error ?!! + CONTINUE; + end; + inc (regparse); + RangeEnd := UnQuoteChar (regparse); + end; + + // r.e.ranges extension for russian + if ((fCompModifiers and MaskModR) <> 0) + and (RangeBeg = RusRangeLoLow) and (RangeEnd = RusRangeLoHigh) then begin + EmitRangeStr (RusRangeLo); + end + else if ((fCompModifiers and MaskModR) <> 0) + and (RangeBeg = RusRangeHiLow) and (RangeEnd = RusRangeHiHigh) then begin + EmitRangeStr (RusRangeHi); + end + else if ((fCompModifiers and MaskModR) <> 0) + and (RangeBeg = RusRangeLoLow) and (RangeEnd = RusRangeHiHigh) then begin + EmitRangeStr (RusRangeLo); + EmitRangeStr (RusRangeHi); + end + else begin // standard r.e. handling + if RangeBeg > RangeEnd then begin + Error (reeInvalidRange); + EXIT; + end; + inc (RangeBeg); + EmitRangeC (RangeEnd); // prevent infinite loop if RangeEnd=$ff + while RangeBeg < RangeEnd do begin //###0.929 + EmitRangeC (RangeBeg); + inc (RangeBeg); + end; + end; + inc (regparse); + end + else begin + if regparse^ = EscChar then begin + inc (regparse); + if regparse^ = #0 then begin + Error (reeParseAtomTrailingBackSlash); + EXIT; + end; + case regparse^ of // r.e.extensions + 'd': EmitRangeStr ('0123456789'); + 'w': EmitRangeStr (WordChars); + 's': EmitRangeStr (SpaceChars); + else EmitSimpleRangeC (UnQuoteChar (regparse)); + end; { of case} + end + else EmitSimpleRangeC (regparse^); + inc (regparse); + end; + end; { of while} + EmitRangeC (#0); + if regparse^ <> ']' then begin + Error (reeUnmatchedSqBrackets); + EXIT; + end; + inc (regparse); + flagp := flagp or HASWIDTH or SIMPLE; + end; + '(': begin + if regparse^ = '?' then begin + // check for extended Perl syntax : (?..) + if (regparse + 1)^ = '#' then begin // (?#comment) + inc (regparse, 2); // find closing ')' + while (regparse^ <> #0) and (regparse^ <> ')') + do inc (regparse); + if regparse^ <> ')' then begin + Error (reeUnclosedComment); + EXIT; + end; + inc (regparse); // skip ')' + ret := EmitNode (COMMENT); // comment + end + else begin // modifiers ? + inc (regparse); // skip '?' + begmodfs := regparse; + while (regparse^ <> #0) and (regparse^ <> ')') + do inc (regparse); + if (regparse^ <> ')') + or not ParseModifiersStr (copy (begmodfs, 1, (regparse - begmodfs)), fCompModifiers) then begin + Error (reeUrecognizedModifier); + EXIT; + end; + inc (regparse); // skip ')' + ret := EmitNode (COMMENT); // comment +// Error (reeQPSBFollowsNothing); +// EXIT; + end; + end + else begin + ret := ParseReg (1, flags); + if ret = nil then begin + Result := nil; + EXIT; + end; + flagp := flagp or flags and (HASWIDTH or SPSTART); + end; + end; + #0, '|', ')': begin // Supposed to be caught earlier. + Error (reeInternalUrp); + EXIT; + end; + '?', '+', '*': begin + Error (reeQPSBFollowsNothing); + EXIT; + end; + EscChar: begin + if regparse^ = #0 then begin + Error (reeTrailingBackSlash); + EXIT; + end; + case regparse^ of // r.e.extensions + 'b': ret := EmitNode (BOUND); //###0.943 + 'B': ret := EmitNode (NOTBOUND); //###0.943 + 'A': ret := EmitNode (BOL); //###0.941 + 'Z': ret := EmitNode (EOL); //###0.941 + 'd': begin // r.e.extension - any digit ('0' .. '9') + ret := EmitNode (ANYDIGIT); + flagp := flagp or HASWIDTH or SIMPLE; + end; + 'D': begin // r.e.extension - not digit ('0' .. '9') + ret := EmitNode (NOTDIGIT); + flagp := flagp or HASWIDTH or SIMPLE; + end; + 's': begin // r.e.extension - any space char + {$IFDEF UseSetOfChar} + ret := EmitRange (ANYOF); + EmitRangeStr (SpaceChars); + EmitRangeC (#0); + {$ELSE} + ret := EmitNode (ANYSPACE); + {$ENDIF} + flagp := flagp or HASWIDTH or SIMPLE; + end; + 'S': begin // r.e.extension - not space char + {$IFDEF UseSetOfChar} + ret := EmitRange (ANYBUT); + EmitRangeStr (SpaceChars); + EmitRangeC (#0); + {$ELSE} + ret := EmitNode (NOTSPACE); + {$ENDIF} + flagp := flagp or HASWIDTH or SIMPLE; + end; + 'w': begin // r.e.extension - any english char / digit / '_' + {$IFDEF UseSetOfChar} + ret := EmitRange (ANYOF); + EmitRangeStr (WordChars); + EmitRangeC (#0); + {$ELSE} + ret := EmitNode (ANYLETTER); + {$ENDIF} + flagp := flagp or HASWIDTH or SIMPLE; + end; + 'W': begin // r.e.extension - not english char / digit / '_' + {$IFDEF UseSetOfChar} + ret := EmitRange (ANYBUT); + EmitRangeStr (WordChars); + EmitRangeC (#0); + {$ELSE} + ret := EmitNode (NOTLETTER); + {$ENDIF} + flagp := flagp or HASWIDTH or SIMPLE; + end; + '1' .. '9': begin //###0.936 + if (fCompModifiers and MaskModI) <> 0 + then ret := EmitNode (BSUBEXPCI) + else ret := EmitNode (BSUBEXP); + EmitC (REChar (ord (regparse^) - ord ('0'))); + flagp := flagp or HASWIDTH or SIMPLE; + end; + else EmitExactly (UnQuoteChar (regparse)); + end; { of case} + inc (regparse); + end; + else begin + dec (regparse); + if ((fCompModifiers and MaskModX) <> 0) and // check for eXtended syntax + ((regparse^ = '#') + or ({$IFDEF UniCode}StrScan (XIgnoredChars, regparse^) <> nil //###0.947 + {$ELSE}regparse^ in XIgnoredChars{$ENDIF})) then begin //###0.941 \x + if regparse^ = '#' then begin // Skip eXtended comment + // find comment terminator (group of \n and/or \r) + while (regparse^ <> #0) and (regparse^ <> #$d) and (regparse^ <> #$a) + do inc (regparse); + while (regparse^ = #$d) or (regparse^ = #$a) // skip comment terminator + do inc (regparse); // attempt to support different type of line separators + end + else begin // Skip the blanks! + while {$IFDEF UniCode}StrScan (XIgnoredChars, regparse^) <> nil //###0.947 + {$ELSE}regparse^ in XIgnoredChars{$ENDIF} + do inc (regparse); + end; + ret := EmitNode (COMMENT); // comment + end + else begin + len := strcspn (regparse, META); + if len <= 0 then + if regparse^ <> '{' then begin + Error (reeRarseAtomInternalDisaster); + EXIT; + end + else len := strcspn (regparse + 1, META) + 1; // bad {n,m} - compile as EXATLY + ender := (regparse + len)^; + if (len > 1) + and ((ender = '*') or (ender = '+') or (ender = '?') or (ender = '{')) + then dec (len); // Back off clear of ?+*{ operand. + flagp := flagp or HASWIDTH; + if len = 1 + then flagp := flagp or SIMPLE; + if (fCompModifiers and MaskModI) <> 0 + then ret := EmitNode (EXACTLYCI) + else ret := EmitNode (EXACTLY); + while (len > 0) + and (((fCompModifiers and MaskModX) = 0) or (regparse^ <> '#')) do begin + if ((fCompModifiers and MaskModX) = 0) or not ( //###0.941 + {$IFDEF UniCode}StrScan (XIgnoredChars, regparse^) <> nil //###0.947 + {$ELSE}regparse^ in XIgnoredChars{$ENDIF} ) + then EmitC (regparse^); + inc (regparse); + dec (len); + end; + EmitC (#0); + end; { of if not comment} + end; { of case else} + end; { of case} + + Result := ret; + end; { of function TRegExpr.ParseAtom +--------------------------------------------------------------} + +function TRegExpr.GetCompilerErrorPos : integer; + begin + Result := 0; + if (regexpbeg = nil) or (regparse = nil) + then EXIT; // not in compiling mode ? + Result := regparse - regexpbeg; + end; { of function TRegExpr.GetCompilerErrorPos +--------------------------------------------------------------} + + +{=============================================================} +{===================== Matching section ======================} +{=============================================================} + +{$IFNDEF UseSetOfChar} +function TRegExpr.StrScanCI (s : PRegExprChar; ch : REChar) : PRegExprChar; //###0.928 - now method of TRegExpr + begin + while (s^ <> #0) and (s^ <> ch) and (s^ <> InvertCase (ch)) + do inc (s); + if s^ <> #0 + then Result := s + else Result := nil; + end; { of function TRegExpr.StrScanCI +--------------------------------------------------------------} +{$ENDIF} + +function TRegExpr.regrepeat (p : PRegExprChar; AMax : integer) : integer; +// repeatedly match something simple, report how many + var + scan : PRegExprChar; + opnd : PRegExprChar; + TheMax : integer; + {Ch,} InvCh : REChar; //###0.931 + sestart, seend : PRegExprChar; //###0.936 + begin + Result := 0; + scan := reginput; + opnd := p + REOpSz + RENextOffSz; //OPERAND + TheMax := fInputEnd - scan; + if TheMax > AMax + then TheMax := AMax; + case PREOp (p)^ of + ANY: begin + // note - ANYML cannot be proceeded in regrepeat because can skip + // more than one char at once + Result := TheMax; + inc (scan, Result); + end; + EXACTLY: begin // in opnd can be only ONE char !!! +// Ch := opnd^; // store in register //###0.931 + while (Result < TheMax) and (opnd^ = scan^) do begin + inc (Result); + inc (scan); + end; + end; + EXACTLYCI: begin // in opnd can be only ONE char !!! +// Ch := opnd^; // store in register //###0.931 + while (Result < TheMax) and (opnd^ = scan^) do begin // prevent unneeded InvertCase //###0.931 + inc (Result); + inc (scan); + end; + if Result < TheMax then begin //###0.931 + InvCh := InvertCase (opnd^); // store in register + while (Result < TheMax) and + ((opnd^ = scan^) or (InvCh = scan^)) do begin + inc (Result); + inc (scan); + end; + end; + end; + BSUBEXP: begin //###0.936 + sestart := startp [ord (opnd^)]; + if sestart = nil + then EXIT; + seend := endp [ord (opnd^)]; + if seend = nil + then EXIT; + REPEAT + opnd := sestart; + while opnd < seend do begin + if (scan >= fInputEnd) or (scan^ <> opnd^) + then EXIT; + inc (scan); + inc (opnd); + end; + inc (Result); + reginput := scan; + UNTIL Result >= AMax; + end; + BSUBEXPCI: begin //###0.936 + sestart := startp [ord (opnd^)]; + if sestart = nil + then EXIT; + seend := endp [ord (opnd^)]; + if seend = nil + then EXIT; + REPEAT + opnd := sestart; + while opnd < seend do begin + if (scan >= fInputEnd) or + ((scan^ <> opnd^) and (scan^ <> InvertCase (opnd^))) + then EXIT; + inc (scan); + inc (opnd); + end; + inc (Result); + reginput := scan; + UNTIL Result >= AMax; + end; + ANYDIGIT: + while (Result < TheMax) and + (scan^ >= '0') and (scan^ <= '9') do begin + inc (Result); + inc (scan); + end; + NOTDIGIT: + while (Result < TheMax) and + ((scan^ < '0') or (scan^ > '9')) do begin + inc (Result); + inc (scan); + end; + {$IFNDEF UseSetOfChar} //###0.929 + ANYLETTER: + while (Result < TheMax) and + (Pos (scan^, fWordChars) > 0) //###0.940 + { ((scan^ >= 'a') and (scan^ <= 'z') !! I've forgotten (>='0') and (<='9') + or (scan^ >= 'A') and (scan^ <= 'Z') or (scan^ = '_'))} do begin + inc (Result); + inc (scan); + end; + NOTLETTER: + while (Result < TheMax) and + (Pos (scan^, fWordChars) <= 0) //###0.940 + { not ((scan^ >= 'a') and (scan^ <= 'z') !! I've forgotten (>='0') and (<='9') + or (scan^ >= 'A') and (scan^ <= 'Z') + or (scan^ = '_'))} do begin + inc (Result); + inc (scan); + end; + ANYSPACE: + while (Result < TheMax) and + (Pos (scan^, fSpaceChars) > 0) do begin + inc (Result); + inc (scan); + end; + NOTSPACE: + while (Result < TheMax) and + (Pos (scan^, fSpaceChars) <= 0) do begin + inc (Result); + inc (scan); + end; + {$ENDIF} + ANYOFTINYSET: begin + while (Result < TheMax) and //!!!TinySet + ((scan^ = opnd^) or (scan^ = (opnd + 1)^) + or (scan^ = (opnd + 2)^)) do begin + inc (Result); + inc (scan); + end; + end; + ANYBUTTINYSET: begin + while (Result < TheMax) and //!!!TinySet + (scan^ <> opnd^) and (scan^ <> (opnd + 1)^) + and (scan^ <> (opnd + 2)^) do begin + inc (Result); + inc (scan); + end; + end; + {$IFDEF UseSetOfChar} //###0.929 + ANYOFFULLSET: begin + while (Result < TheMax) and + (scan^ in PSetOfREChar (opnd)^) do begin + inc (Result); + inc (scan); + end; + end; + {$ELSE} + ANYOF: + while (Result < TheMax) and + (StrScan (opnd, scan^) <> nil) do begin + inc (Result); + inc (scan); + end; + ANYBUT: + while (Result < TheMax) and + (StrScan (opnd, scan^) = nil) do begin + inc (Result); + inc (scan); + end; + ANYOFCI: + while (Result < TheMax) and (StrScanCI (opnd, scan^) <> nil) do begin + inc (Result); + inc (scan); + end; + ANYBUTCI: + while (Result < TheMax) and (StrScanCI (opnd, scan^) = nil) do begin + inc (Result); + inc (scan); + end; + {$ENDIF} + else begin // Oh dear. Called inappropriately. + Result := 0; // Best compromise. + Error (reeRegRepeatCalledInappropriately); + EXIT; + end; + end; { of case} + reginput := scan; + end; { of function TRegExpr.regrepeat +--------------------------------------------------------------} + +function TRegExpr.regnext (p : PRegExprChar) : PRegExprChar; +// dig the "next" pointer out of a node + var offset : TRENextOff; + begin + if p = @regdummy then begin + Result := nil; + EXIT; + end; + offset := PRENextOff (p + REOpSz)^; //###0.933 inlined NEXT + if offset = 0 + then Result := nil + else Result := p + offset; + end; { of function TRegExpr.regnext +--------------------------------------------------------------} + +function TRegExpr.MatchPrim (prog : PRegExprChar) : boolean; +// recursively matching routine +// Conceptually the strategy is simple: check to see whether the current +// node matches, call self recursively to see whether the rest matches, +// and then act accordingly. In practice we make some effort to avoid +// recursion, in particular by going through "ordinary" nodes (that don't +// need to know whether the rest of the match failed) by a loop instead of +// by recursion. + var + scan : PRegExprChar; // Current node. + next : PRegExprChar; // Next node. + len : integer; + opnd : PRegExprChar; + no : integer; + save : PRegExprChar; + nextch : REChar; + BracesMin, BracesMax : integer; // we use integer instead of TREBracesArg for better support */+ + {$IFDEF ComplexBraces} + SavedLoopStack : array [1 .. LoopStackMax] of integer; // :(( very bad for recursion + SavedLoopStackIdx : integer; //###0.925 + {$ENDIF} + begin + Result := false; + scan := prog; + + while scan <> nil do begin + len := PRENextOff (scan + 1)^; //###0.932 inlined regnext + if len = 0 + then next := nil + else next := scan + len; + + case scan^ of + NOTBOUND, //###0.943 //!!! think about UseSetOfChar !!! + BOUND: + if (scan^ = BOUND) + xor ( + ((reginput = fInputStart) or (Pos ((reginput - 1)^, fWordChars) <= 0)) + and (reginput^ <> #0) and (Pos (reginput^, fWordChars) > 0) + or + (reginput <> fInputStart) and (Pos ((reginput - 1)^, fWordChars) > 0) + and ((reginput^ = #0) or (Pos (reginput^, fWordChars) <= 0))) + then EXIT; + + BOL: if reginput <> fInputStart + then EXIT; + EOL: if reginput^ <> #0 + then EXIT; + BOLML: if reginput > fInputStart then begin + nextch := (reginput - 1)^; + if (nextch <> fLinePairedSeparatorTail) + or ((reginput - 1) <= fInputStart) + or ((reginput - 2)^ <> fLinePairedSeparatorHead) + then begin + if (nextch = fLinePairedSeparatorHead) + and (reginput^ = fLinePairedSeparatorTail) + then EXIT; // don't stop between paired separator + if + {$IFNDEF UniCode} + not (nextch in fLineSeparatorsSet) + {$ELSE} + (pos (nextch, fLineSeparators) <= 0) + {$ENDIF} + then EXIT; + end; + end; + EOLML: if reginput^ <> #0 then begin + nextch := reginput^; + if (nextch <> fLinePairedSeparatorHead) + or ((reginput + 1)^ <> fLinePairedSeparatorTail) + then begin + if (nextch = fLinePairedSeparatorTail) + and (reginput > fInputStart) + and ((reginput - 1)^ = fLinePairedSeparatorHead) + then EXIT; // don't stop between paired separator + if + {$IFNDEF UniCode} + not (nextch in fLineSeparatorsSet) + {$ELSE} + (pos (nextch, fLineSeparators) <= 0) + {$ENDIF} + then EXIT; + end; + end; + ANY: begin + if reginput^ = #0 + then EXIT; + inc (reginput); + end; + ANYML: begin //###0.941 + if (reginput^ = #0) + or ((reginput^ = fLinePairedSeparatorHead) + and ((reginput + 1)^ = fLinePairedSeparatorTail)) + or {$IFNDEF UniCode} (reginput^ in fLineSeparatorsSet) + {$ELSE} (pos (reginput^, fLineSeparators) > 0) {$ENDIF} + then EXIT; + inc (reginput); + end; + ANYDIGIT: begin + if (reginput^ = #0) or (reginput^ < '0') or (reginput^ > '9') + then EXIT; + inc (reginput); + end; + NOTDIGIT: begin + if (reginput^ = #0) or ((reginput^ >= '0') and (reginput^ <= '9')) + then EXIT; + inc (reginput); + end; + {$IFNDEF UseSetOfChar} //###0.929 + ANYLETTER: begin + if (reginput^ = #0) or (Pos (reginput^, fWordChars) <= 0) //###0.943 + then EXIT; + inc (reginput); + end; + NOTLETTER: begin + if (reginput^ = #0) or (Pos (reginput^, fWordChars) > 0) //###0.943 + then EXIT; + inc (reginput); + end; + ANYSPACE: begin + if (reginput^ = #0) or not (Pos (reginput^, fSpaceChars) > 0) //###0.943 + then EXIT; + inc (reginput); + end; + NOTSPACE: begin + if (reginput^ = #0) or (Pos (reginput^, fSpaceChars) > 0) //###0.943 + then EXIT; + inc (reginput); + end; + {$ENDIF} + EXACTLYCI: begin + opnd := scan + REOpSz + RENextOffSz; // OPERAND + // Inline the first character, for speed. + if (opnd^ <> reginput^) + and (InvertCase (opnd^) <> reginput^) + then EXIT; + len := strlen (opnd); + //###0.929 begin + no := len; + save := reginput; + while no > 1 do begin + inc (save); + inc (opnd); + if (opnd^ <> save^) + and (InvertCase (opnd^) <> save^) + then EXIT; + dec (no); + end; + //###0.929 end + inc (reginput, len); + end; + EXACTLY: begin + opnd := scan + REOpSz + RENextOffSz; // OPERAND + // Inline the first character, for speed. + if opnd^ <> reginput^ + then EXIT; + len := strlen (opnd); + //###0.929 begin + no := len; + save := reginput; + while no > 1 do begin + inc (save); + inc (opnd); + if opnd^ <> save^ + then EXIT; + dec (no); + end; + //###0.929 end + inc (reginput, len); + end; + BSUBEXP: begin //###0.936 + no := ord ((scan + REOpSz + RENextOffSz)^); + if startp [no] = nil + then EXIT; + if endp [no] = nil + then EXIT; + save := reginput; + opnd := startp [no]; + while opnd < endp [no] do begin + if (save >= fInputEnd) or (save^ <> opnd^) + then EXIT; + inc (save); + inc (opnd); + end; + reginput := save; + end; + BSUBEXPCI: begin //###0.936 + no := ord ((scan + REOpSz + RENextOffSz)^); + if startp [no] = nil + then EXIT; + if endp [no] = nil + then EXIT; + save := reginput; + opnd := startp [no]; + while opnd < endp [no] do begin + if (save >= fInputEnd) or + ((save^ <> opnd^) and (save^ <> InvertCase (opnd^))) + then EXIT; + inc (save); + inc (opnd); + end; + reginput := save; + end; + ANYOFTINYSET: begin + if (reginput^ = #0) or //!!!TinySet + ((reginput^ <> (scan + REOpSz + RENextOffSz)^) + and (reginput^ <> (scan + REOpSz + RENextOffSz + 1)^) + and (reginput^ <> (scan + REOpSz + RENextOffSz + 2)^)) + then EXIT; + inc (reginput); + end; + ANYBUTTINYSET: begin + if (reginput^ = #0) or //!!!TinySet + (reginput^ = (scan + REOpSz + RENextOffSz)^) + or (reginput^ = (scan + REOpSz + RENextOffSz + 1)^) + or (reginput^ = (scan + REOpSz + RENextOffSz + 2)^) + then EXIT; + inc (reginput); + end; + {$IFDEF UseSetOfChar} //###0.929 + ANYOFFULLSET: begin + if (reginput^ = #0) + or not (reginput^ in PSetOfREChar (scan + REOpSz + RENextOffSz)^) + then EXIT; + inc (reginput); + end; + {$ELSE} + ANYOF: begin + if (reginput^ = #0) or (StrScan (scan + REOpSz + RENextOffSz, reginput^) = nil) + then EXIT; + inc (reginput); + end; + ANYBUT: begin + if (reginput^ = #0) or (StrScan (scan + REOpSz + RENextOffSz, reginput^) <> nil) + then EXIT; + inc (reginput); + end; + ANYOFCI: begin + if (reginput^ = #0) or (StrScanCI (scan + REOpSz + RENextOffSz, reginput^) = nil) + then EXIT; + inc (reginput); + end; + ANYBUTCI: begin + if (reginput^ = #0) or (StrScanCI (scan + REOpSz + RENextOffSz, reginput^) <> nil) + then EXIT; + inc (reginput); + end; + {$ENDIF} + NOTHING: ; + COMMENT: ; + BACK: ; + Succ (OPEN) .. TREOp (Ord (OPEN) + NSUBEXP - 1) : begin //###0.929 + no := ord (scan^) - ord (OPEN); +// save := reginput; + save := startp [no]; //###0.936 + startp [no] := reginput; //###0.936 + Result := MatchPrim (next); + if not Result //###0.936 + then startp [no] := save; +// if Result and (startp [no] = nil) +// then startp [no] := save; + // Don't set startp if some later invocation of the same + // parentheses already has. + EXIT; + end; + Succ (CLOSE) .. TREOp (Ord (CLOSE) + NSUBEXP - 1): begin //###0.929 + no := ord (scan^) - ord (CLOSE); +// save := reginput; + save := endp [no]; //###0.936 + endp [no] := reginput; //###0.936 + Result := MatchPrim (next); + if not Result //###0.936 + then endp [no] := save; +// if Result and (endp [no] = nil) +// then endp [no] := save; + // Don't set endp if some later invocation of the same + // parentheses already has. + EXIT; + end; + BRANCH: begin + if (next^ <> BRANCH) // No choice. + then next := scan + REOpSz + RENextOffSz // Avoid recursion + else begin + REPEAT + save := reginput; + Result := MatchPrim (scan + REOpSz + RENextOffSz); + if Result + then EXIT; + reginput := save; + scan := regnext (scan); + UNTIL (scan = nil) or (scan^ <> BRANCH); + EXIT; + end; + end; + {$IFDEF ComplexBraces} + LOOPENTRY: begin //###0.925 + no := LoopStackIdx; + inc (LoopStackIdx); + if LoopStackIdx > LoopStackMax then begin + Error (reeLoopStackExceeded); + EXIT; + end; + save := reginput; + LoopStack [LoopStackIdx] := 0; // init loop counter + Result := MatchPrim (next); // execute LOOP + LoopStackIdx := no; // cleanup + if Result + then EXIT; + reginput := save; + EXIT; + end; + LOOP, LOOPNG: begin //###0.940 + if LoopStackIdx <= 0 then begin + Error (reeLoopWithoutEntry); + EXIT; + end; + opnd := scan + PRENextOff (scan + REOpSz + RENextOffSz + 2 * REBracesArgSz)^; + BracesMin := PREBracesArg (scan + REOpSz + RENextOffSz)^; + BracesMax := PREBracesArg (scan + REOpSz + RENextOffSz + REBracesArgSz)^; + save := reginput; + if LoopStack [LoopStackIdx] >= BracesMin then begin // Min alredy matched - we can work + if scan^ = LOOP then begin + // greedy way - first try to max deep of greed ;) + if LoopStack [LoopStackIdx] < BracesMax then begin + inc (LoopStack [LoopStackIdx]); + no := LoopStackIdx; + Result := MatchPrim (opnd); + LoopStackIdx := no; + if Result + then EXIT; + reginput := save; + end; + dec (LoopStackIdx); // Fail. May be we are too greedy? ;) + Result := MatchPrim (next); + if not Result + then reginput := save; + EXIT; + end + else begin + // non-greedy - try just now + Result := MatchPrim (next); + if Result + then EXIT + else reginput := save; // failed - move next and try again + if LoopStack [LoopStackIdx] < BracesMax then begin + inc (LoopStack [LoopStackIdx]); + no := LoopStackIdx; + Result := MatchPrim (opnd); + LoopStackIdx := no; + if Result + then EXIT; + reginput := save; + end; + dec (LoopStackIdx); // Failed - back up + EXIT; + end + end + else begin // first match a min_cnt times + inc (LoopStack [LoopStackIdx]); + no := LoopStackIdx; + Result := MatchPrim (opnd); + LoopStackIdx := no; + if Result + then EXIT; + dec (LoopStack [LoopStackIdx]); + reginput := save; + EXIT; + end; + end; + {$ENDIF} + STAR, PLUS, BRACES, STARNG, PLUSNG, BRACESNG: begin + // Lookahead to avoid useless match attempts when we know + // what character comes next. + nextch := #0; + if next^ = EXACTLY + then nextch := (next + REOpSz + RENextOffSz)^; + BracesMax := MaxInt; // infinite loop for * and + //###0.92 + if (scan^ = STAR) or (scan^ = STARNG) + then BracesMin := 0 // STAR + else if (scan^ = PLUS) or (scan^ = PLUSNG) + then BracesMin := 1 // PLUS + else begin // BRACES + BracesMin := PREBracesArg (scan + REOpSz + RENextOffSz)^; + BracesMax := PREBracesArg (scan + REOpSz + RENextOffSz + REBracesArgSz)^; + end; + save := reginput; + opnd := scan + REOpSz + RENextOffSz; + if (scan^ = BRACES) or (scan^ = BRACESNG) + then inc (opnd, 2 * REBracesArgSz); + + if (scan^ = PLUSNG) or (scan^ = STARNG) or (scan^ = BRACESNG) then begin + // non-greedy mode + BracesMax := regrepeat (opnd, BracesMax); // don't repeat more than BracesMax + // Now we know real Max limit to move forward (for recursion 'back up') + // In some cases it can be faster to check only Min positions first, + // but after that we have to check every position separtely instead + // of fast scannig in loop. + no := BracesMin; + while no <= BracesMax do begin + reginput := save + no; + // If it could work, try it. + if (nextch = #0) or (reginput^ = nextch) then begin + {$IFDEF ComplexBraces} + System.Move (LoopStack, SavedLoopStack, SizeOf (LoopStack)); //###0.925 + SavedLoopStackIdx := LoopStackIdx; + {$ENDIF} + if MatchPrim (next) then begin + Result := true; + EXIT; + end; + {$IFDEF ComplexBraces} + System.Move (SavedLoopStack, LoopStack, SizeOf (LoopStack)); + LoopStackIdx := SavedLoopStackIdx; + {$ENDIF} + end; + inc (no); // Couldn't or didn't - move forward. + end; { of while} + EXIT; + end + else begin // greedy mode + no := regrepeat (opnd, BracesMax); // don't repeat more than max_cnt + while no >= BracesMin do begin + // If it could work, try it. + if (nextch = #0) or (reginput^ = nextch) then begin + {$IFDEF ComplexBraces} + System.Move (LoopStack, SavedLoopStack, SizeOf (LoopStack)); //###0.925 + SavedLoopStackIdx := LoopStackIdx; + {$ENDIF} + if MatchPrim (next) then begin + Result := true; + EXIT; + end; + {$IFDEF ComplexBraces} + System.Move (SavedLoopStack, LoopStack, SizeOf (LoopStack)); + LoopStackIdx := SavedLoopStackIdx; + {$ENDIF} + end; + dec (no); // Couldn't or didn't - back up. + reginput := save + no; + end; { of while} + EXIT; + end; + end; + EEND: begin + Result := true; // Success! + EXIT; + end; + else begin + Error (reeMatchPrimMemoryCorruption); + EXIT; + end; + end; { of case scan^} + scan := next; + end; { of while scan <> nil} + + // We get here only if there's trouble -- normally "case EEND" is the + // terminating point. + Error (reeMatchPrimCorruptedPointers); + end; { of function TRegExpr.MatchPrim +--------------------------------------------------------------} + +{$IFDEF UseFirstCharSet} //###0.929 +procedure TRegExpr.FillFirstCharSet (prog : PRegExprChar); + var + scan : PRegExprChar; // Current node. + next : PRegExprChar; // Next node. + opnd : PRegExprChar; + min_cnt : integer; + begin + scan := prog; + while scan <> nil do begin + next := regnext (scan); + case PREOp (scan)^ of + BSUBEXP, BSUBEXPCI: begin //###0.938 + FirstCharSet := [#0 .. #255]; // :((( we cannot + // optimize r.e. if it starts with back reference + EXIT; + end; + BOL, BOLML: ; // EXIT; //###0.937 + EOL, EOLML: begin //###0.948 was empty in 0.947, was EXIT in 0.937 + Include (FirstCharSet, #0); + if ModifierM + then begin + opnd := PRegExprChar (LineSeparators); + while opnd^ <> #0 do begin + Include (FirstCharSet, opnd^); + inc (opnd); + end; + end; + EXIT; + end; + BOUND, NOTBOUND: ; //###0.943 ?!! + ANY, ANYML: begin // we can better define ANYML !!! + FirstCharSet := [#0 .. #255]; //###0.930 + EXIT; + end; + ANYDIGIT: begin + FirstCharSet := FirstCharSet + ['0' .. '9']; + EXIT; + end; + NOTDIGIT: begin + FirstCharSet := FirstCharSet + ([#0 .. #255] - ['0' .. '9']); //###0.948 FirstCharSet was forgotten + EXIT; + end; + EXACTLYCI: begin + Include (FirstCharSet, (scan + REOpSz + RENextOffSz)^); + Include (FirstCharSet, InvertCase ((scan + REOpSz + RENextOffSz)^)); + EXIT; + end; + EXACTLY: begin + Include (FirstCharSet, (scan + REOpSz + RENextOffSz)^); + EXIT; + end; + ANYOFFULLSET: begin + FirstCharSet := FirstCharSet + PSetOfREChar (scan + REOpSz + RENextOffSz)^; + EXIT; + end; + ANYOFTINYSET: begin + //!!!TinySet + Include (FirstCharSet, (scan + REOpSz + RENextOffSz)^); + Include (FirstCharSet, (scan + REOpSz + RENextOffSz + 1)^); + Include (FirstCharSet, (scan + REOpSz + RENextOffSz + 2)^); + // ... // up to TinySetLen + EXIT; + end; + ANYBUTTINYSET: begin + //!!!TinySet + FirstCharSet := FirstCharSet + ([#0 .. #255] - [ //###0.948 FirstCharSet was forgotten + (scan + REOpSz + RENextOffSz)^, + (scan + REOpSz + RENextOffSz + 1)^, + (scan + REOpSz + RENextOffSz + 2)^]); + // ... // up to TinySetLen + EXIT; + end; + NOTHING: ; + COMMENT: ; + BACK: ; + Succ (OPEN) .. TREOp (Ord (OPEN) + NSUBEXP - 1) : begin //###0.929 + FillFirstCharSet (next); + EXIT; + end; + Succ (CLOSE) .. TREOp (Ord (CLOSE) + NSUBEXP - 1): begin //###0.929 + FillFirstCharSet (next); + EXIT; + end; + BRANCH: begin + if (PREOp (next)^ <> BRANCH) // No choice. + then next := scan + REOpSz + RENextOffSz // Avoid recursion. + else begin + REPEAT + FillFirstCharSet (scan + REOpSz + RENextOffSz); + scan := regnext (scan); + UNTIL (scan = nil) or (PREOp (scan)^ <> BRANCH); + EXIT; + end; + end; + {$IFDEF ComplexBraces} + LOOPENTRY: begin //###0.925 +// LoopStack [LoopStackIdx] := 0; //###0.940 line removed + FillFirstCharSet (next); // execute LOOP + EXIT; + end; + LOOP, LOOPNG: begin //###0.940 + opnd := scan + PRENextOff (scan + REOpSz + RENextOffSz + REBracesArgSz * 2)^; + min_cnt := PREBracesArg (scan + REOpSz + RENextOffSz)^; + FillFirstCharSet (opnd); + if min_cnt = 0 + then FillFirstCharSet (next); + EXIT; + end; + {$ENDIF} + STAR, STARNG: //###0.940 + FillFirstCharSet (scan + REOpSz + RENextOffSz); + PLUS, PLUSNG: begin //###0.940 + FillFirstCharSet (scan + REOpSz + RENextOffSz); + EXIT; + end; + BRACES, BRACESNG: begin //###0.940 + opnd := scan + REOpSz + RENextOffSz + REBracesArgSz * 2; + min_cnt := PREBracesArg (scan + REOpSz + RENextOffSz)^; // BRACES + FillFirstCharSet (opnd); + if min_cnt > 0 + then EXIT; + end; + EEND: begin + FirstCharSet := [#0 .. #255]; //###0.948 + EXIT; + end; + else begin + Error (reeMatchPrimMemoryCorruption); + EXIT; + end; + end; { of case scan^} + scan := next; + end; { of while scan <> nil} + end; { of procedure FillFirstCharSet +--------------------------------------------------------------} +{$ENDIF} + +function TRegExpr.Exec (const AInputString : RegExprString) : boolean; + begin + InputString := AInputString; + Result := ExecPrim (1); + end; { of function TRegExpr.Exec +--------------------------------------------------------------} + +{$IFDEF OverMeth} +{$IFNDEF FPC} +function TRegExpr.Exec : boolean; + begin + Result := ExecPrim (1); + end; { of function TRegExpr.Exec +--------------------------------------------------------------} +{$ENDIF} +function TRegExpr.Exec (AOffset: integer) : boolean; + begin + Result := ExecPrim (AOffset); + end; { of function TRegExpr.Exec +--------------------------------------------------------------} +{$ENDIF} + +function TRegExpr.ExecPos (AOffset: integer {$IFDEF DefParam}= 1{$ENDIF}) : boolean; + begin + Result := ExecPrim (AOffset); + end; { of function TRegExpr.ExecPos +--------------------------------------------------------------} + +function TRegExpr.ExecPrim (AOffset: integer) : boolean; + procedure ClearMatchs; + // Clears matchs array + var i : integer; + begin + for i := 0 to NSUBEXP - 1 do begin + startp [i] := nil; + endp [i] := nil; + end; + end; { of procedure ClearMatchs; +..............................................................} + function RegMatch (str : PRegExprChar) : boolean; + // try match at specific point + begin + //###0.949 removed clearing of start\endp + reginput := str; + Result := MatchPrim (programm + REOpSz); + if Result then begin + startp [0] := str; + endp [0] := reginput; + end; + end; { of function RegMatch +..............................................................} + var + s : PRegExprChar; + StartPtr: PRegExprChar; + InputLen : integer; + begin + Result := false; // Be paranoid... + + ClearMatchs; //###0.949 + // ensure that Match cleared either if optimization tricks or some error + // will lead to leaving ExecPrim without actual search. That is + // importent for ExecNext logic and so on. + + if not IsProgrammOk //###0.929 + then EXIT; + + // Check InputString presence + if not Assigned (fInputString) then begin + Error (reeNoInpitStringSpecified); + EXIT; + end; + + InputLen := length (fInputString); + + //Check that the start position is not negative + if AOffset < 1 then begin + Error (reeOffsetMustBeGreaterThen0); + EXIT; + end; + // Check that the start position is not longer than the line + // If so then exit with nothing found + if AOffset > (InputLen + 1) // for matching empty string after last char. + then EXIT; + + StartPtr := fInputString + AOffset - 1; + + // If there is a "must appear" string, look for it. + if regmust <> nil then begin + s := StartPtr; + REPEAT + s := StrScan (s, regmust [0]); + if s <> nil then begin + if StrLComp (s, regmust, regmlen) = 0 + then BREAK; // Found it. + inc (s); + end; + UNTIL s = nil; + if s = nil // Not present. + then EXIT; + end; + + // Mark beginning of line for ^ . + fInputStart := fInputString; + + // Pointer to end of input stream - for + // pascal-style string processing (may include #0) + fInputEnd := fInputString + InputLen; + + {$IFDEF ComplexBraces} + // no loops started + LoopStackIdx := 0; //###0.925 + {$ENDIF} + + // Simplest case: anchored match need be tried only once. + if reganch <> #0 then begin + Result := RegMatch (StartPtr); + EXIT; + end; + + // Messy cases: unanchored match. + s := StartPtr; + if regstart <> #0 then // We know what char it must start with. + REPEAT + s := StrScan (s, regstart); + if s <> nil then begin + Result := RegMatch (s); + if Result + then EXIT + else ClearMatchs; //###0.949 + inc (s); + end; + UNTIL s = nil + else begin // We don't - general case. + repeat //###0.948 + {$IFDEF UseFirstCharSet} + if s^ in FirstCharSet + then Result := RegMatch (s); + {$ELSE} + Result := RegMatch (s); + {$ENDIF} + if Result or (s^ = #0) // Exit on a match or after testing the end-of-string. + then EXIT + else ClearMatchs; //###0.949 + inc (s); + until false; +(* optimized and fixed by Martin Fuller - empty strings + were not allowed to pass thru in UseFirstCharSet mode + {$IFDEF UseFirstCharSet} //###0.929 + while s^ <> #0 do begin + if s^ in FirstCharSet + then Result := RegMatch (s); + if Result + then EXIT; + inc (s); + end; + {$ELSE} + REPEAT + Result := RegMatch (s); + if Result + then EXIT; + inc (s); + UNTIL s^ = #0; + {$ENDIF} +*) + end; + // Failure + end; { of function TRegExpr.ExecPrim +--------------------------------------------------------------} + +function TRegExpr.ExecNext : boolean; + var offset : integer; + begin + Result := false; + if not Assigned (startp[0]) or not Assigned (endp[0]) then begin + Error (reeExecNextWithoutExec); + EXIT; + end; +// Offset := MatchPos [0] + MatchLen [0]; +// if MatchLen [0] = 0 + Offset := endp [0] - fInputString + 1; //###0.929 + if endp [0] = startp [0] //###0.929 + then inc (Offset); // prevent infinite looping if empty string match r.e. + Result := ExecPrim (Offset); + end; { of function TRegExpr.ExecNext +--------------------------------------------------------------} + +function TRegExpr.GetInputString : RegExprString; + begin + if not Assigned (fInputString) then begin + Error (reeGetInputStringWithoutInputString); + EXIT; + end; + Result := fInputString; + end; { of function TRegExpr.GetInputString +--------------------------------------------------------------} + +procedure TRegExpr.SetInputString (const AInputString : RegExprString); + var + Len : integer; + i : integer; + begin + // clear Match* - before next Exec* call it's undefined + for i := 0 to NSUBEXP - 1 do begin + startp [i] := nil; + endp [i] := nil; + end; + + // need reallocation of input string buffer ? + Len := length (AInputString); + if Assigned (fInputString) and (Length (fInputString) <> Len) then begin + FreeMem (fInputString); + fInputString := nil; + end; + // buffer [re]allocation + if not Assigned (fInputString) + then GetMem (fInputString, (Len + 1) * SizeOf (REChar)); + + // copy input string into buffer + {$IFDEF UniCode} + StrPCopy (fInputString, Copy (AInputString, 1, Len)); //###0.927 + {$ELSE} + StrLCopy (fInputString, PRegExprChar (AInputString), Len); + {$ENDIF} + + { + fInputString : string; + fInputStart, fInputEnd : PRegExprChar; + + SetInputString: + fInputString := AInputString; + UniqueString (fInputString); + fInputStart := PChar (fInputString); + Len := length (fInputString); + fInputEnd := PRegExprChar (integer (fInputStart) + Len); ?? + !! startp/endp âñå ðàâíî áóäåò îïàñíî èñïîëüçîâàòü ? + } + end; { of procedure TRegExpr.SetInputString +--------------------------------------------------------------} + +procedure TRegExpr.SetLineSeparators (const AStr : RegExprString); + begin + if AStr <> fLineSeparators then begin + fLineSeparators := AStr; + InvalidateProgramm; + end; + end; { of procedure TRegExpr.SetLineSeparators +--------------------------------------------------------------} + +procedure TRegExpr.SetLinePairedSeparator (const AStr : RegExprString); + begin + if length (AStr) = 2 then begin + if AStr [1] = AStr [2] then begin + // it's impossible for our 'one-point' checking to support + // two chars separator for identical chars + Error (reeBadLinePairedSeparator); + EXIT; + end; + if not fLinePairedSeparatorAssigned + or (AStr [1] <> fLinePairedSeparatorHead) + or (AStr [2] <> fLinePairedSeparatorTail) then begin + fLinePairedSeparatorAssigned := true; + fLinePairedSeparatorHead := AStr [1]; + fLinePairedSeparatorTail := AStr [2]; + InvalidateProgramm; + end; + end + else if length (AStr) = 0 then begin + if fLinePairedSeparatorAssigned then begin + fLinePairedSeparatorAssigned := false; + InvalidateProgramm; + end; + end + else Error (reeBadLinePairedSeparator); + end; { of procedure TRegExpr.SetLinePairedSeparator +--------------------------------------------------------------} + +function TRegExpr.GetLinePairedSeparator : RegExprString; + begin + if fLinePairedSeparatorAssigned then begin + {$IFDEF UniCode} + // Here is some UniCode 'magic' + // If You do know better decision to concatenate + // two WideChars, please, let me know! + Result := fLinePairedSeparatorHead; //###0.947 + Result := Result + fLinePairedSeparatorTail; + {$ELSE} + Result := fLinePairedSeparatorHead + fLinePairedSeparatorTail; + {$ENDIF} + end + else Result := ''; + end; { of function TRegExpr.GetLinePairedSeparator +--------------------------------------------------------------} + +function TRegExpr.Substitute (const ATemplate : RegExprString) : RegExprString; +// perform substitutions after a regexp match +// completely rewritten in 0.929 + var + TemplateLen : integer; + TemplateBeg, TemplateEnd : PRegExprChar; + p, p0, ResultPtr : PRegExprChar; + ResultLen : integer; + n : integer; + Ch : REChar; + function ParseVarName (var APtr : PRegExprChar) : integer; + // extract name of variable (digits, may be enclosed with + // curly braces) from APtr^, uses TemplateEnd !!! + const + Digits = ['0' .. '9']; + var + p : PRegExprChar; + Delimited : boolean; + begin + Result := 0; + p := APtr; + Delimited := (p < TemplateEnd) and (p^ = '{'); + if Delimited + then inc (p); // skip left curly brace + if (p < TemplateEnd) and (p^ = '&') + then inc (p) // this is '$&' or '${&}' + else + while (p < TemplateEnd) and + {$IFDEF UniCode} //###0.935 + (ord (p^) < 256) and (char (p^) in Digits) + {$ELSE} + (p^ in Digits) + {$ENDIF} + do begin + Result := Result * 10 + (ord (p^) - ord ('0')); //###0.939 + inc (p); + end; + if Delimited then + if (p < TemplateEnd) and (p^ = '}') + then inc (p) // skip right curly brace + else p := APtr; // isn't properly terminated + if p = APtr + then Result := -1; // no valid digits found or no right curly brace + APtr := p; + end; + begin + // Check programm and input string + if not IsProgrammOk + then EXIT; + if not Assigned (fInputString) then begin + Error (reeNoInpitStringSpecified); + EXIT; + end; + // Prepare for working + TemplateLen := length (ATemplate); + if TemplateLen = 0 then begin // prevent nil pointers + Result := ''; + EXIT; + end; + TemplateBeg := pointer (ATemplate); + TemplateEnd := TemplateBeg + TemplateLen; + // Count result length for speed optimization. + ResultLen := 0; + p := TemplateBeg; + while p < TemplateEnd do begin + Ch := p^; + inc (p); + if Ch = '$' + then n := ParseVarName (p) + else n := -1; + if n >= 0 then begin + if (n < NSUBEXP) and Assigned (startp [n]) and Assigned (endp [n]) + then inc (ResultLen, endp [n] - startp [n]); + end + else begin + if (Ch = EscChar) and (p < TemplateEnd) + then inc (p); // quoted or special char followed + inc (ResultLen); + end; + end; + // Get memory. We do it once and it significant speed up work ! + if ResultLen = 0 then begin + Result := ''; + EXIT; + end; + SetString (Result, nil, ResultLen); + // Fill Result + ResultPtr := pointer (Result); + p := TemplateBeg; + while p < TemplateEnd do begin + Ch := p^; + inc (p); + if Ch = '$' + then n := ParseVarName (p) + else n := -1; + if n >= 0 then begin + p0 := startp [n]; + if (n < NSUBEXP) and Assigned (p0) and Assigned (endp [n]) then + while p0 < endp [n] do begin + ResultPtr^ := p0^; + inc (ResultPtr); + inc (p0); + end; + end + else begin + if (Ch = EscChar) and (p < TemplateEnd) then begin // quoted or special char followed + Ch := p^; + inc (p); + end; + ResultPtr^ := Ch; + inc (ResultPtr); + end; + end; + end; { of function TRegExpr.Substitute +--------------------------------------------------------------} + +procedure TRegExpr.Split (AInputStr : RegExprString; APieces : TStrings); + var PrevPos : integer; + begin + PrevPos := 1; + if Exec (AInputStr) then + REPEAT + APieces.Add (System.Copy (AInputStr, PrevPos, MatchPos [0] - PrevPos)); + PrevPos := MatchPos [0] + MatchLen [0]; + UNTIL not ExecNext; + APieces.Add (System.Copy (AInputStr, PrevPos, MaxInt)); // Tail + end; { of procedure TRegExpr.Split +--------------------------------------------------------------} + +function TRegExpr.Replace (AInputStr : RegExprString; const AReplaceStr : RegExprString; + AUseSubstitution : boolean{$IFDEF DefParam}= False{$ENDIF}) : RegExprString; + var + PrevPos : integer; + begin + Result := ''; + PrevPos := 1; + if Exec (AInputStr) then + REPEAT + Result := Result + System.Copy (AInputStr, PrevPos, + MatchPos [0] - PrevPos); + if AUseSubstitution //###0.946 + then Result := Result + Substitute (AReplaceStr) + else Result := Result + AReplaceStr; + PrevPos := MatchPos [0] + MatchLen [0]; + UNTIL not ExecNext; + Result := Result + System.Copy (AInputStr, PrevPos, MaxInt); // Tail + end; { of function TRegExpr.Replace +--------------------------------------------------------------} + +function TRegExpr.ReplaceEx (AInputStr : RegExprString; + AReplaceFunc : TRegExprReplaceFunction) + : RegExprString; + var + PrevPos : integer; + begin + Result := ''; + PrevPos := 1; + if Exec (AInputStr) then + REPEAT + Result := Result + System.Copy (AInputStr, PrevPos, + MatchPos [0] - PrevPos) + + AReplaceFunc (Self); + PrevPos := MatchPos [0] + MatchLen [0]; + UNTIL not ExecNext; + Result := Result + System.Copy (AInputStr, PrevPos, MaxInt); // Tail + end; { of function TRegExpr.ReplaceEx +--------------------------------------------------------------} + + +{$IFDEF OverMeth} +function TRegExpr.Replace (AInputStr : RegExprString; + AReplaceFunc : TRegExprReplaceFunction) + : RegExprString; + begin + ReplaceEx (AInputStr, AReplaceFunc); + end; { of function TRegExpr.Replace +--------------------------------------------------------------} +{$ENDIF} + +{=============================================================} +{====================== Debug section ========================} +{=============================================================} + +{$IFDEF RegExpPCodeDump} +function TRegExpr.DumpOp (op : TREOp) : RegExprString; +// printable representation of opcode + begin + case op of + BOL: Result := 'BOL'; + EOL: Result := 'EOL'; + BOLML: Result := 'BOLML'; + EOLML: Result := 'EOLML'; + BOUND: Result := 'BOUND'; //###0.943 + NOTBOUND: Result := 'NOTBOUND'; //###0.943 + ANY: Result := 'ANY'; + ANYML: Result := 'ANYML'; //###0.941 + ANYLETTER: Result := 'ANYLETTER'; + NOTLETTER: Result := 'NOTLETTER'; + ANYDIGIT: Result := 'ANYDIGIT'; + NOTDIGIT: Result := 'NOTDIGIT'; + ANYSPACE: Result := 'ANYSPACE'; + NOTSPACE: Result := 'NOTSPACE'; + ANYOF: Result := 'ANYOF'; + ANYBUT: Result := 'ANYBUT'; + ANYOFCI: Result := 'ANYOF/CI'; + ANYBUTCI: Result := 'ANYBUT/CI'; + BRANCH: Result := 'BRANCH'; + EXACTLY: Result := 'EXACTLY'; + EXACTLYCI: Result := 'EXACTLY/CI'; + NOTHING: Result := 'NOTHING'; + COMMENT: Result := 'COMMENT'; + BACK: Result := 'BACK'; + EEND: Result := 'END'; + BSUBEXP: Result := 'BSUBEXP'; + BSUBEXPCI: Result := 'BSUBEXP/CI'; + Succ (OPEN) .. TREOp (Ord (OPEN) + NSUBEXP - 1): //###0.929 + Result := Format ('OPEN[%d]', [ord (op) - ord (OPEN)]); + Succ (CLOSE) .. TREOp (Ord (CLOSE) + NSUBEXP - 1): //###0.929 + Result := Format ('CLOSE[%d]', [ord (op) - ord (CLOSE)]); + STAR: Result := 'STAR'; + PLUS: Result := 'PLUS'; + BRACES: Result := 'BRACES'; + {$IFDEF ComplexBraces} + LOOPENTRY: Result := 'LOOPENTRY'; //###0.925 + LOOP: Result := 'LOOP'; //###0.925 + LOOPNG: Result := 'LOOPNG'; //###0.940 + {$ENDIF} + ANYOFTINYSET: Result:= 'ANYOFTINYSET'; + ANYBUTTINYSET:Result:= 'ANYBUTTINYSET'; + {$IFDEF UseSetOfChar} //###0.929 + ANYOFFULLSET: Result:= 'ANYOFFULLSET'; + {$ENDIF} + STARNG: Result := 'STARNG'; //###0.940 + PLUSNG: Result := 'PLUSNG'; //###0.940 + BRACESNG: Result := 'BRACESNG'; //###0.940 + else Error (reeDumpCorruptedOpcode); + end; {of case op} + Result := ':' + Result; + end; { of function TRegExpr.DumpOp +--------------------------------------------------------------} + +function TRegExpr.Dump : RegExprString; +// dump a regexp in vaguely comprehensible form + var + s : PRegExprChar; + op : TREOp; // Arbitrary non-END op. + next : PRegExprChar; + i : integer; + Diff : integer; +{$IFDEF UseSetOfChar} //###0.929 + Ch : REChar; +{$ENDIF} + begin + if not IsProgrammOk //###0.929 + then EXIT; + + op := EXACTLY; + Result := ''; + s := programm + REOpSz; + while op <> EEND do begin // While that wasn't END last time... + op := s^; + Result := Result + Format ('%2d%s', [s - programm, DumpOp (s^)]); // Where, what. + next := regnext (s); + if next = nil // Next ptr. + then Result := Result + ' (0)' + else begin + if next > s //###0.948 PWideChar subtraction workaround (see comments in Tail method for details) + then Diff := next - s + else Diff := - (s - next); + Result := Result + Format (' (%d) ', [(s - programm) + Diff]); + end; + inc (s, REOpSz + RENextOffSz); + if (op = ANYOF) or (op = ANYOFCI) or (op = ANYBUT) or (op = ANYBUTCI) + or (op = EXACTLY) or (op = EXACTLYCI) then begin + // Literal string, where present. + while s^ <> #0 do begin + Result := Result + s^; + inc (s); + end; + inc (s); + end; + if (op = ANYOFTINYSET) or (op = ANYBUTTINYSET) then begin + for i := 1 to TinySetLen do begin + Result := Result + s^; + inc (s); + end; + end; + if (op = BSUBEXP) or (op = BSUBEXPCI) then begin + Result := Result + ' \' + IntToStr (Ord (s^)); + inc (s); + end; + {$IFDEF UseSetOfChar} //###0.929 + if op = ANYOFFULLSET then begin + for Ch := #0 to #255 do + if Ch in PSetOfREChar (s)^ then + if Ch < ' ' + then Result := Result + '#' + IntToStr (Ord (Ch)) //###0.936 + else Result := Result + Ch; + inc (s, SizeOf (TSetOfREChar)); + end; + {$ENDIF} + if (op = BRACES) or (op = BRACESNG) then begin //###0.941 + // show min/max argument of BRACES operator + Result := Result + Format ('{%d,%d}', [PREBracesArg (s)^, PREBracesArg (s + REBracesArgSz)^]); + inc (s, REBracesArgSz * 2); + end; + {$IFDEF ComplexBraces} + if (op = LOOP) or (op = LOOPNG) then begin //###0.940 + Result := Result + Format (' -> (%d) {%d,%d}', [ + (s - programm - (REOpSz + RENextOffSz)) + PRENextOff (s + 2 * REBracesArgSz)^, + PREBracesArg (s)^, PREBracesArg (s + REBracesArgSz)^]); + inc (s, 2 * REBracesArgSz + RENextOffSz); + end; + {$ENDIF} + Result := Result + #$d#$a; + end; { of while} + + // Header fields of interest. + + if regstart <> #0 + then Result := Result + 'start ' + regstart; + if reganch <> #0 + then Result := Result + 'anchored '; + if regmust <> nil + then Result := Result + 'must have ' + regmust; + {$IFDEF UseFirstCharSet} //###0.929 + Result := Result + #$d#$a'FirstCharSet:'; + for Ch := #0 to #255 do + if Ch in FirstCharSet + then begin + if Ch < ' ' + then Result := Result + '#' + IntToStr(Ord(Ch)) //###0.948 + else Result := Result + Ch; + end; + {$ENDIF} + Result := Result + #$d#$a; + end; { of function TRegExpr.Dump +--------------------------------------------------------------} +{$ENDIF} + +{$IFDEF reRealExceptionAddr} +{$OPTIMIZATION ON} +// ReturnAddr works correctly only if compiler optimization is ON +// I placed this method at very end of unit because there are no +// way to restore compiler optimization flag ... +{$ENDIF} +procedure TRegExpr.Error (AErrorID : integer); +{$IFDEF reRealExceptionAddr} + function ReturnAddr : pointer; //###0.938 + asm + mov eax,[ebp+4] + end; +{$ENDIF} + var + e : ERegExpr; + begin + fLastError := AErrorID; // dummy stub - useless because will raise exception + if AErrorID < 1000 // compilation error ? + then e := ERegExpr.Create (ErrorMsg (AErrorID) // yes - show error pos + + ' (pos ' + IntToStr (CompilerErrorPos) + ')') + else e := ERegExpr.Create (ErrorMsg (AErrorID)); + e.ErrorCode := AErrorID; + e.CompilerErrorPos := CompilerErrorPos; + raise e + {$IFDEF reRealExceptionAddr} + At ReturnAddr; //###0.938 + {$ENDIF} + end; { of procedure TRegExpr.Error +--------------------------------------------------------------} + +(* + PCode persistence: + FirstCharSet + programm, regsize + regstart // -> programm + reganch // -> programm + regmust, regmlen // -> programm + fExprIsCompiled +*) + +// be carefull - placed here code will be always compiled with +// compiler optimization flag + +{$IFDEF FPC} +initialization + RegExprInvertCaseFunction := TRegExpr.InvertCaseFunction; + +{$ENDIF} +end. + diff --git a/Source/Servidor/Utiles/uBusinessUtils.pas b/Source/Servidor/Utiles/uBusinessUtils.pas index 76ac5daa..bad38ae5 100644 --- a/Source/Servidor/Utiles/uBusinessUtils.pas +++ b/Source/Servidor/Utiles/uBusinessUtils.pas @@ -10,15 +10,15 @@ function GetBusinessProcessorConnection (ABusinessProcessor: TDABusinessProcesso implementation uses - DARemoteService_Impl; + DataAbstractService_Impl; { Se utiliza en las reglas de negocio del servidor y devuelve la conexión utilizada por el BusinessProcessor para procesar los deltas. } function GetBusinessProcessorConnection (ABusinessProcessor: TDABusinessProcessor): IDAConnection; begin - if (ABusinessProcessor.Owner is TDARemoteService) then - Result := (ABusinessProcessor.Owner as TDARemoteService).Connection + if (ABusinessProcessor.Owner is TDataAbstractService) then + Result := (ABusinessProcessor.Owner as TDataAbstractService).Connection else Result := NIL; end; diff --git a/Source/Servidor/Utiles/uRestriccionesUsuarioUtils.pas b/Source/Servidor/Utiles/uRestriccionesUsuarioUtils.pas index effb8514..1b15da0b 100644 --- a/Source/Servidor/Utiles/uRestriccionesUsuarioUtils.pas +++ b/Source/Servidor/Utiles/uRestriccionesUsuarioUtils.pas @@ -11,12 +11,19 @@ procedure FiltrarAccesoUsuario (ASession: TROSession; AConnection: IDAConnection; ASchema: IDASchema; ADataset: IDADataset; const FieldNameID_EMPRESA : String = 'ID_EMPRESA'); +procedure _FiltrarAccesoUsuario (ASession: TROSession; + AConnection: IDAConnection; ASchema: IDASchema; ADataset: IDADataset; + const FieldNameID_EMPRESA : String = 'ID_EMPRESA'); + + implementation -uses Classes, SysUtils, uDatabaseUtils, uUsersManager, uDataModuleServer, +uses + Classes, SysUtils, uDatabaseUtils, uUsersManager, uDataModuleServer, Dialogs; -procedure FiltrarAccesoUsuario (ASession: TROSession; + +procedure _FiltrarAccesoUsuario (ASession: TROSession; AConnection: IDAConnection; ASchema: IDASchema; ADataset: IDADataset; const FieldNameID_EMPRESA : String); var @@ -77,6 +84,27 @@ begin end; end; +procedure FiltrarAccesoUsuario (ASession: TROSession; + AConnection: IDAConnection; ASchema: IDASchema; ADataset: IDADataset; + const FieldNameID_EMPRESA : String); +var + AUserInfo : TUserInfo; +begin + { Aquí se asegura que el usuario sólo accede a las filas + de las empresas a las que tiene permiso para acceder } + AUserInfo := TUserInfo.Create(ASession); + try + if not AUserInfo.EsAdministrador then + begin + with ADataSet.DynamicWhere do + Expression := NewBinaryExpression(NewField('', FieldNameID_EMPRESA), + NewConstant(AUserInfo.Empresas, datString), dboIn); + end; + finally + FreeAndNil(AUserInfo); + end; +end; + diff --git a/Source/Servidor/Utiles/uSchemaUtilsServer.pas b/Source/Servidor/Utiles/uSchemaUtilsServer.pas index 4985f3b5..01327bb3 100644 --- a/Source/Servidor/Utiles/uSchemaUtilsServer.pas +++ b/Source/Servidor/Utiles/uSchemaUtilsServer.pas @@ -5,8 +5,7 @@ interface uses Classes, SysUtils, uROClientIntf, uROTypes, uROServer, uROServerIntf, uROSessions, - DARemoteService_Impl, - DataAbstract_Intf, + DataAbstract4_Intf, DataAbstractService_Impl, uDAClasses, uDAInterfaces, uDADataTable; type @@ -14,7 +13,7 @@ type protected function GenerateNewSQL : String; public - Service : TDARemoteService; + Service : TDataAbstractService; Columnas : String; ColumnasQueSuman : String; ColumnasQueAVG : String; @@ -39,7 +38,6 @@ var i : integer; Separador : String; bHayAgrupacion : Boolean; - APos : Integer; function GetTrueFieldName(AField : string; ConAlias : Boolean = True) : String; var @@ -131,7 +129,6 @@ function TReplicarDataSet.GetNewDataSet: IDADataset; var SQL: String; ASchemaDataSet: TDADataSet; - AField: TDAField; AColumnList : TStringList; i, j : Integer; begin diff --git a/Source/Servidor/Utiles/uServerAppUtils.pas b/Source/Servidor/Utiles/uServerAppUtils.pas index f180c8a8..1fee0c43 100644 --- a/Source/Servidor/Utiles/uServerAppUtils.pas +++ b/Source/Servidor/Utiles/uServerAppUtils.pas @@ -2,26 +2,26 @@ unit uServerAppUtils; interface -type - TRdxBalloonIcon = (biNone, biError, biInfo, biWarning); - -procedure ShowBalloonHint(const AMensaje: String; ABalloonIcon: TRdxBalloonIcon); +uses + ExtCtrls; + +procedure ShowBalloonHint(const AMensaje: String; ABalloonIcon: TBalloonFlags); implementation uses Dialogs, Forms, uServerMainForm, JvTrayIcon; -procedure ShowBalloonHint(const AMensaje: String; ABalloonIcon: TRdxBalloonIcon); +procedure ShowBalloonHint(const AMensaje: String; ABalloonIcon: TBalloonFlags); begin - with fServerForm.JvTrayIcon do + with fServerForm.TrayIcon1 do begin - if AcceptBalloons then - begin - BalloonHint('', ''); - BalloonHint('FactuGES (Servidor)', AMensaje, btInfo); - end; + BalloonTitle := 'FactuGES (Servidor)'; + BalloonHint := AMensaje; + BalloonTimeout := 2000; // 2000ms => 2seg + BalloonFlags := ABalloonIcon; Hint := 'FactuGES (Servidor)' + #10#13 + AMensaje; + ShowBalloonHint; end; end; diff --git a/Source/Servidor/Utiles/uTiendaWebUtils.pas b/Source/Servidor/Utiles/uTiendaWebUtils.pas deleted file mode 100644 index e23384d1..00000000 --- a/Source/Servidor/Utiles/uTiendaWebUtils.pas +++ /dev/null @@ -1,46 +0,0 @@ -unit uTiendaWebUtils; - -interface - -function HayConexionConTienda(const AODBCName : String; var AErrorMsg: String): Boolean; - -implementation - -uses - SysUtils, SqlExpr, Dialogs, ADODB; - -function HayConexionConTienda(const AODBCName : String; var AErrorMsg: String): Boolean; -var - ADOConnection1: TADOConnection; -begin - AErrorMsg := ''; - ADOConnection1 := TADOConnection.Create(nil); - try - with ADOConnection1 do - begin - Name := 'ADOConnection1'; - Provider := 'MSDASQL.1'; - LoginPrompt := False; - ConnectionString := 'Provider=MSDASQL.1;Persist Security Info=False;' + - 'Data Source=' + AODBCName; - - try - Connected := True; - Result := True; - Connected := False; - except - on E : Exception do - begin - Result := False; - AErrorMsg := e.Message; - end; - end; - end; - finally - FreeAndNIL(ADOConnection1); - end; -end; - - - -end. diff --git a/Source/Servidor/srvEmpresas_Impl.pas b/Source/Servidor/srvEmpresas_Impl.pas index 45fde260..14b5ca7e 100644 --- a/Source/Servidor/srvEmpresas_Impl.pas +++ b/Source/Servidor/srvEmpresas_Impl.pas @@ -7,22 +7,24 @@ unit srvEmpresas_Impl; { This is where you are supposed to code the implementation of your objects. } {----------------------------------------------------------------------------} +{$I Remobjects.inc} + interface uses {vcl:} Classes, SysUtils, - {RemObjects:} uROClientIntf, uROTypes, uROServer, uROServerIntf, uROSessions, - {Ancestor Implementation:} DARemoteService_Impl, - {Used RODLs:} DataAbstract_Intf, + {RemObjects:} uROXMLIntf, uROClientIntf, uROTypes, uROServer, uROServerIntf, uROSessions, + {Required:} uRORemoteDataModule, + {Ancestor Implementation:} DataAbstractService_Impl, + {Used RODLs:} DataAbstract4_Intf, {Generated:} FactuGES_Intf; type { TsrvEmpresas } - TsrvEmpresas = class(TDARemoteService, IsrvEmpresas) + TsrvEmpresas = class(TDataAbstractService, IsrvEmpresas) private protected { IsrvEmpresas methods } - function GetNextAutoInc(const GeneratorName: String): Integer; end; implementation @@ -33,14 +35,10 @@ uses procedure Create_srvEmpresas(out anInstance : IUnknown); begin - anInstance := TsrvEmpresas.Create(NIL); + anInstance := TsrvEmpresas.Create(nil); end; { srvEmpresas } -function TsrvEmpresas.GetNextAutoInc(const GeneratorName: String): Integer; -begin -end; - initialization TROClassFactory.Create('srvEmpresas', Create_srvEmpresas, TsrvEmpresas_Invoker); diff --git a/Source/Servicios/srvLogin_Impl.dfm b/Source/Servidor/srvLogin_Impl.dfm similarity index 68% rename from Source/Servicios/srvLogin_Impl.dfm rename to Source/Servidor/srvLogin_Impl.dfm index 1dc3fb8e..dfe6364f 100644 --- a/Source/Servicios/srvLogin_Impl.dfm +++ b/Source/Servidor/srvLogin_Impl.dfm @@ -1,11 +1,11 @@ object srvLogin: TsrvLogin OldCreateOrder = True - OnCreate = DARemoteServiceCreate - AcquireConnection = True + OnCreate = DataAbstractServiceCreate ConnectionName = 'IBX' ServiceSchema = schLogin - ServiceAdapter = DABINAdapter - OnBeforeAcquireConnection = DARemoteServiceBeforeAcquireConnection + ServiceDataStreamer = Bin2DataStreamer + ExportedDataTables = <> + BeforeAcquireConnection = DataAbstractServiceBeforeAcquireConnection Height = 300 Width = 300 object schLogin: TDASchema @@ -16,13 +16,13 @@ object srvLogin: TsrvLogin item Name = 'ID_USUARIO' DataType = datInteger - BlobType = dabtUnknown - Value = '' + Value = '1' ParamType = daptInput end> Statements = < item Connection = 'IBX' + TargetTable = 'EMPRESAS_USUARIOS' SQL = 'SELECT '#10' ID_EMPRESA'#10' FROM'#10' EMPRESAS_USUARIOS'#10' WHERE ID_U' + 'SUARIO = :ID_USUARIO' @@ -38,24 +38,15 @@ object srvLogin: TsrvLogin item Name = 'ID_EMPRESA' DataType = datInteger - BlobType = dabtUnknown - DisplayWidth = 0 - Alignment = taLeftJustify - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False + InPrimaryKey = True end> - BusinessRulesClient.ScriptLanguage = rslPascalScript - BusinessRulesServer.ScriptLanguage = rslPascalScript end item Params = < item Name = 'ID_USUARIO' DataType = datInteger - BlobType = dabtUnknown - Value = '' + Value = '1' ParamType = daptInput end> Statements = < @@ -78,36 +69,26 @@ object srvLogin: TsrvLogin Name = 'PERFIL' DataType = datString Size = 15 - BlobType = dabtUnknown - DisplayWidth = 0 - Alignment = taLeftJustify - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False end> - BusinessRulesClient.ScriptLanguage = rslPascalScript - BusinessRulesServer.ScriptLanguage = rslPascalScript end item Params = < item Name = 'USUARIO' DataType = datString - BlobType = dabtUnknown Value = '' ParamType = daptInput end item Name = 'PASS' DataType = datString - BlobType = dabtUnknown Value = '' ParamType = daptInput end> Statements = < item Connection = 'IBX' + TargetTable = 'USUARIOS' SQL = 'SELECT'#10' ID'#10' FROM'#10' USUARIOS'#10' WHERE USUARIO = :USUARIO AND' + #10' PASS = :PASS AND'#10' ACTIVO = 1' @@ -123,31 +104,23 @@ object srvLogin: TsrvLogin item Name = 'ID' DataType = datInteger - BlobType = dabtUnknown - DisplayWidth = 0 - Alignment = taLeftJustify - InPrimaryKey = False - Calculated = False - Lookup = False - LookupCache = False + InPrimaryKey = True end> - BusinessRulesClient.ScriptLanguage = rslPascalScript - BusinessRulesServer.ScriptLanguage = rslPascalScript end> + JoinDataTables = <> + UnionDataTables = <> Commands = < item Params = < item Name = 'PASSWORD' DataType = datString - BlobType = dabtUnknown Value = '' ParamType = daptInput end item Name = 'USERID' DataType = datString - BlobType = dabtUnknown Value = '' ParamType = daptInput end> @@ -165,10 +138,11 @@ object srvLogin: TsrvLogin end> RelationShips = <> UpdateRules = <> + Version = 0 Left = 40 Top = 24 end - object DABINAdapter: TDABINAdapter + object Bin2DataStreamer: TDABin2DataStreamer Left = 40 Top = 88 end diff --git a/Source/Servicios/srvLogin_Impl.pas b/Source/Servidor/srvLogin_Impl.pas similarity index 71% rename from Source/Servicios/srvLogin_Impl.pas rename to Source/Servidor/srvLogin_Impl.pas index 69da6b60..a73d90f9 100644 --- a/Source/Servicios/srvLogin_Impl.pas +++ b/Source/Servidor/srvLogin_Impl.pas @@ -10,24 +10,25 @@ unit srvLogin_Impl; interface uses - {vcl:} Classes, SysUtils, - {RemObjects:} uROClientIntf, uROTypes, uROServer, uROServerIntf, uROSessions, - {Ancestor Implementation:} DARemoteService_Impl, - {Used RODLs:} DataAbstract_Intf, + {vcl:} Classes, SysUtils, + {RemObjects:} uROXMLIntf, uROClientIntf, uROTypes, uROServer, uROServerIntf, uROSessions, + {Required:} uRORemoteDataModule, + {Ancestor Implementation:} DataAbstractService_Impl, + {Used RODLs:} DataAbstract4_Intf, {Generated:} FactuGES_Intf, uDAClasses, uDAInterfaces, uDAEngine, - uDADataTable, uDABINAdapter, uROClient; + uDADataTable, uDABINAdapter, uROClient, uDADataStreamer, uDABin2DataStreamer; const PERFIL_ADMINISTRADORES = 'Administradores'; type { TsrvLogin } - TsrvLogin = class(TDARemoteService, IsrvLogin) - DABINAdapter: TDABINAdapter; + TsrvLogin = class(TDataAbstractService, IsrvLogin) + Bin2DataStreamer: TDABin2DataStreamer; schLogin: TDASchema; - procedure DARemoteServiceBeforeAcquireConnection(Sender: TDARemoteService; - var ConnectionName: string); - procedure DARemoteServiceCreate(Sender: TObject); + procedure DataAbstractServiceBeforeAcquireConnection(aSender: TObject; + var aConnectionName: string); + procedure DataAbstractServiceCreate(Sender: TObject); private protected function Login(const User: String; const Password: String; out LoginInfo: TRdxLoginInfo): Boolean; @@ -38,9 +39,10 @@ type implementation {$R *.dfm} + uses {Generated:} FactuGES_Invk, uDataModuleServer, - Dialogs, IB, Variants, uSesionesUtils, uRORemoteDataModule; + Dialogs, IB, Variants, uSesionesUtils; procedure Create_srvLogin(out anInstance : IUnknown); begin @@ -50,19 +52,18 @@ end; { srvLogin } { TsrvLogin } -procedure TsrvLogin.DARemoteServiceBeforeAcquireConnection( - Sender: TDARemoteService; var ConnectionName: string); +procedure TsrvLogin.DataAbstractServiceBeforeAcquireConnection(aSender: TObject; + var aConnectionName: string); begin ConnectionName := dmServer.ConnectionName; end; -procedure TsrvLogin.DARemoteServiceCreate(Sender: TObject); +procedure TsrvLogin.DataAbstractServiceCreate(Sender: TObject); begin SessionManager := dmServer.SessionManager; end; -function TsrvLogin.Login(const User, Password: String; - out LoginInfo: TRdxLoginInfo): Boolean; +function TsrvLogin.Login(const User, Password: String; out LoginInfo: TRdxLoginInfo): Boolean; var dsUser, dsPerfiles, @@ -77,13 +78,13 @@ begin if (dsUser.RecordCount = 1) then begin try - LoginInfo := TRdxLoginInfo.Create; + LoginInfo := TRdxLoginInfo.Create(); with LoginInfo do begin UserID := dsUser.FieldValues[0]; Usuario := User; SessionID := GUIDToString(Session.SessionID); - Perfiles := TDAStringArray.Create; + Perfiles := StringArray.Create(); Empresas := TRdxEmpresasArray.Create; end; @@ -110,6 +111,7 @@ begin InternalLoginInfo := TRdxLoginInfo.Create; InternalLoginInfo.Assign(LoginInfo); SesionesHelper.SaveSessionObject(Session, SESION_LOGININFO, InternalLoginInfo); + Result := True; except on e : exception do @@ -121,7 +123,7 @@ begin end; end else begin - { Invalid login. The temporary session is not to be kept. } +// Invalid login. The temporary session is not to be kept. DestroySession; end; end; diff --git a/Source/Servidor/srvReferencias_Impl.dfm b/Source/Servidor/srvReferencias_Impl.dfm deleted file mode 100644 index e2121433..00000000 --- a/Source/Servidor/srvReferencias_Impl.dfm +++ /dev/null @@ -1,7 +0,0 @@ -inherited srvReferencias: TsrvReferencias - OldCreateOrder = True - Left = 200 - Top = 200 - Height = 300 - Width = 300 -end diff --git a/Source/Servidor/srvReferencias_Impl.pas b/Source/Servidor/srvReferencias_Impl.pas deleted file mode 100644 index c0e6bd6b..00000000 --- a/Source/Servidor/srvReferencias_Impl.pas +++ /dev/null @@ -1,44 +0,0 @@ -unit srvReferencias_Impl; - -{----------------------------------------------------------------------------} -{ This unit was automatically generated by the RemObjects SDK after reading } -{ the RODL file associated with this project . } -{ } -{ This is where you are supposed to code the implementation of your objects. } -{----------------------------------------------------------------------------} - -interface - -uses - {vcl:} Classes, SysUtils, - {RemObjects:} uROClientIntf, uROTypes, uROServer, uROServerIntf, uROSessions, - {Ancestor Implementation:} DARemoteService_Impl, - {Used RODLs:} DataAbstract_Intf, - {Generated:} FactuGES_Intf; - -type - { TsrvReferencias } - TsrvReferencias = class(TDARemoteService, IsrvReferencias) - private - protected - { IsrvReferencias methods } - end; - -implementation - -{$R *.dfm} -uses - {Generated:} FactuGES_Invk; - -procedure Create_srvReferencias(out anInstance : IUnknown); -begin - anInstance := TsrvReferencias.Create(NIL); -end; - -{ srvReferencias } -initialization - TROClassFactory.Create('srvReferencias', Create_srvReferencias, TsrvReferencias_Invoker); - -finalization - -end. diff --git a/Source/Servidor/uDataModuleServer.dfm b/Source/Servidor/uDataModuleServer.dfm index 67bac171..da67d563 100644 --- a/Source/Servidor/uDataModuleServer.dfm +++ b/Source/Servidor/uDataModuleServer.dfm @@ -15,13 +15,7 @@ object dmServer: TdmServer end> OnBeforeServerActivate = HTTPServerBeforeServerActivate IndyServer.Bindings = <> - IndyServer.CommandHandlers = <> IndyServer.DefaultPort = 8099 - IndyServer.Greeting.NumericCode = 0 - IndyServer.MaxConnectionReply.NumericCode = 0 - IndyServer.ReplyExceptionCode = 0 - IndyServer.ReplyTexts = <> - IndyServer.ReplyUnknownCommand.NumericCode = 0 Port = 8099 Left = 40 Top = 16 @@ -40,30 +34,20 @@ object dmServer: TdmServer Top = 80 end object ConnectionManager: TDAConnectionManager - MaxPoolSize = 10 - PoolTimeoutSeconds = 60 - PoolBehaviour = pbWait - WaitIntervalSeconds = 1 + OnConnectionAcquired = ConnectionManagerConnectionAcquired Connections = < - item - Name = 'MySQL' - ConnectionString = - 'ADO?AuxDriver=MSDASQL.1;Server=OSCommerce Desarrollo;UserID=root' + - ';Password=;' - Default = False - Tag = 0 - end item Name = 'IBX' ConnectionString = - 'IBX?Server=localhost;Database=E:\Codigo (Tecsitel)\Database\FACT' + - 'UGES.FDB;UserID=sysdba;Password=masterkey;Dialect=3;Charset=ISO8' + - '859_1;' + 'IBX?Server=localhost;Database=C:\Codigo Tecsitel\Database\FACTUG' + + 'ES.FDB;UserID=sysdba;Password=masterkey;Dialect=3;Charset=ISO885' + + '9_1;' + ConnectionType = 'Interbase' Default = True - Tag = 0 end> DriverManager = DriverManager PoolingEnabled = True + PoolTransactionBehaviour = ptRollback Left = 40 Top = 80 end @@ -77,8 +61,8 @@ object dmServer: TdmServer Top = 208 end object SessionManager: TROInMemorySessionManager - SessionDuration = -1 OnSessionDeleted = SessionManagerSessionDeleted + SessionDuration = -1 Left = 216 Top = 16 end @@ -92,8 +76,4 @@ object dmServer: TdmServer Left = 232 Top = 80 end - object DAADODriver: TDAADODriver - Left = 232 - Top = 136 - end end diff --git a/Source/Servidor/uDataModuleServer.pas b/Source/Servidor/uDataModuleServer.pas index 25eb746d..22bbaf9a 100644 --- a/Source/Servidor/uDataModuleServer.pas +++ b/Source/Servidor/uDataModuleServer.pas @@ -25,7 +25,6 @@ type SessionManager: TROInMemorySessionManager; JvLogFile1: TJvLogFile; DAIBXDriver: TDAIBXDriver; - DAADODriver: TDAADODriver; ConnectionManager: TDAConnectionManager; procedure DataModuleCreate(Sender: TObject); procedure DataModuleDestroy(Sender: TObject); @@ -34,6 +33,8 @@ type Tag: Integer); procedure SessionManagerSessionDeleted(const aSessionID: TGUID; IsExpired: Boolean); + procedure ConnectionManagerConnectionAcquired(Sender: TDAConnectionManager; + const Connection: IDAConnection); private FEscribirLog : TCriticalSection; FConnectionName : string; @@ -74,7 +75,7 @@ implementation uses DateUtils, JclFileUtils, ActiveX, Forms, Registry, Windows, Dialogs, - uSesionesUtils, uServerAppUtils; + ExtCtrls, uSesionesUtils, uServerAppUtils; function DarRutaInformes : String; begin @@ -145,10 +146,20 @@ begin Result := Result + chr(ord(Source[i]) - Random(10) - 1); end; +procedure TdmServer.ConnectionManagerConnectionAcquired( + Sender: TDAConnectionManager; const Connection: IDAConnection); +begin + { Si se adquiere una conexión del spool de conexiones puede que + sea una conexión ya abierta. Aquí nos aseguramos de que esté + cerrada y lista para usar. } + if Connection.InTransaction then + Connection.RollbackTransaction; +end; + function TdmServer.DarNuevaConexion: IDAConnection; begin with ConnectionManager do - Result := NewConnection(GetDefaultConnectionName, True); + Result := NewConnection(GetDefaultConnectionName, False); end; procedure TdmServer.IniciarLog; @@ -176,6 +187,12 @@ begin + ';UserID=' + FDBUser + ';Password=' + Decrypt(FDBPass) + ';Dialect=3;Charset=ISO8859_1;'; + +{ Result := 'FIB?Server=' + FDBServer + '/' + FDBPort + + ';Database=' + FDBPath + + ';UserID=' + FDBUser + + ';Password=' + Decrypt(FDBPass) + + ';Dialect=3;Charset=ISO8859_1;';} end; procedure TdmServer.LeerConfiguracion; @@ -234,6 +251,7 @@ end; procedure TdmServer.DataModuleDestroy(Sender: TObject); begin SessionManager.ClearSessions(False); + ConnectionManager.ClearPool; HTTPServer.Active := False; DetenerLog; end; @@ -267,10 +285,7 @@ begin ConnectionName := ConnectionManager.GetDefaultConnectionName; ConnectionManager.Connections.GetDefaultConnection.ConnectionString := GetConnectionString; - with ConnectionManager.Connections.ConnectionByName('MySQL') do - ConnectionString := 'ADO?AuxDriver=MSDASQL.1;Server=' + FOSCServer + ';'; - - ShowBalloonHint('Conectado a ' + ConnectionName, biInfo); + ShowBalloonHint('Conectado a ' + ConnectionName, bfInfo); CoInitialize(nil); HTTPServer.Active := TRUE; diff --git a/Source/Servidor/uServerMainForm.dfm b/Source/Servidor/uServerMainForm.dfm index 250e6315..f2c91aa5 100644 --- a/Source/Servidor/uServerMainForm.dfm +++ b/Source/Servidor/uServerMainForm.dfm @@ -2,7 +2,7 @@ object fServerForm: TfServerForm Left = 806 Top = 611 BorderStyle = bsDialog - Caption = 'Administrador de puntos de venta - Server' + Caption = 'FactuGES Server' ClientHeight = 255 ClientWidth = 371 Color = clBtnFace @@ -13,7 +13,6 @@ object fServerForm: TfServerForm Font.Style = [] OldCreateOrder = False Position = poScreenCenter - OnClose = FormClose OnCreate = FormCreate PixelsPerInch = 96 TextHeight = 13 @@ -1006,7 +1005,6 @@ object fServerForm: TfServerForm Height = 25 Caption = 'Button1' TabOrder = 2 - OnClick = Button1Click end object PopupMenu1: TPopupMenu Left = 104 @@ -1058,20 +1056,16 @@ object fServerForm: TfServerForm Left = 40 Top = 16 end - object JvTrayIcon: TJvTrayIcon - IconIndex = 0 - DropDownMenu = PopupMenu1 - PopupMenu = PopupMenu1 - Delay = 300 - Snap = True - Visibility = [tvVisibleTaskBar, tvAutoHide] - Left = 8 - Top = 16 - end object JvAppInstances1: TJvAppInstances AutoActivate = False OnCmdLineReceived = JvAppInstances1CmdLineReceived Left = 136 Top = 16 end + object TrayIcon1: TTrayIcon + BalloonFlags = bfInfo + PopupMenu = PopupMenu1 + Left = 240 + Top = 208 + end end diff --git a/Source/Servidor/uServerMainForm.pas b/Source/Servidor/uServerMainForm.pas index eb28cdd6..5544a7b1 100644 --- a/Source/Servidor/uServerMainForm.pas +++ b/Source/Servidor/uServerMainForm.pas @@ -6,8 +6,8 @@ uses Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, uROClient, uROPoweredByRemObjectsButton, uROClientIntf, uROServer, uROBinMessage, uROIndyHTTPServer, uROIndyTCPServer, frxClass, frxPreview, - JvComponent, JvTrayIcon, ActnList, Menus, XPMan, JvExControls, - JvGradient, JvGIF, ExtCtrls, JvComponentBase, JvAppInst; + JvAppInst, JvComponentBase, ExtCtrls, JvExControls, JvGradient, XPMan, + ActnList, Menus, JvGIF; type TfServerForm = class(TForm) @@ -23,7 +23,6 @@ type Refrescarconexin1: TMenuItem; N2: TMenuItem; XPManifest1: TXPManifest; - JvTrayIcon: TJvTrayIcon; Panel1: TPanel; Image1: TImage; JvGradient1: TJvGradient; @@ -32,14 +31,13 @@ type Acercade1: TMenuItem; N1: TMenuItem; JvAppInstances1: TJvAppInstances; + TrayIcon1: TTrayIcon; procedure actCerrarExecute(Sender: TObject); procedure actRestartExecute(Sender: TObject); procedure actOpcionesExecute(Sender: TObject); procedure FormCreate(Sender: TObject); - procedure FormClose(Sender: TObject; var Action: TCloseAction); procedure actAcercaExecute(Sender: TObject); procedure actConexionesExecute(Sender: TObject); - procedure Button1Click(Sender: TObject); procedure JvAppInstances1CmdLineReceived(Sender: TObject; CmdLine: TStrings); private @@ -67,14 +65,12 @@ procedure TfServerForm.actConexionesExecute(Sender: TObject); var i: Integer; begin - JvTrayIcon.ShowApplication; with Memo1.Lines do begin Clear; for i := 0 to dmServer.ConnectionManager.Connections.Count - 1 do Memo1.Lines.Add(dmServer.ConnectionManager.Connections[i].Name + ' -> ' + dmServer.ConnectionManager.Connections[i].ConnectionString); end; -// JvTrayIcon.HideApplication; end; procedure TfServerForm.actRestartExecute(Sender: TObject); @@ -82,11 +78,6 @@ begin dmServer.RefrescarConexion; end; -procedure TfServerForm.Button1Click(Sender: TObject); -begin - JvTrayIcon.HideApplication; -end; - procedure TfServerForm.actOpcionesExecute(Sender: TObject); var AForm : TForm; @@ -102,8 +93,7 @@ end; procedure TfServerForm.FormCreate(Sender: TObject); begin - JvTrayIcon.HideApplication; - JvTrayIcon.Active := True; + TrayIcon1.Visible := True; end; procedure TfServerForm.JvAppInstances1CmdLineReceived(Sender: TObject; @@ -112,11 +102,6 @@ begin dmServer.RefrescarConexion; end; -procedure TfServerForm.FormClose(Sender: TObject; var Action: TCloseAction); -begin - JvTrayIcon.Active := False; -end; - procedure TfServerForm.actAcercaExecute(Sender: TObject); begin with TfAcercaDe.Create(NIL) do diff --git a/Source/Servidor/uUsersManager.pas b/Source/Servidor/uUsersManager.pas index 2db803ea..b039cf47 100644 --- a/Source/Servidor/uUsersManager.pas +++ b/Source/Servidor/uUsersManager.pas @@ -62,6 +62,7 @@ begin for I := 0 to FLoginInfo.Empresas.Count - 1 do AList.Add(IntToStr(FLoginInfo.Empresas.Items[I])); + Result := AList.DelimitedText; finally AList.Free; @@ -73,6 +74,7 @@ var I: Integer; begin Result := False; + for I := 0 to FLoginInfo.Perfiles.Count - 1 do if FLoginInfo.Perfiles.Items[I] = PERFIL_ADMINISTRADORES then begin diff --git a/Tools/FBHook/FAQ.txt b/Tools/FBHook/FAQ.txt new file mode 100644 index 00000000..1bd2764a --- /dev/null +++ b/Tools/FBHook/FAQ.txt @@ -0,0 +1,63 @@ +FBHook Beta 1 +by Simon Carter (simon.carter@tectsoft.com) + + +FAQ +=== + +Q. What is FBHook? + +A. FBHook is a firebird client hook, which can display every sql statement sent to a server, on an application by application basis or system wide. + +Q. How does it work? + +A. FBHook is a DLL that sits between the application and fbclient.dll or gds32.dll, the application(s) loads the FBHook dll which then creates a chain to the original fbclient.dll. + +Q. Do I have to recompile my existing firebird client application to use FBHook? + +A. No. + +Q. Can i use this at a client site to see what statements are being sent? + +A. Yes, FBHook uses TCP to transport the data to the server for inline interpretation as SQL statements are executed. + +Q. Is FBHook open source/freeware? + +A. Yes, it is distributed under the IDPL license. + +Q. How can I install FBHook for an individual application? + +A. Rename the existing applications fbclient.dll to fbclient.original.dll, and then copy FBHooks fbclient.dll to the application folder. If your app requires gds32.dll instead of fbclient, then rename fbclient.dll to gds32.dll. + +Q. How can I specify a different host ip address so that I can debug a client on a remote pc? + +A. in the same folder as fbclient.dll, create an ini file called fbhook.ini, add the following details: + + +[Default] +Host=10.0.0.9 + +Q. How can I specify a different port? + +A. in the same folder as fbclient.dll, create an ini file called fbhook.ini, add the following details: + +[Default] +Port=23456 + +Q. I am on a flaky network, and the client keeps getting disconnected, can I specify not to use TCP? + +A. Yes, in the same folder as fbclient.dll, create an ini file called fbhook.ini, add the following details: + +[Default] +UseTCP=0 + +n.b. a value of 1 (one) enables this feature. + +Q. Where can i get support for FBHook? + +A. Please check support options at (http://sourceforge.net/projects/fbutils). + +Q. I get an error "The specified module could not be found" what does this mean? + +A. You need to copy the original fbclient.dll and rename it to fbclient.original.dll + diff --git a/Tools/FBHook/FBClient.dll b/Tools/FBHook/FBClient.dll new file mode 100644 index 00000000..79d16923 Binary files /dev/null and b/Tools/FBHook/FBClient.dll differ diff --git a/Tools/FBHook/FBHook.exe b/Tools/FBHook/FBHook.exe new file mode 100644 index 00000000..0f919b5f Binary files /dev/null and b/Tools/FBHook/FBHook.exe differ diff --git a/Tools/ISQL/fbclient.dll b/Tools/ISQL/fbclient.dll new file mode 100644 index 00000000..97e68806 Binary files /dev/null and b/Tools/ISQL/fbclient.dll differ diff --git a/Tools/ISQL/isql.exe b/Tools/ISQL/isql.exe new file mode 100644 index 00000000..a9946c0d Binary files /dev/null and b/Tools/ISQL/isql.exe differ diff --git a/Tools/mysql-connector-odbc-3.51.15-win32.msi b/Tools/mysql-connector-odbc-3.51.15-win32.msi deleted file mode 100644 index b7beed95..00000000 Binary files a/Tools/mysql-connector-odbc-3.51.15-win32.msi and /dev/null differ