Commit 04e10eae1b18323121fbe6cedf5e6cf77cc37f36
1 parent
874b9b0a
Exists in
master
Iniciado o Mapa2.
git-svn-id: http://svn.softwarepublico.gov.br/svn/cacic/cacic/trunk/agente-windows@1534 fecfc0c7-e812-0410-ae72-849f08638ee7
Showing
5 changed files
with
987 additions
and
0 deletions
Show diff stats
| @@ -0,0 +1,72 @@ | @@ -0,0 +1,72 @@ | ||
| 1 | +<?xml version="1.0" encoding="utf-8"?> | ||
| 2 | +<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> | ||
| 3 | + <PropertyGroup> | ||
| 4 | + <ProjectGuid>{d3ca3b54-0625-490e-998f-ff10ae284979}</ProjectGuid> | ||
| 5 | + <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration> | ||
| 6 | + <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform> | ||
| 7 | + <DCC_DCCCompiler>DCC32</DCC_DCCCompiler> | ||
| 8 | + <DCC_DependencyCheckOutputName>Mapa2.exe</DCC_DependencyCheckOutputName> | ||
| 9 | + <MainSource>Mapa2.dpr</MainSource> | ||
| 10 | + </PropertyGroup> | ||
| 11 | + <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' "> | ||
| 12 | + <Version>7.0</Version> | ||
| 13 | + <DCC_DebugInformation>False</DCC_DebugInformation> | ||
| 14 | + <DCC_LocalDebugSymbols>False</DCC_LocalDebugSymbols> | ||
| 15 | + <DCC_SymbolReferenceInfo>0</DCC_SymbolReferenceInfo> | ||
| 16 | + <DCC_Define>RELEASE</DCC_Define> | ||
| 17 | + </PropertyGroup> | ||
| 18 | + <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' "> | ||
| 19 | + <Version>7.0</Version> | ||
| 20 | + <DCC_Define>DEBUG</DCC_Define> | ||
| 21 | + </PropertyGroup> | ||
| 22 | + <ProjectExtensions> | ||
| 23 | + <Borland.Personality>Delphi.Personality</Borland.Personality> | ||
| 24 | + <Borland.ProjectType /> | ||
| 25 | + <BorlandProject> | ||
| 26 | +<BorlandProject> <Delphi.Personality> <Parameters> | ||
| 27 | + <Parameters Name="UseLauncher">False</Parameters> | ||
| 28 | + <Parameters Name="LoadAllSymbols">True</Parameters> | ||
| 29 | + <Parameters Name="LoadUnspecifiedSymbols">False</Parameters> | ||
| 30 | + </Parameters> | ||
| 31 | + <VersionInfo> | ||
| 32 | + <VersionInfo Name="IncludeVerInfo">False</VersionInfo> | ||
| 33 | + <VersionInfo Name="AutoIncBuild">False</VersionInfo> | ||
| 34 | + <VersionInfo Name="MajorVer">1</VersionInfo> | ||
| 35 | + <VersionInfo Name="MinorVer">0</VersionInfo> | ||
| 36 | + <VersionInfo Name="Release">0</VersionInfo> | ||
| 37 | + <VersionInfo Name="Build">0</VersionInfo> | ||
| 38 | + <VersionInfo Name="Debug">False</VersionInfo> | ||
| 39 | + <VersionInfo Name="PreRelease">False</VersionInfo> | ||
| 40 | + <VersionInfo Name="Special">False</VersionInfo> | ||
| 41 | + <VersionInfo Name="Private">False</VersionInfo> | ||
| 42 | + <VersionInfo Name="DLL">False</VersionInfo> | ||
| 43 | + <VersionInfo Name="Locale">1046</VersionInfo> | ||
| 44 | + <VersionInfo Name="CodePage">1252</VersionInfo> | ||
| 45 | + </VersionInfo> | ||
| 46 | + <VersionInfoKeys> | ||
| 47 | + <VersionInfoKeys Name="CompanyName"></VersionInfoKeys> | ||
| 48 | + <VersionInfoKeys Name="FileDescription"></VersionInfoKeys> | ||
| 49 | + <VersionInfoKeys Name="FileVersion">1.0.0.0</VersionInfoKeys> | ||
| 50 | + <VersionInfoKeys Name="InternalName"></VersionInfoKeys> | ||
| 51 | + <VersionInfoKeys Name="LegalCopyright"></VersionInfoKeys> | ||
| 52 | + <VersionInfoKeys Name="LegalTrademarks"></VersionInfoKeys> | ||
| 53 | + <VersionInfoKeys Name="OriginalFilename"></VersionInfoKeys> | ||
| 54 | + <VersionInfoKeys Name="ProductName"></VersionInfoKeys> | ||
| 55 | + <VersionInfoKeys Name="ProductVersion">1.0.0.0</VersionInfoKeys> | ||
| 56 | + <VersionInfoKeys Name="Comments"></VersionInfoKeys> | ||
| 57 | + </VersionInfoKeys> | ||
| 58 | + <Source> | ||
| 59 | + <Source Name="MainSource">Mapa2.dpr</Source> | ||
| 60 | + </Source> | ||
| 61 | + </Delphi.Personality> </BorlandProject></BorlandProject> | ||
| 62 | + </ProjectExtensions> | ||
| 63 | + <Import Project="$(MSBuildBinPath)\Borland.Delphi.Targets" /> | ||
| 64 | + <ItemGroup> | ||
| 65 | + <DelphiCompile Include="Mapa2.dpr"> | ||
| 66 | + <MainSource>MainSource</MainSource> | ||
| 67 | + </DelphiCompile> | ||
| 68 | + <DCCReference Include="Unit1.pas"> | ||
| 69 | + <Form>Form1</Form> | ||
| 70 | + </DCCReference> | ||
| 71 | + </ItemGroup> | ||
| 72 | +</Project> | ||
| 0 | \ No newline at end of file | 73 | \ No newline at end of file |
No preview for this file type
| @@ -0,0 +1,16 @@ | @@ -0,0 +1,16 @@ | ||
| 1 | +object Form1: TForm1 | ||
| 2 | + Left = 0 | ||
| 3 | + Top = 0 | ||
| 4 | + Caption = 'Mapa2' | ||
| 5 | + ClientHeight = 176 | ||
| 6 | + ClientWidth = 455 | ||
| 7 | + Color = clBtnFace | ||
| 8 | + Font.Charset = DEFAULT_CHARSET | ||
| 9 | + Font.Color = clWindowText | ||
| 10 | + Font.Height = -11 | ||
| 11 | + Font.Name = 'Tahoma' | ||
| 12 | + Font.Style = [] | ||
| 13 | + OldCreateOrder = False | ||
| 14 | + PixelsPerInch = 96 | ||
| 15 | + TextHeight = 13 | ||
| 16 | +end |
| @@ -0,0 +1,885 @@ | @@ -0,0 +1,885 @@ | ||
| 1 | +(** | ||
| 2 | +--------------------------------------------------------------------------------------------------------------------------------------------------------------- | ||
| 3 | +Copyright 2000, 2001, 2002, 2003, 2004, 2005 Dataprev - Empresa de Tecnologia e Informações da Previdência Social, Brasil | ||
| 4 | + | ||
| 5 | +Este arquivo é parte do programa CACIC - Configurador Automático e Coletor de Informações Computacionais | ||
| 6 | + | ||
| 7 | +O CACIC é um software livre; você pode redistribui-lo e/ou modifica-lo dentro dos termos da Licença Pública Geral GNU como | ||
| 8 | +publicada pela Fundação do Software Livre (FSF); na versão 2 da Licença, ou (na sua opinião) qualquer versão. | ||
| 9 | + | ||
| 10 | +Este programa é distribuido na esperança que possa ser util, mas SEM NENHUMA GARANTIA; sem uma garantia implicita de ADEQUAÇÂO a qualquer | ||
| 11 | +MERCADO ou APLICAÇÃO EM PARTICULAR. Veja a Licença Pública Geral GNU para maiores detalhes. | ||
| 12 | + | ||
| 13 | +Você deve ter recebido uma cópia da Licença Pública Geral GNU, sob o título "LICENCA.txt", junto com este programa, se não, escreva para a Fundação do Software | ||
| 14 | +Livre(FSF) Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA | ||
| 15 | +--------------------------------------------------------------------------------------------------------------------------------------------------------------- | ||
| 16 | +*) | ||
| 17 | + | ||
| 18 | +unit Unit1; | ||
| 19 | + | ||
| 20 | +interface | ||
| 21 | + | ||
| 22 | +uses | ||
| 23 | + Windows, | ||
| 24 | + SysUtils, // Deve ser colocado após o Windows acima, nunca antes | ||
| 25 | + StrUtils, | ||
| 26 | + StdCtrls, | ||
| 27 | + Controls, | ||
| 28 | + Classes, | ||
| 29 | + Forms, | ||
| 30 | + ExtCtrls, | ||
| 31 | + Graphics, | ||
| 32 | + Dialogs, | ||
| 33 | + CACIC_Library, | ||
| 34 | + CACIC_Comm, | ||
| 35 | + ComCtrls, | ||
| 36 | + ShellAPI, | ||
| 37 | + CACIC_WMI, | ||
| 38 | + Math; | ||
| 39 | + | ||
| 40 | +function IsUserAnAdmin() : boolean; external shell32; | ||
| 41 | + | ||
| 42 | +var strCollectsPatrimonioLast, | ||
| 43 | + strConfigsPatrimonioCombos, | ||
| 44 | + strFieldsAndValuesToRequest, | ||
| 45 | + strIdUON1, | ||
| 46 | + strFrmAtual, | ||
| 47 | + strShowOrHide : string; | ||
| 48 | + textFileAguarde : TextFile; | ||
| 49 | + boolFinalizando : boolean; | ||
| 50 | + objCacic : TCACIC; | ||
| 51 | +type | ||
| 52 | + TfrmMapaCacic = class(TForm) | ||
| 53 | + gbLeiaComAtencao: TGroupBox; | ||
| 54 | + lbLeiaComAtencao: TLabel; | ||
| 55 | + gbInformacoesSobreComputador: TGroupBox; | ||
| 56 | + lbEtiqueta1: TLabel; | ||
| 57 | + lbEtiqueta2: TLabel; | ||
| 58 | + lbEtiqueta3: TLabel; | ||
| 59 | + cbIdUnidOrganizacionalNivel1: TComboBox; | ||
| 60 | + cbIdUnidOrganizacionalNivel2: TComboBox; | ||
| 61 | + edTeLocalizacaoComplementar: TEdit; | ||
| 62 | + btGravarInformacoes: TButton; | ||
| 63 | + lbEtiqueta4: TLabel; | ||
| 64 | + lbEtiqueta5: TLabel; | ||
| 65 | + lbEtiqueta6: TLabel; | ||
| 66 | + lbEtiqueta7: TLabel; | ||
| 67 | + lbEtiqueta8: TLabel; | ||
| 68 | + lbEtiqueta9: TLabel; | ||
| 69 | + edTeInfoPatrimonio1: TEdit; | ||
| 70 | + edTeInfoPatrimonio2: TEdit; | ||
| 71 | + edTeInfoPatrimonio3: TEdit; | ||
| 72 | + edTeInfoPatrimonio4: TEdit; | ||
| 73 | + edTeInfoPatrimonio5: TEdit; | ||
| 74 | + edTeInfoPatrimonio6: TEdit; | ||
| 75 | + pnMessageBox: TPanel; | ||
| 76 | + lbMensagens: TLabel; | ||
| 77 | + lbEtiqueta1a: TLabel; | ||
| 78 | + cbIdUnidOrganizacionalNivel1a: TComboBox; | ||
| 79 | + pnDivisoria01: TPanel; | ||
| 80 | + lbWebManagerAddress: TLabel; | ||
| 81 | + edWebManagerAddress: TLabel; | ||
| 82 | + pnVersao: TPanel; | ||
| 83 | + btCombosUpdate: TButton; | ||
| 84 | + timerMessageShowTime: TTimer; | ||
| 85 | + timerMessageBoxShowOrHide: TTimer; | ||
| 86 | + | ||
| 87 | + procedure AtualizaPatrimonio(Sender: TObject); | ||
| 88 | + procedure mapa; | ||
| 89 | + procedure FormClose(Sender: TObject; var Action: TCloseAction); | ||
| 90 | + procedure cbIdUnidOrganizacionalNivel1Change(Sender: TObject); | ||
| 91 | + procedure cbIdUnidOrganizacionalNivel1aChange(Sender: TObject); | ||
| 92 | + procedure FormCreate(Sender: TObject); | ||
| 93 | + procedure cbIdUnidOrganizacionalNivel1Click(Sender: TObject); | ||
| 94 | + procedure FormActivate(Sender: TObject); | ||
| 95 | + procedure cbIdUnidOrganizacionalNivel1DrawItem(Control: TWinControl; | ||
| 96 | + Index: Integer; Rect: TRect; State: TOwnerDrawState); | ||
| 97 | + procedure btCombosUpdateClick(Sender: TObject); | ||
| 98 | + procedure timerMessageShowTimeTimer(Sender: TObject); | ||
| 99 | + procedure cbIdUnidOrganizacionalNivel1aDrawItem(Control: TWinControl; | ||
| 100 | + Index: Integer; Rect: TRect; State: TOwnerDrawState); | ||
| 101 | + procedure cbIdUnidOrganizacionalNivel2DrawItem(Control: TWinControl; | ||
| 102 | + Index: Integer; Rect: TRect; State: TOwnerDrawState); | ||
| 103 | + procedure timerMessageBoxShowOrHideTimer(Sender: TObject); | ||
| 104 | + private | ||
| 105 | + strIdUnidOrganizacionalNivel1, | ||
| 106 | + strIdUnidOrganizacionalNivel1a, | ||
| 107 | + strIdUnidOrganizacionalNivel2, | ||
| 108 | + strIdLocal, | ||
| 109 | + strTeLocalizacaoComplementar, | ||
| 110 | + strTeInfoPatrimonio1, | ||
| 111 | + strTeInfoPatrimonio2, | ||
| 112 | + strTeInfoPatrimonio3, | ||
| 113 | + strTeInfoPatrimonio4, | ||
| 114 | + strTeInfoPatrimonio5, | ||
| 115 | + strTeInfoPatrimonio6 : String; | ||
| 116 | + | ||
| 117 | + function getConfigs : String; | ||
| 118 | + function RetornaValorVetorUON1(pStrIdUON1 : string) : String; | ||
| 119 | + function RetornaValorVetorUON1a(pStrIdUON1a : string) : String; | ||
| 120 | + function RetornaValorVetorUON2(pStrIdUON2,pStrIdLocal : string) : String; | ||
| 121 | + | ||
| 122 | + procedure CriaFormSenha(Sender: TObject); | ||
| 123 | + procedure MontaCombos; | ||
| 124 | + procedure MontaInterface; | ||
| 125 | + procedure RecuperaValoresAnteriores; | ||
| 126 | + procedure Sair; | ||
| 127 | + public | ||
| 128 | + boolAcessoOK : boolean; | ||
| 129 | + strId_usuario, | ||
| 130 | + strChkSisInfFileName, | ||
| 131 | + strGerColsInfFileName : String; | ||
| 132 | + procedure Finalizar(p_pausa:boolean); | ||
| 133 | + procedure Mensagem(p_strMsg : String; p_boolAlerta : boolean = false; p_intPausaSegundos : integer = 0); | ||
| 134 | + end; | ||
| 135 | + | ||
| 136 | +var frmMapaCacic: TfrmMapaCacic; | ||
| 137 | + | ||
| 138 | +implementation | ||
| 139 | + | ||
| 140 | +{$R *.dfm} | ||
| 141 | + | ||
| 142 | +// Estruturas de dados para armazenar os itens das Unidades Organizacionais de Níveis 1, 1a e 2 | ||
| 143 | +type | ||
| 144 | + TRegistroUON1 = record // Nível 1 => Entidade | ||
| 145 | + idUON1 : String; | ||
| 146 | + nmUON1 : String; | ||
| 147 | + end; | ||
| 148 | + TVetorUON1 = array of TRegistroUON1; | ||
| 149 | + | ||
| 150 | + TRegistroUON1a = record // Nível 1a => Linha de Negócio | ||
| 151 | + idUON1 : String; | ||
| 152 | + idUON1a : String; | ||
| 153 | + nmUON1a : String; | ||
| 154 | + end; | ||
| 155 | + TVetorUON1a = array of TRegistroUON1a; | ||
| 156 | + | ||
| 157 | + TRegistroUON2 = record // Nível 2 => Órgão | ||
| 158 | + idUON1a : String; | ||
| 159 | + idUON2 : String; | ||
| 160 | + nmUON2 : String; | ||
| 161 | + idLocal : String; | ||
| 162 | + end; | ||
| 163 | + TVetorUON2 = array of TRegistroUON2; | ||
| 164 | + | ||
| 165 | +var VetorUON1 : TVetorUON1; | ||
| 166 | + VetorUON1a : TVetorUON1a; | ||
| 167 | + VetorUON2 : TVetorUON2; | ||
| 168 | + | ||
| 169 | + // Esse array é usado apenas para saber a uon1a, após a filtragem pelo uon1 | ||
| 170 | + VetorUON1aFiltrado : array of String; | ||
| 171 | + | ||
| 172 | + // Esse array é usado apenas para saber a uon2, após a filtragem pelo uon1a | ||
| 173 | + VetorUON2Filtrado : array of String; | ||
| 174 | + | ||
| 175 | +procedure TfrmMapaCacic.Mensagem(p_strMsg : String; p_boolAlerta : boolean = false; p_intPausaSegundos : integer = 0); | ||
| 176 | +Begin | ||
| 177 | + strShowOrHide := 'Show'; | ||
| 178 | + | ||
| 179 | + objCacic.writeDebugLog('Mensagem: ' + p_strMsg); | ||
| 180 | + | ||
| 181 | + if p_boolAlerta then | ||
| 182 | + lbMensagens.Font.Color := clRed | ||
| 183 | + else | ||
| 184 | + lbMensagens.Font.Color := clBlack; | ||
| 185 | + | ||
| 186 | + lbMensagens.Caption := p_strMsg; | ||
| 187 | + | ||
| 188 | + objCacic.writeDailyLog(lbMensagens.Caption); | ||
| 189 | + Application.ProcessMessages; | ||
| 190 | + | ||
| 191 | + if (p_intPausaSegundos > 0) then | ||
| 192 | + timerMessageShowTime.Interval := p_intPausaSegundos * 1000; | ||
| 193 | + | ||
| 194 | + timerMessageBoxShowOrHide.Enabled := true; | ||
| 195 | + | ||
| 196 | + Application.ProcessMessages; | ||
| 197 | +End; | ||
| 198 | + | ||
| 199 | +procedure showMessageBox; | ||
| 200 | +Begin | ||
| 201 | + | ||
| 202 | +End; | ||
| 203 | + | ||
| 204 | +procedure TfrmMapaCacic.Sair; | ||
| 205 | +Begin | ||
| 206 | + Application.Terminate; | ||
| 207 | +End; | ||
| 208 | + | ||
| 209 | +procedure TfrmMapaCacic.Finalizar(p_pausa:boolean); | ||
| 210 | +Begin | ||
| 211 | + gbLeiaComAtencao.Visible := false; | ||
| 212 | + gbInformacoesSobreComputador.Visible := false; | ||
| 213 | + btGravarInformacoes.Visible := false; | ||
| 214 | + | ||
| 215 | + Mensagem('Finalizando o MapaCacic...'); | ||
| 216 | + | ||
| 217 | + Application.ProcessMessages; | ||
| 218 | + | ||
| 219 | + Sleep(1000); | ||
| 220 | + | ||
| 221 | + Sair; | ||
| 222 | +End; | ||
| 223 | +// | ||
| 224 | + | ||
| 225 | +Function TfrmMapaCacic.RetornaValorVetorUON1(pStrIdUON1 : string) : String; | ||
| 226 | +var I : Integer; | ||
| 227 | +begin | ||
| 228 | + For I := 0 to (Length(VetorUON1)-1) Do | ||
| 229 | + If (VetorUON1[I].idUON1 = pStrIdUON1) Then Result := VetorUON1[I].nmUON1; | ||
| 230 | +end; | ||
| 231 | + | ||
| 232 | +Function TfrmMapaCacic.RetornaValorVetorUON1a(pStrIdUON1a : string) : String; | ||
| 233 | +var I : Integer; | ||
| 234 | +begin | ||
| 235 | + For I := 0 to (Length(VetorUON1a)-1) Do | ||
| 236 | + If (VetorUON1a[I].idUON1a = pStrIdUON1a) Then Result := VetorUON1a[I].nmUON1a; | ||
| 237 | +end; | ||
| 238 | + | ||
| 239 | +Function TfrmMapaCacic.RetornaValorVetorUON2(pStrIdUON2, pStrIdLocal: string) : String; | ||
| 240 | +var I : Integer; | ||
| 241 | +begin | ||
| 242 | + For I := 0 to (Length(VetorUON2)-1) Do | ||
| 243 | + If (VetorUON2[I].idUON2 = pStrIdUON2) and | ||
| 244 | + (VetorUON2[I].idLocal = pStrIdLocal) Then Result := VetorUON2[I].nmUON2; | ||
| 245 | +end; | ||
| 246 | + | ||
| 247 | +procedure TfrmMapaCacic.RecuperaValoresAnteriores; | ||
| 248 | +var strCollectsPatrimonioLast, | ||
| 249 | + strConfigsPatrimonioInterface : String; | ||
| 250 | +begin | ||
| 251 | + btCombosUpdate.Enabled := false; | ||
| 252 | + | ||
| 253 | + Mensagem('Recuperando Valores Anteriores...',false,1); | ||
| 254 | + | ||
| 255 | + strCollectsPatrimonioLast := objCacic.deCrypt( objCacic.GetValueFromFile('Collects','Patrimonio_Last',strGerColsInfFileName)); | ||
| 256 | + | ||
| 257 | + if (strCollectsPatrimonioLast <> '') then | ||
| 258 | + Begin | ||
| 259 | + strIdUnidOrganizacionalNivel1 := objCacic.GetValueFromFile('Patrimonio','IdUnidOrganizacionalNivel1',strGerColsInfFileName); | ||
| 260 | + if (strIdUnidOrganizacionalNivel1='') then | ||
| 261 | + strIdUnidOrganizacionalNivel1 := objCacic.deCrypt(objCacic.getValueFromTags('ID_UON1', strCollectsPatrimonioLast)); | ||
| 262 | + | ||
| 263 | + strIdUnidOrganizacionalNivel1a := objCacic.GetValueFromFile('Patrimonio','IdUnidOrganizacionalNivel1a',strGerColsInfFileName); | ||
| 264 | + if (strIdUnidOrganizacionalNivel1a='') then | ||
| 265 | + strIdUnidOrganizacionalNivel1a := objCacic.deCrypt(objCacic.getValueFromTags('ID_UON1a', strCollectsPatrimonioLast)); | ||
| 266 | + | ||
| 267 | + strIdUnidOrganizacionalNivel2 := objCacic.GetValueFromFile('Patrimonio','IdUnidOrganizacionalNivel2',strGerColsInfFileName); | ||
| 268 | + if (strIdUnidOrganizacionalNivel2='') then | ||
| 269 | + strIdUnidOrganizacionalNivel2 := objCacic.deCrypt(objCacic.getValueFromTags('ID_UON2', strCollectsPatrimonioLast)); | ||
| 270 | + | ||
| 271 | + strIdLocal := objCacic.getValueFromTags('IdLocal',strCollectsPatrimonioLast); | ||
| 272 | + | ||
| 273 | + Try | ||
| 274 | + cbIdUnidOrganizacionalNivel1.ItemIndex := cbIdUnidOrganizacionalNivel1.Items.IndexOf(RetornaValorVetorUON1(strIdUnidOrganizacionalNivel1)); | ||
| 275 | + cbIdUnidOrganizacionalNivel1Change(Nil); // Para filtrar os valores do combo2 de acordo com o valor selecionado no combo1 | ||
| 276 | + cbIdUnidOrganizacionalNivel1a.ItemIndex := cbIdUnidOrganizacionalNivel1a.Items.IndexOf(RetornaValorVetorUON1(strIdUnidOrganizacionalNivel1)); | ||
| 277 | + Except | ||
| 278 | + on E:Exception do | ||
| 279 | + Begin | ||
| 280 | + objCacic.writeExceptionLog(E.Message,e.ClassName,'Setando "cbIdUnidOrganizacionalNivel1a.ItemIndex" para "' + IntToStr(cbIdUnidOrganizacionalNivel1a.Items.IndexOf(RetornaValorVetorUON1(strIdUnidOrganizacionalNivel1))) + '"'); | ||
| 281 | + objCacic.writeDebugLog('RecuperaValoresAnteriores: Problema ao setar "cbIdUnidOrganizacionalNivel1a.ItemIndex" para "' + IntToStr(cbIdUnidOrganizacionalNivel1a.Items.IndexOf(RetornaValorVetorUON1(strIdUnidOrganizacionalNivel1))) + '"'); | ||
| 282 | + End; | ||
| 283 | + end; | ||
| 284 | + | ||
| 285 | + Try | ||
| 286 | + cbIdUnidOrganizacionalNivel1a.ItemIndex := cbIdUnidOrganizacionalNivel1a.Items.IndexOf(RetornaValorVetorUON1a(strIdUnidOrganizacionalNivel1a)); | ||
| 287 | + cbIdUnidOrganizacionalNivel1aChange(Nil); // Para filtrar os valores do combo3 de acordo com o valor selecionado no combo2 | ||
| 288 | + cbIdUnidOrganizacionalNivel2.ItemIndex := cbIdUnidOrganizacionalNivel2.Items.IndexOf(RetornaValorVetorUON2(strIdUnidOrganizacionalNivel2,strIdLocal)); | ||
| 289 | + Except | ||
| 290 | + on E:Exception do | ||
| 291 | + Begin | ||
| 292 | + objCacic.writeExceptionLog(E.Message,e.ClassName,'Setando "cbIdUnidOrganizacionalNivel2.ItemIndex" para "' + IntToStr(cbIdUnidOrganizacionalNivel2.Items.IndexOf(RetornaValorVetorUON2(strIdUnidOrganizacionalNivel2,strIdLocal))) + '"'); | ||
| 293 | + objCacic.writeDebugLog('RecuperaValoresAnteriores: Problema ao setar "cbIdUnidOrganizacionalNivel2.ItemIndex" para "' + IntToStr(cbIdUnidOrganizacionalNivel2.Items.IndexOf(RetornaValorVetorUON2(strIdUnidOrganizacionalNivel2,strIdLocal))) + '"'); | ||
| 294 | + End; | ||
| 295 | + end; | ||
| 296 | + | ||
| 297 | + strConfigsPatrimonioInterface := objCacic.deCrypt( objCacic.GetValueFromFile('Configs','Patrimonio_Interface',strGerColsInfFileName)); | ||
| 298 | + | ||
| 299 | + lbEtiqueta1.Caption := objCacic.getValueFromTags('te_etiqueta1', strConfigsPatrimonioInterface); | ||
| 300 | + lbEtiqueta1a.Caption := objCacic.deCrypt(objCacic.getValueFromTags('te_etiqueta1a', strConfigsPatrimonioInterface)); | ||
| 301 | + | ||
| 302 | + strTeLocalizacaoComplementar := objCacic.getValueFromTags('TeLocalizacaoComplementar',strCollectsPatrimonioLast); | ||
| 303 | + | ||
| 304 | + // Tentarei buscar informação gravada no Registry | ||
| 305 | + strTeInfoPatrimonio1 := objCacic.getValueRegistryKey('HKEY_LOCAL_MACHINE\SOFTWARE\Dataprev\Patrimonio\te_info_patrimonio1'); | ||
| 306 | + strTeInfoPatrimonio2 := objCacic.getValueFromTags('TeInfoPatrimonio2',strCollectsPatrimonioLast); | ||
| 307 | + strTeInfoPatrimonio3 := objCacic.getValueFromTags('TeInfoPatrimonio3',strCollectsPatrimonioLast); | ||
| 308 | + strTeInfoPatrimonio4 := objCacic.getValueRegistryKey('HKEY_LOCAL_MACHINE\SOFTWARE\Dataprev\Patrimonio\te_info_patrimonio4'); | ||
| 309 | + strTeInfoPatrimonio5 := objCacic.getValueFromTags('TeInfoPatrimonio5',strCollectsPatrimonioLast); | ||
| 310 | + strTeInfoPatrimonio6 := objCacic.getValueFromTags('TeInfoPatrimonio6',strCollectsPatrimonioLast); | ||
| 311 | + | ||
| 312 | + if (strTeInfoPatrimonio1='') then strTeInfoPatrimonio1 := objCacic.getValueFromTags('TE_INFO1', strCollectsPatrimonioLast); | ||
| 313 | + if (strTeInfoPatrimonio2='') then strTeInfoPatrimonio2 := objCacic.getValueFromTags('TE_INFO2', strCollectsPatrimonioLast); | ||
| 314 | + if (strTeInfoPatrimonio3='') then strTeInfoPatrimonio3 := objCacic.getValueFromTags('TE_INFO3', strCollectsPatrimonioLast); | ||
| 315 | + if (strTeInfoPatrimonio4='') then strTeInfoPatrimonio4 := objCacic.getValueFromTags('TE_INFO4', strCollectsPatrimonioLast); | ||
| 316 | + if (strTeInfoPatrimonio5='') then strTeInfoPatrimonio5 := objCacic.getValueFromTags('TE_INFO5', strCollectsPatrimonioLast); | ||
| 317 | + if (strTeInfoPatrimonio6='') then strTeInfoPatrimonio6 := objCacic.getValueFromTags('TE_INFO6', strCollectsPatrimonioLast); | ||
| 318 | + End; | ||
| 319 | + btCombosUpdate.Enabled := true; | ||
| 320 | + Application.ProcessMessages; | ||
| 321 | +end; | ||
| 322 | + | ||
| 323 | +procedure TfrmMapaCacic.MontaCombos; | ||
| 324 | +var intTagCount, | ||
| 325 | + intLoopUOS : integer; | ||
| 326 | + strTagName, | ||
| 327 | + strTagValue : String; | ||
| 328 | + tstrTagsNames : TStrings; | ||
| 329 | +begin | ||
| 330 | + btCombosUpdate.Enabled := false; | ||
| 331 | + cbIdUnidOrganizacionalNivel1.Enabled := false; | ||
| 332 | + cbIdUnidOrganizacionalNivel1a.Enabled := false; | ||
| 333 | + cbIdUnidOrganizacionalNivel2.Enabled := false; | ||
| 334 | + | ||
| 335 | + Mensagem('Montando Listas para Seleção de Unidades Organizacionais...',false,1); | ||
| 336 | + | ||
| 337 | + strConfigsPatrimonioCombos := objCacic.deCrypt(objCacic.GetValueFromFile('Configs' ,'Patrimonio_Combos',strGerColsInfFileName)); | ||
| 338 | + strCollectsPatrimonioLast := objCacic.deCrypt(objCacic.GetValueFromFile('Collects','Patrimonio_Last' ,strGerColsInfFileName)); | ||
| 339 | + | ||
| 340 | + strIdUON1 := objCacic.getValueFromTags('IdUON1',strCollectsPatrimonioLast); | ||
| 341 | + | ||
| 342 | + SetLength(VetorUON1 ,0); | ||
| 343 | + SetLength(VetorUON1a,0); | ||
| 344 | + SetLength(VetorUON2 ,0); | ||
| 345 | + | ||
| 346 | + cbIdUnidOrganizacionalNivel1.Items.Clear; | ||
| 347 | + cbIdUnidOrganizacionalNivel1a.Items.Clear; | ||
| 348 | + cbIdUnidOrganizacionalNivel2.Items.Clear; | ||
| 349 | + | ||
| 350 | + tstrTagsNames := objCacic.explode('UO1,UO1a,UO2',','); | ||
| 351 | + | ||
| 352 | + for intLoopUOS := 0 to tstrTagsNames.Count -1 do | ||
| 353 | + Begin | ||
| 354 | + intTagCount := 1; | ||
| 355 | + strTagValue := '*'; | ||
| 356 | + while (strTagValue <> '') do | ||
| 357 | + Begin | ||
| 358 | + strTagName := tstrTagsNames[intLoopUOS] + '#' + intToStr(intTagCount); | ||
| 359 | + strTagValue := objCacic.getValueFromTags(strTagName,strConfigsPatrimonioCombos); | ||
| 360 | + if (strTagValue <> '') then | ||
| 361 | + Begin | ||
| 362 | + if (tstrTagsNames[intLoopUOS] = 'UO1') then | ||
| 363 | + Begin | ||
| 364 | + SetLength(VetorUON1 ,length(VetorUON1)+1); | ||
| 365 | + VetorUON1[length(VetorUON1)-1].idUON1 := objCacic.getValueFromTags('UO1_ID',strTagValue); | ||
| 366 | + VetorUON1[length(VetorUON1)-1].nmUON1 := objCacic.getValueFromTags('UO1_NM',strTagValue); | ||
| 367 | + cbIdUnidOrganizacionalNivel1.Items.Add(VetorUON1[length(VetorUON1)-1].nmUON1); | ||
| 368 | + if (strIdUON1 = VetorUON1[length(VetorUON1)-1].idUON1) then | ||
| 369 | + cbIdUnidOrganizacionalNivel1.ItemIndex := cbIdUnidOrganizacionalNivel1.Items.Count-1; | ||
| 370 | + End | ||
| 371 | + else if (tstrTagsNames[intLoopUOS] = 'UO1a') then | ||
| 372 | + Begin | ||
| 373 | + SetLength(VetorUON1a ,length(VetorUON1a)+1); | ||
| 374 | + VetorUON1a[length(VetorUON1a)-1].idUON1 := objCacic.getValueFromTags('UO1a_IdUO1',strTagValue); | ||
| 375 | + VetorUON1a[length(VetorUON1a)-1].idUON1a := objCacic.getValueFromTags('UO1a_ID' ,strTagValue); | ||
| 376 | + VetorUON1a[length(VetorUON1a)-1].nmUON1a := objCacic.getValueFromTags('UO1a_NM' ,strTagValue); | ||
| 377 | + End | ||
| 378 | + else if (tstrTagsNames[intLoopUOS] = 'UO2') then | ||
| 379 | + Begin | ||
| 380 | + SetLength(VetorUON2 ,length(VetorUON2)+1); | ||
| 381 | + VetorUON2[length(VetorUON2)-1].idUON1a := objCacic.getValueFromTags('UO2_IdUO1a' ,strTagValue); | ||
| 382 | + VetorUON2[length(VetorUON2)-1].idUON2 := objCacic.getValueFromTags('UO2_ID' ,strTagValue); | ||
| 383 | + VetorUON2[length(VetorUON2)-1].nmUON2 := objCacic.getValueFromTags('UO2_NM' ,strTagValue); | ||
| 384 | + VetorUON2[length(VetorUON2)-1].idLocal := objCacic.getValueFromTags('UO2_IdLocal',strTagValue); | ||
| 385 | + End; | ||
| 386 | + End; | ||
| 387 | + inc(intTagCount); | ||
| 388 | + End; | ||
| 389 | + End; | ||
| 390 | + | ||
| 391 | + // Ao fim... | ||
| 392 | + if (cbIdUnidOrganizacionalNivel1.ItemIndex = -1) then | ||
| 393 | + cbIdUnidOrganizacionalNivel1.ItemIndex := 0; | ||
| 394 | + | ||
| 395 | + cbIdUnidOrganizacionalNivel1Change(nil); | ||
| 396 | + | ||
| 397 | + btCombosUpdate.Enabled := true; | ||
| 398 | + cbIdUnidOrganizacionalNivel1.Enabled := true; | ||
| 399 | + cbIdUnidOrganizacionalNivel1a.Enabled := true; | ||
| 400 | + cbIdUnidOrganizacionalNivel2.Enabled := true; | ||
| 401 | + | ||
| 402 | + Application.ProcessMessages; | ||
| 403 | +end; | ||
| 404 | + | ||
| 405 | +procedure TfrmMapaCacic.cbIdUnidOrganizacionalNivel1Change(Sender: TObject); | ||
| 406 | +var intLoopVetorUON1a : integer; | ||
| 407 | +begin | ||
| 408 | + objCacic.writeDebugLog('cbIdUnidOrganizacionalNivel1Change: Nível 1 CHANGE'); | ||
| 409 | + | ||
| 410 | + // Filtro os itens do combo2, de acordo com o item selecionado no combo1 | ||
| 411 | + strIdUON1 := VetorUON1[cbIdUnidOrganizacionalNivel1.ItemIndex].idUON1; | ||
| 412 | + | ||
| 413 | + cbIdUnidOrganizacionalNivel1a.Items.Clear; | ||
| 414 | + cbIdUnidOrganizacionalNivel2.Items.Clear; | ||
| 415 | + cbIdUnidOrganizacionalNivel1a.Enabled := false; | ||
| 416 | + cbIdUnidOrganizacionalNivel2.Enabled := false; | ||
| 417 | + SetLength(VetorUON1aFiltrado, 0); | ||
| 418 | + | ||
| 419 | + objCacic.writeDebugLog('cbIdUnidOrganizacionalNivel1Change: Tamanho de VetorUON1..: '+IntToStr(Length(VetorUON1))); | ||
| 420 | + objCacic.writeDebugLog('cbIdUnidOrganizacionalNivel1Change: ItemIndex de cb_nivel1: '+IntToStr(cbIdUnidOrganizacionalNivel1.ItemIndex)); | ||
| 421 | + objCacic.writeDebugLog('cbIdUnidOrganizacionalNivel1Change: Tamanho de VetorUON1a.: '+IntToStr(Length(VetorUON1a))); | ||
| 422 | + | ||
| 423 | + For intLoopVetorUON1a := 0 to Length(VetorUON1a) - 1 Do | ||
| 424 | + Begin | ||
| 425 | + Try | ||
| 426 | + if VetorUON1a[intLoopVetorUON1a].idUON1 = strIdUON1 then | ||
| 427 | + Begin | ||
| 428 | + objCacic.writeDebugLog('cbIdUnidOrganizacionalNivel1Change: Add em cb_nivel1a: '+VetorUON1a[intLoopVetorUON1a].nmUON1a); | ||
| 429 | + cbIdUnidOrganizacionalNivel1a.Items.Add(VetorUON1a[intLoopVetorUON1a].nmUON1a); | ||
| 430 | + | ||
| 431 | + SetLength(VetorUON1aFiltrado, Length(VetorUON1aFiltrado) + 1); | ||
| 432 | + VetorUON1aFiltrado[Length(VetorUON1aFiltrado)-1] := VetorUON1a[intLoopVetorUON1a].idUON1a; | ||
| 433 | + objCacic.writeDebugLog('cbIdUnidOrganizacionalNivel1Change: VetorUON1aFiltrado['+IntToStr(Length(VetorUON1aFiltrado)-1)+']= '+VetorUON1aFiltrado[Length(VetorUON1aFiltrado)-1]); | ||
| 434 | + end; | ||
| 435 | + Except | ||
| 436 | + on E:Exception do | ||
| 437 | + Begin | ||
| 438 | + objCacic.writeExceptionLog(E.Message,e.ClassName); | ||
| 439 | + End; | ||
| 440 | + End; | ||
| 441 | + end; | ||
| 442 | + if (cbIdUnidOrganizacionalNivel1a.Items.Count > 0) then | ||
| 443 | + Begin | ||
| 444 | + cbIdUnidOrganizacionalNivel1a.Enabled := true; | ||
| 445 | + cbIdUnidOrganizacionalNivel1a.ItemIndex := 0; | ||
| 446 | + objCacic.writeDebugLog('cbIdUnidOrganizacionalNivel1Change: Provocando CHANGE em nivel1a'); | ||
| 447 | + cbIdUnidOrganizacionalNivel1aChange(nil); | ||
| 448 | + End; | ||
| 449 | +end; | ||
| 450 | + | ||
| 451 | +procedure TfrmMapaCacic.cbIdUnidOrganizacionalNivel1aChange( | ||
| 452 | + Sender: TObject); | ||
| 453 | +var intLoopVetorUON2 : integer; | ||
| 454 | +begin | ||
| 455 | + objCacic.writeDebugLog('cbIdUnidOrganizacionalNivel1aChange: Nível 1a CHANGE'); | ||
| 456 | + // Filtro os itens do combo2, de acordo com o item selecionado no combo1 | ||
| 457 | + objCacic.writeDebugLog('cbIdUnidOrganizacionalNivel1aChange: cbIdUnidOrganizacionalNivel1a.ItemIndex = '+intToStr(cbIdUnidOrganizacionalNivel1a.ItemIndex)); | ||
| 458 | + objCacic.writeDebugLog('cbIdUnidOrganizacionalNivel1aChange: VetorUON1aFiltrado['+intToStr(cbIdUnidOrganizacionalNivel1a.ItemIndex)+'] => '+VetorUON1aFiltrado[cbIdUnidOrganizacionalNivel1a.ItemIndex]); | ||
| 459 | + objCacic.writeDebugLog('cbIdUnidOrganizacionalNivel1aChange: strIdLocal = '+strIdLocal); | ||
| 460 | + | ||
| 461 | + cbIdUnidOrganizacionalNivel2.Items.Clear; | ||
| 462 | + cbIdUnidOrganizacionalNivel2.Enabled := false; | ||
| 463 | + SetLength(VetorUON2Filtrado, 0); | ||
| 464 | + | ||
| 465 | + objCacic.writeDebugLog('cbIdUnidOrganizacionalNivel1aChange: Tamanho de VetorUON1a..: '+IntToStr(Length(VetorUON1a))); | ||
| 466 | + objCacic.writeDebugLog('cbIdUnidOrganizacionalNivel1aChange: ItemIndex de cb_nivel1a: '+IntToStr(cbIdUnidOrganizacionalNivel1a.ItemIndex)); | ||
| 467 | + objCacic.writeDebugLog('cbIdUnidOrganizacionalNivel1aChange: Tamanho de VetorUON2...: '+IntToStr(Length(VetorUON2))); | ||
| 468 | + | ||
| 469 | + For intLoopVetorUON2 := 0 to Length(VetorUON2) - 1 Do | ||
| 470 | + Begin | ||
| 471 | + Try | ||
| 472 | + if (VetorUON2[intLoopVetorUON2].idUON1a = VetorUON1aFiltrado[cbIdUnidOrganizacionalNivel1a.ItemIndex]) then | ||
| 473 | + Begin | ||
| 474 | + objCacic.writeDebugLog('cbIdUnidOrganizacionalNivel1aChange: Add em cb_nivel2: '+VetorUON2[intLoopVetorUON2].nmUON2); | ||
| 475 | + cbIdUnidOrganizacionalNivel2.Items.Add(VetorUON2[intLoopVetorUON2].nmUON2); | ||
| 476 | + | ||
| 477 | + SetLength(VetorUON2Filtrado, Length(VetorUON2Filtrado) + 1); | ||
| 478 | + VetorUON2Filtrado[Length(VetorUON2Filtrado)-1] := VetorUON2[intLoopVetorUON2].idUON2 + '#' + VetorUON2[intLoopVetorUON2].idLocal; | ||
| 479 | + objCacic.writeDebugLog('cbIdUnidOrganizacionalNivel1aChange: VetorUON2Filtrado['+IntToStr(Length(VetorUON2Filtrado)-1)+']= '+VetorUON2Filtrado[Length(VetorUON2Filtrado)-1]); | ||
| 480 | + end; | ||
| 481 | + Except | ||
| 482 | + on E:Exception do | ||
| 483 | + Begin | ||
| 484 | + objCacic.writeExceptionLog(E.Message,e.ClassName); | ||
| 485 | + End; | ||
| 486 | + End; | ||
| 487 | + end; | ||
| 488 | + if (cbIdUnidOrganizacionalNivel2.Items.Count > 0) then | ||
| 489 | + Begin | ||
| 490 | + cbIdUnidOrganizacionalNivel2.Enabled := true; | ||
| 491 | + cbIdUnidOrganizacionalNivel2.ItemIndex := 0; | ||
| 492 | + End; | ||
| 493 | +end; | ||
| 494 | + | ||
| 495 | + | ||
| 496 | +procedure TfrmMapaCacic.AtualizaPatrimonio(Sender: TObject); | ||
| 497 | +var strColetaAtual, | ||
| 498 | + strIdUON1, | ||
| 499 | + strIdUON1a, | ||
| 500 | + strIdUON2, | ||
| 501 | + strIdLocal, | ||
| 502 | + strRetorno : String; | ||
| 503 | + tstrAuxAP : TStrings; | ||
| 504 | +begin | ||
| 505 | + tstrAuxAP := TStrings.Create; | ||
| 506 | + tstrAuxAP := objCacic.explode(VetorUON2Filtrado[cbIdUnidOrganizacionalNivel2.ItemIndex],'#'); | ||
| 507 | + Try | ||
| 508 | + strIdUON1 := VetorUON1[cbIdUnidOrganizacionalNivel1.ItemIndex].idUON1; | ||
| 509 | + strIdUON2 := tstrAuxAP[0]; | ||
| 510 | + strIdLocal := tstrAuxAP[1]; | ||
| 511 | + Except | ||
| 512 | + on E:Exception do | ||
| 513 | + Begin | ||
| 514 | + objCacic.writeExceptionLog(E.Message,e.ClassName); | ||
| 515 | + End; | ||
| 516 | + end; | ||
| 517 | + | ||
| 518 | + tstrAuxAP := objCacic.explode(VetorUON1aFiltrado[cbIdUnidOrganizacionalNivel1a.ItemIndex],'#'); | ||
| 519 | + Try | ||
| 520 | + strIdUON1a := tstrAuxAP[0]; | ||
| 521 | + Except | ||
| 522 | + on E:Exception do | ||
| 523 | + Begin | ||
| 524 | + objCacic.writeExceptionLog(E.Message,e.ClassName); | ||
| 525 | + End; | ||
| 526 | + end; | ||
| 527 | + | ||
| 528 | + tstrAuxAP.Free; | ||
| 529 | + Mensagem('Enviando Informações Coletadas ao Banco de Dados...',false,1); | ||
| 530 | + | ||
| 531 | + strFieldsAndValuesToRequest := 'CollectType=' + objCacic.replaceInvalidHTTPChars(objCacic.enCrypt('col_patr')) ; | ||
| 532 | + | ||
| 533 | + strColetaAtual := StringReplace('[IdUsuario]' + frmMapaCacic.strId_usuario + '[/IdUsuario]' + | ||
| 534 | + '[IdLocal]' + strIdLocal + '[/IdLocal]' + | ||
| 535 | + '[IdUnidOrganizacionalNivel1]' + strIdUON1 + '[/IdUnidOrganizacionalNivel1]' + | ||
| 536 | + '[IdUnidOrganizacionalNivel1a]' + strIdUON1A + '[/IdUnidOrganizacionalNivel1a]'+ | ||
| 537 | + '[IdUnidOrganizacionalNivel2]' + strIdUON2 + '[/IdUnidOrganizacionalNivel2]' + | ||
| 538 | + '[TeLocalizacaoComplementar]' + edTeLocalizacaoComplementar.Text + '[/TeLocalizacaoComplementar]' + | ||
| 539 | + '[TeInfoPatrimonio1]' + edTeInfoPatrimonio1.Text + '[/TeInfoPatrimonio1]' + | ||
| 540 | + '[TeInfoPatrimonio2]' + edTeInfoPatrimonio2.Text + '[/TeInfoPatrimonio2]' + | ||
| 541 | + '[TeInfoPatrimonio3]' + edTeInfoPatrimonio3.Text + '[/TeInfoPatrimonio3]' + | ||
| 542 | + '[TeInfoPatrimonio4]' + edTeInfoPatrimonio4.Text + '[/TeInfoPatrimonio4]' + | ||
| 543 | + '[TeInfoPatrimonio5]' + edTeInfoPatrimonio5.Text + '[/TeInfoPatrimonio5]' + | ||
| 544 | + '[TeInfoPatrimonio6]' + edTeInfoPatrimonio6.Text + '[/TeInfoPatrimonio6]',',','[[COMMA]]',[rfReplaceAll]); | ||
| 545 | + | ||
| 546 | + strFieldsAndValuesToRequest := strFieldsAndValuesToRequest + ',col_patr=' + objCacic.replaceInvalidHTTPChars(objCacic.enCrypt(strColetaAtual)); | ||
| 547 | + | ||
| 548 | + strRetorno := Comm(objCacic.getWebManagerAddress + objCacic.getWebServicesFolderName +'gercols/set/collects', strFieldsAndValuesToRequest,objCacic.getLocalFolderName); | ||
| 549 | + objCacic.setBoolCipher(not objCacic.isInDebugMode); | ||
| 550 | + | ||
| 551 | + if (strRetorno = '0') then | ||
| 552 | + Mensagem('ATENÇÃO: PROBLEMAS NO ENVIO DAS INFORMAÇÕES COLETADAS AO BANCO DE DADOS...',true,1) | ||
| 553 | + else | ||
| 554 | + Begin | ||
| 555 | + Mensagem('Salvando Informações Coletadas em Base Local...',false,1); | ||
| 556 | + objCacic.setValueToFile('Collects','Patrimonio_Last' , objCacic.enCrypt(strColetaAtual), strGerColsInfFileName); | ||
| 557 | + | ||
| 558 | + objCacic.setValueRegistryKey('HKEY_LOCAL_MACHINE\SOFTWARE\Dataprev\Patrimonio\te_info_patrimonio1', edTeInfoPatrimonio1.Text); | ||
| 559 | + objCacic.setValueRegistryKey('HKEY_LOCAL_MACHINE\SOFTWARE\Dataprev\Patrimonio\te_info_patrimonio4', edTeInfoPatrimonio4.Text); | ||
| 560 | + End; | ||
| 561 | + objCacic.writeDebugLog('AtualizaPatrimonio: Dados Enviados ao Servidor!'); | ||
| 562 | + Application.ProcessMessages; | ||
| 563 | + | ||
| 564 | + Finalizar(true); | ||
| 565 | +end; | ||
| 566 | + | ||
| 567 | +procedure TfrmMapaCacic.MontaInterface; | ||
| 568 | +var strConfigsPatrimonioInterface : String; | ||
| 569 | +Begin | ||
| 570 | + btCombosUpdate.Enabled := false; | ||
| 571 | + | ||
| 572 | + Mensagem('Montando Interface para Coleta de Informações...',false,1); | ||
| 573 | + | ||
| 574 | + strConfigsPatrimonioInterface := objCacic.deCrypt( objCacic.getValueFromFile('Configs','Patrimonio_Interface',strGerColsInfFileName)); | ||
| 575 | + | ||
| 576 | + lbEtiqueta1.Caption := objCacic.getValueFromTags('te_etiqueta1', strConfigsPatrimonioInterface); | ||
| 577 | + lbEtiqueta1.Visible := true; | ||
| 578 | + cbIdUnidOrganizacionalNivel1.Hint := objCacic.getValueFromTags('te_help_etiqueta1', strConfigsPatrimonioInterface); | ||
| 579 | + | ||
| 580 | + lbEtiqueta1a.Caption := objCacic.getValueFromTags('te_etiqueta1a', strConfigsPatrimonioInterface); | ||
| 581 | + lbEtiqueta1a.Visible := true; | ||
| 582 | + cbIdUnidOrganizacionalNivel1a.Hint := objCacic.getValueFromTags('te_help_etiqueta1a', strConfigsPatrimonioInterface); | ||
| 583 | + | ||
| 584 | + lbEtiqueta2.Caption := objCacic.getValueFromTags('te_etiqueta2', strConfigsPatrimonioInterface); | ||
| 585 | + lbEtiqueta2.Visible := true; | ||
| 586 | + cbIdUnidOrganizacionalNivel2.Hint := objCacic.getValueFromTags('te_help_etiqueta2', strConfigsPatrimonioInterface); | ||
| 587 | + | ||
| 588 | + lbEtiqueta3.Caption := objCacic.getValueFromTags('te_etiqueta3', strConfigsPatrimonioInterface); | ||
| 589 | + lbEtiqueta3.Visible := true; | ||
| 590 | + edTeLocalizacaoComplementar.Text := strTeLocalizacaoComplementar; | ||
| 591 | + | ||
| 592 | + objCacic.writeDebugLog('MontaInterface: in_exibir_etiqueta4 -> "'+objCacic.getValueFromTags('in_exibir_etiqueta4', strConfigsPatrimonioInterface)+'"'); | ||
| 593 | + if (trim(objCacic.getValueFromTags('in_exibir_etiqueta4', strConfigsPatrimonioInterface)) = 'S') then | ||
| 594 | + begin | ||
| 595 | + lbEtiqueta4.Caption := objCacic.getValueFromTags('te_etiqueta4', strConfigsPatrimonioInterface); | ||
| 596 | + lbEtiqueta4.Visible := true; | ||
| 597 | + edTeInfoPatrimonio1.Hint := objCacic.getValueFromTags('te_help_etiqueta4', strConfigsPatrimonioInterface); | ||
| 598 | + edTeInfoPatrimonio1.Text := strTeInfoPatrimonio1; | ||
| 599 | + edTeInfoPatrimonio1.visible := True; | ||
| 600 | + end; | ||
| 601 | + | ||
| 602 | + objCacic.writeDebugLog('MontaInterface: in_exibir_etiqueta5 -> "'+objCacic.getValueFromTags('in_exibir_etiqueta5', strConfigsPatrimonioInterface)+'"'); | ||
| 603 | + if (trim(objCacic.getValueFromTags('in_exibir_etiqueta5', strConfigsPatrimonioInterface)) = 'S') then | ||
| 604 | + begin | ||
| 605 | + lbEtiqueta5.Caption := objCacic.getValueFromTags('te_etiqueta5', strConfigsPatrimonioInterface); | ||
| 606 | + lbEtiqueta5.Visible := true; | ||
| 607 | + edTeInfoPatrimonio2.Hint := objCacic.getValueFromTags('te_help_etiqueta5', strConfigsPatrimonioInterface); | ||
| 608 | + edTeInfoPatrimonio2.Text := strTeInfoPatrimonio2; | ||
| 609 | + edTeInfoPatrimonio2.visible := True; | ||
| 610 | + end; | ||
| 611 | + | ||
| 612 | + objCacic.writeDebugLog('MontaInterface: in_exibir_etiqueta6 -> "'+objCacic.getValueFromTags('in_exibir_etiqueta6', strConfigsPatrimonioInterface)+'"'); | ||
| 613 | + if (trim(objCacic.getValueFromTags('in_exibir_etiqueta6', strConfigsPatrimonioInterface)) = 'S') then | ||
| 614 | + begin | ||
| 615 | + lbEtiqueta6.Caption := objCacic.getValueFromTags('te_etiqueta6', strConfigsPatrimonioInterface); | ||
| 616 | + lbEtiqueta6.Visible := true; | ||
| 617 | + edTeInfoPatrimonio3.Hint := objCacic.getValueFromTags('te_help_etiqueta6', strConfigsPatrimonioInterface); | ||
| 618 | + edTeInfoPatrimonio3.Text := strTeInfoPatrimonio3; | ||
| 619 | + edTeInfoPatrimonio3.visible := True; | ||
| 620 | + end; | ||
| 621 | + | ||
| 622 | + objCacic.writeDebugLog('MontaInterface: in_exibir_etiqueta7 -> "'+objCacic.getValueFromTags('in_exibir_etiqueta7', strConfigsPatrimonioInterface)+'"'); | ||
| 623 | + if (trim(objCacic.getValueFromTags('in_exibir_etiqueta7', strConfigsPatrimonioInterface)) = 'S') then | ||
| 624 | + begin | ||
| 625 | + lbEtiqueta7.Caption := objCacic.getValueFromTags('te_etiqueta7', strConfigsPatrimonioInterface); | ||
| 626 | + lbEtiqueta7.Visible := true; | ||
| 627 | + edTeInfoPatrimonio4.Hint := objCacic.getValueFromTags('te_help_etiqueta7', strConfigsPatrimonioInterface); | ||
| 628 | + edTeInfoPatrimonio4.Text := strTeInfoPatrimonio4; | ||
| 629 | + edTeInfoPatrimonio4.visible := True; | ||
| 630 | + end; | ||
| 631 | + | ||
| 632 | + objCacic.writeDebugLog('MontaInterface: in_exibir_etiqueta8 -> "'+objCacic.getValueFromTags('in_exibir_etiqueta8', strConfigsPatrimonioInterface)+'"'); | ||
| 633 | + if (trim(objCacic.getValueFromTags('in_exibir_etiqueta8', strConfigsPatrimonioInterface)) = 'S') then | ||
| 634 | + begin | ||
| 635 | + lbEtiqueta8.Caption := objCacic.getValueFromTags('te_etiqueta8', strConfigsPatrimonioInterface); | ||
| 636 | + lbEtiqueta8.Visible := true; | ||
| 637 | + edTeInfoPatrimonio5.Hint := objCacic.getValueFromTags('te_help_etiqueta8', strConfigsPatrimonioInterface); | ||
| 638 | + edTeInfoPatrimonio5.Text := strTeInfoPatrimonio5; | ||
| 639 | + edTeInfoPatrimonio5.visible := True; | ||
| 640 | + end; | ||
| 641 | + | ||
| 642 | + objCacic.writeDebugLog('MontaInterface: in_exibir_etiqueta9 -> "'+objCacic.getValueFromTags('in_exibir_etiqueta9', strConfigsPatrimonioInterface)+'"'); | ||
| 643 | + if (trim(objCacic.getValueFromTags('in_exibir_etiqueta9', strConfigsPatrimonioInterface)) = 'S') then | ||
| 644 | + begin | ||
| 645 | + lbEtiqueta9.Caption := objCacic.getValueFromTags('te_etiqueta9', strConfigsPatrimonioInterface); | ||
| 646 | + lbEtiqueta9.Visible := true; | ||
| 647 | + edTeInfoPatrimonio6.Hint := objCacic.getValueFromTags('te_help_etiqueta9', strConfigsPatrimonioInterface); | ||
| 648 | + edTeInfoPatrimonio6.Text := strTeInfoPatrimonio6; | ||
| 649 | + edTeInfoPatrimonio6.visible := True; | ||
| 650 | + end; | ||
| 651 | + | ||
| 652 | + Mensagem('',false,1); | ||
| 653 | + btGravarInformacoes.Visible := true; | ||
| 654 | + btCombosUpdate.Enabled := true; | ||
| 655 | + | ||
| 656 | + cbIdUnidOrganizacionalNivel1.Enabled := true; | ||
| 657 | + cbIdUnidOrganizacionalNivel1.SetFocus; | ||
| 658 | + | ||
| 659 | + Application.ProcessMessages; | ||
| 660 | +end; | ||
| 661 | + | ||
| 662 | +procedure TfrmMapaCacic.FormClose(Sender: TObject; var Action: TCloseAction); | ||
| 663 | +begin | ||
| 664 | + Action := caNone; | ||
| 665 | + objCacic.writeDebugLog('FormClose: ' + Sender.ClassName); | ||
| 666 | + Finalizar(true); | ||
| 667 | +end; | ||
| 668 | + | ||
| 669 | +procedure TfrmMapaCacic.CriaFormSenha(Sender: TObject); | ||
| 670 | +begin | ||
| 671 | + Application.CreateForm(TfrmAcesso, frmAcesso); | ||
| 672 | +end; | ||
| 673 | + | ||
| 674 | +procedure TfrmMapaCacic.mapa; | ||
| 675 | +begin | ||
| 676 | + Try | ||
| 677 | + MontaInterface; | ||
| 678 | + MontaCombos; | ||
| 679 | + RecuperaValoresAnteriores; | ||
| 680 | + Except | ||
| 681 | + on E:Exception do | ||
| 682 | + Begin | ||
| 683 | + objCacic.writeExceptionLog(E.Message,e.ClassName); | ||
| 684 | + End; | ||
| 685 | + End; | ||
| 686 | +End; | ||
| 687 | +function TfrmMapaCacic.getConfigs : String; | ||
| 688 | +Begin | ||
| 689 | + btCombosUpdate.Enabled := false; | ||
| 690 | + | ||
| 691 | + Result := Comm(objCacic.getWebManagerAddress + objCacic.getWebServicesFolderName + 'get/config', strFieldsAndValuesToRequest,objCacic.getLocalFolderName); | ||
| 692 | + objCacic.setBoolCipher(not objCacic.isInDebugMode); | ||
| 693 | + | ||
| 694 | + objCacic.writeDebugLog('FormActivate: Retorno de getConfigs: "'+Result+'"'); | ||
| 695 | + | ||
| 696 | + if (Result <> '0') then | ||
| 697 | + Begin | ||
| 698 | + Mensagem('Comunicação Efetuada com Sucesso! Salvando as Configurações Obtidas...',false,1); | ||
| 699 | + objCacic.setValueToFile('Configs' ,'Patrimonio_Combos' , objCacic.getValueFromTags('Configs_Patrimonio_Combos' , Result), strGerColsInfFileName); | ||
| 700 | + objCacic.setValueToFile('Configs' ,'Patrimonio_Interface' , objCacic.getValueFromTags('Configs_Patrimonio_Interface', Result), strGerColsInfFileName); | ||
| 701 | + objCacic.setValueToFile('Collects','Patrimonio_Last' , objCacic.getValueFromTags('Collects_Patrimonio_Last' , Result), strGerColsInfFileName); | ||
| 702 | + End; | ||
| 703 | + btCombosUpdate.Enabled := true; | ||
| 704 | +End; | ||
| 705 | + | ||
| 706 | +procedure TfrmMapaCacic.FormCreate(Sender: TObject); | ||
| 707 | +begin | ||
| 708 | + Try | ||
| 709 | + strFrmAtual := 'Principal'; | ||
| 710 | + objCacic := TCACIC.Create(); | ||
| 711 | + | ||
| 712 | + objCacic.setBoolCipher(true); | ||
| 713 | + objCacic.setLocalFolderName('Cacic'); | ||
| 714 | + objCacic.setWebServicesFolderName('ws/'); | ||
| 715 | + | ||
| 716 | + if IsUserAnAdmin then | ||
| 717 | + Begin | ||
| 718 | + strChkSisInfFileName := objCacic.getWinDir + 'chksis.inf'; | ||
| 719 | + | ||
| 720 | + Mensagem('Caminho local para a aplicação CACIC: "'+objCacic.GetValueFromFile('Configs','LocalFolderName',strChkSisInfFileName)+'"'); | ||
| 721 | + if not (objCacic.GetValueFromFile('Configs','LocalFolderName',strChkSisInfFileName) = '') then | ||
| 722 | + Begin | ||
| 723 | + | ||
| 724 | + objCacic.setLocalFolderName(objCacic.GetValueFromFile('Configs','LocalFolderName',strChkSisInfFileName)); | ||
| 725 | + objCacic.setWebServicesFolderName(objCacic.GetValueFromFile('Configs','WebServicesFolderName', strChkSisInfFileName)); | ||
| 726 | + objCacic.setWebManagerAddress(objCacic.GetValueFromFile('Configs','WebManagerAddress', strChkSisInfFileName)); | ||
| 727 | + | ||
| 728 | + strGerColsInfFileName := objCacic.getLocalFolderName + 'GerCols.inf'; | ||
| 729 | + | ||
| 730 | + // A existência e bloqueio do arquivo abaixo evitará que o Agente Principal entre em ação | ||
| 731 | + AssignFile(textFileAguarde,objCacic.getLocalFolderName + '\temp\aguarde_MAPACACIC.txt'); {Associa o arquivo a uma variável do tipo TextFile} | ||
| 732 | + {$IOChecks off} | ||
| 733 | + Reset(textFileAguarde); {Abre o arquivo texto} | ||
| 734 | + {$IOChecks on} | ||
| 735 | + if (IOResult <> 0) then // Arquivo não existe, será recriado. | ||
| 736 | + Rewrite (textFileAguarde); | ||
| 737 | + | ||
| 738 | + Append(textFileAguarde); | ||
| 739 | + Writeln(textFileAguarde,'Apenas um pseudo-cookie para o Agente Principal esperar o término de MapaCACIC'); | ||
| 740 | + Append(textFileAguarde); | ||
| 741 | + | ||
| 742 | + frmMapaCacic.edWebManagerAddress.Caption := objCacic.GetValueFromFile('Configs','WebManagerAddress', strChkSisInfFileName); | ||
| 743 | + | ||
| 744 | + frmMapaCacic.lbMensagens.Caption := 'Entrada de Dados para Autenticação no Módulo Gerente WEB Cacic'; | ||
| 745 | + objCacic.writeDebugLog('FormActivate: Versão do MapaCacic...: ' + pnVersao.Caption); | ||
| 746 | + objCacic.writeDebugLog('FormActivate: Hash-Code do MapaCacic: ' + objCacic.getFileHash(ParamStr(0))); | ||
| 747 | + | ||
| 748 | + // Acessar... | ||
| 749 | + CriaFormSenha(nil); | ||
| 750 | + frmAcesso.ShowModal; | ||
| 751 | + | ||
| 752 | + Application.ProcessMessages; | ||
| 753 | + if boolAcessoOK then | ||
| 754 | + Begin | ||
| 755 | + Visible := true; | ||
| 756 | + Height := 575; | ||
| 757 | + Width := 800; | ||
| 758 | + WindowState := wsNormal; | ||
| 759 | + Position := poScreenCenter; | ||
| 760 | + | ||
| 761 | + pnMessageBox.Visible := true; | ||
| 762 | + Mensagem('Efetuando Comunicação com o Módulo Gerente WEB em "'+objCacic.GetValueFromFile('Configs','WebManagerAddress', strChkSisInfFileName)+'"...',false,1); | ||
| 763 | + frmAcesso.Free; | ||
| 764 | + | ||
| 765 | + // Povoamento com dados de configurações da interface patrimonial | ||
| 766 | + // Solicita ao servidor as configurações para a Coleta de Informações de Patrimônio | ||
| 767 | + strFieldsAndValuesToRequest := 'id_usuario=' + objCacic.replaceInvalidHTTPChars( objCacic.enCrypt(frmMapaCacic.strId_usuario)); | ||
| 768 | + | ||
| 769 | + objCacic.writeDebugLog('FormActivate: Requisitando informações de patrimônio da estação...'); | ||
| 770 | + | ||
| 771 | + if (getConfigs <> '0') then | ||
| 772 | + mapa | ||
| 773 | + else | ||
| 774 | + Sair; | ||
| 775 | + End; | ||
| 776 | + End | ||
| 777 | + else | ||
| 778 | + Begin | ||
| 779 | + frmMapaCacic.boolAcessoOK := false; | ||
| 780 | + MessageDLG(#13#10+'Atenção! É necessário reinstalar o CACIC nesta estação.' + #13#10 + #13#10 + | ||
| 781 | + 'A estrutura encontra-se corrompida.' + #13#10,mtError,[mbOK],0); | ||
| 782 | + Application.ProcessMessages; | ||
| 783 | + frmMapaCacic.Finalizar(false); | ||
| 784 | + End; | ||
| 785 | + End | ||
| 786 | + else | ||
| 787 | + Begin // Se NT/2000/XP/... | ||
| 788 | + MessageDLG(#13#10+'ATENÇÃO! Essa aplicação requer execução com nível administrativo.',mtError,[mbOK],0); | ||
| 789 | + objCacic.writeDailyLog('SEM PRIVILÉGIOS: Necessário ser administrador "local" ou de Domínio!'); | ||
| 790 | + Sair; | ||
| 791 | + End; | ||
| 792 | + Finally | ||
| 793 | + End; | ||
| 794 | +end; | ||
| 795 | + | ||
| 796 | +procedure TfrmMapaCacic.cbIdUnidOrganizacionalNivel1Click( | ||
| 797 | + Sender: TObject); | ||
| 798 | +begin | ||
| 799 | + objCacic.writeDebugLog('cbIdUnidOrganizacionalNivel1Click: Click'); | ||
| 800 | +end; | ||
| 801 | + | ||
| 802 | +procedure TfrmMapaCacic.FormActivate(Sender: TObject); | ||
| 803 | +begin | ||
| 804 | + pnVersao.Caption := 'Versão: ' + objCacic.getVersionInfo(ParamStr(0)); | ||
| 805 | + strFrmAtual := 'Principal'; | ||
| 806 | +end; | ||
| 807 | + | ||
| 808 | +procedure TfrmMapaCacic.btCombosUpdateClick(Sender: TObject); | ||
| 809 | +begin | ||
| 810 | + cbIdUnidOrganizacionalNivel1.Enabled := false; | ||
| 811 | + cbIdUnidOrganizacionalNivel1a.Enabled := false; | ||
| 812 | + cbIdUnidOrganizacionalNivel2.Enabled := false; | ||
| 813 | + | ||
| 814 | + getConfigs; | ||
| 815 | + MontaInterface; | ||
| 816 | + MontaCombos; | ||
| 817 | + RecuperaValoresAnteriores; | ||
| 818 | +end; | ||
| 819 | + | ||
| 820 | +procedure TfrmMapaCacic.timerMessageShowTimeTimer(Sender: TObject); | ||
| 821 | +begin | ||
| 822 | + timerMessageShowTime.Enabled := false; | ||
| 823 | + timerMessageShowTime.Interval := 0; | ||
| 824 | + strShowOrHide := 'Hide'; | ||
| 825 | + timerMessageBoxShowOrHide.Enabled := true; | ||
| 826 | +end; | ||
| 827 | + | ||
| 828 | +procedure TfrmMapaCacic.cbIdUnidOrganizacionalNivel1DrawItem( | ||
| 829 | + Control: TWinControl; Index: Integer; Rect: TRect; | ||
| 830 | + State: TOwnerDrawState); | ||
| 831 | +var sText : String; | ||
| 832 | +begin | ||
| 833 | + sText := cbIdUnidOrganizacionalNivel1.Items[index]; | ||
| 834 | + cbIdUnidOrganizacionalNivel1.Height := 30; | ||
| 835 | + cbIdUnidOrganizacionalNivel1.Canvas.FillRect(Rect); | ||
| 836 | + DrawText(cbIdUnidOrganizacionalNivel1.Canvas.Handle,PChar(sText),Length(sText),Rect,DT_VCENTER + DT_SINGLELINE + DT_CENTER); | ||
| 837 | +end; | ||
| 838 | + | ||
| 839 | +procedure TfrmMapaCacic.cbIdUnidOrganizacionalNivel1aDrawItem( | ||
| 840 | + Control: TWinControl; Index: Integer; Rect: TRect; | ||
| 841 | + State: TOwnerDrawState); | ||
| 842 | +var sText : String; | ||
| 843 | +begin | ||
| 844 | + sText := cbIdUnidOrganizacionalNivel1a.Items[index]; | ||
| 845 | + cbIdUnidOrganizacionalNivel1a.Height := 30; | ||
| 846 | + cbIdUnidOrganizacionalNivel1a.Canvas.FillRect(Rect); | ||
| 847 | + DrawText(cbIdUnidOrganizacionalNivel1a.Canvas.Handle,PChar(sText),Length(sText),Rect,DT_VCENTER + DT_SINGLELINE + DT_CENTER); | ||
| 848 | +end; | ||
| 849 | + | ||
| 850 | +procedure TfrmMapaCacic.cbIdUnidOrganizacionalNivel2DrawItem( | ||
| 851 | + Control: TWinControl; Index: Integer; Rect: TRect; | ||
| 852 | + State: TOwnerDrawState); | ||
| 853 | +var sText : String; | ||
| 854 | +begin | ||
| 855 | + sText := cbIdUnidOrganizacionalNivel2.Items[index]; | ||
| 856 | + cbIdUnidOrganizacionalNivel2.Height := 30; | ||
| 857 | + cbIdUnidOrganizacionalNivel2.Canvas.FillRect(Rect); | ||
| 858 | + DrawText(cbIdUnidOrganizacionalNivel2.Canvas.Handle,PChar(sText),Length(sText),Rect,DT_VCENTER + DT_SINGLELINE + DT_CENTER); | ||
| 859 | +end; | ||
| 860 | + | ||
| 861 | +procedure TfrmMapaCacic.timerMessageBoxShowOrHideTimer(Sender: TObject); | ||
| 862 | +begin | ||
| 863 | + if (strShowOrHide = 'Show') then | ||
| 864 | + if (strFrmAtual = 'Acesso') then | ||
| 865 | + frmAcesso.pnMessageBox.Height := frmAcesso.pnMessageBox.Height + 1 | ||
| 866 | + else | ||
| 867 | + frmMapaCacic.pnMessageBox.Height := frmMapaCacic.pnMessageBox.Height + 1 | ||
| 868 | + else | ||
| 869 | + if (strFrmAtual = 'Acesso') then | ||
| 870 | + frmAcesso.pnMessageBox.Height := frmAcesso.pnMessageBox.Height - 1 | ||
| 871 | + else | ||
| 872 | + frmMapaCacic.pnMessageBox.Height := frmMapaCacic.pnMessageBox.Height - 1; | ||
| 873 | + | ||
| 874 | + if (strFrmAtual = 'Acesso') and (frmAcesso.pnMessageBox.Height = 0) or | ||
| 875 | + (strFrmAtual = 'Acesso') and (frmAcesso.pnMessageBox.Height = 45) or | ||
| 876 | + (strFrmAtual = 'Principal') and (frmMapaCacic.pnMessageBox.Height = 0) or | ||
| 877 | + (strFrmAtual = 'Principal') and (frmMapaCacic.pnMessageBox.Height = 45) then | ||
| 878 | + Begin | ||
| 879 | + timerMessageBoxShowOrHide.Enabled := false; | ||
| 880 | + if timerMessageShowTime.Interval > 0 then | ||
| 881 | + timerMessageShowTime.Enabled := true; | ||
| 882 | + End; | ||
| 883 | +end; | ||
| 884 | + | ||
| 885 | +end. |