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 @@ |
| 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 | 73 | \ No newline at end of file | ... | ... |
No preview for this file type
| ... | ... | @@ -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 @@ |
| 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. | ... | ... |