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. | ... | ... |