Commit a918b4cae9e650d4ab9c449782aaa1403d0b115f

Authored by José Maria Villac Pinheiro
1 parent 7f025eff
Exists in master

18-10-2016 - GeoSan 7.3.3 - Finalizada funcionalidade para cadastro automático

de ramais a partir de ligações levantadas pelo coletor GPS (celular) do GSAN.
O usuário seleciona o trecho de rede e em seguida seleciona as ligações, quando
as mesmas são automaticamente associadas as redes unindo o cadastro comercial do
GSAN ao cadastro GIS de redes de água.
install/GeraSetupGeoSan/ArquivosInstGeoSan/GeoSan.exe
No preview for this file type
install/GeraSetupGeoSan/Codigo Gerador Instalador Geosan com TerraComponents.iss
1 1 #define SetupBaseName "SetupGeoSan-v."
2   -#define AppVersionFile "07.03.01"
  2 +#define AppVersionFile "07.03.03"
3 3  
4 4 [Setup]
5 5 AppName=GeoSan
... ...
trunk/Forms/frmCanvas.frm
... ... @@ -260,7 +260,7 @@ Private Sub InsereRamalLigacaoGPS(object_id_ligacaoGPS As Long, object_id_rede A
260 260 Dim strApagaGeometriaDaLigacaoGpsCadastrada As String
261 261 Dim retornoPontoDoRamalInserido As Long
262 262 Dim geomIdRamal As Integer
263   - Dim objectIdRamal As String
  263 +' Dim objectIdRamal As String
264 264 Dim volumeFaturado As Double
265 265 Dim numeroDaLigacaoComDV As String
266 266  
... ... @@ -288,8 +288,6 @@ Private Sub InsereRamalLigacaoGPS(object_id_ligacaoGPS As Long, object_id_rede A
288 288 On Error GoTo Trata_Erro
289 289 '2 - Adiciona geometria da linha de ramal de água
290 290 debugCodigoErro = "1"
291   - 'TCanvas.object_id = object_id_ramal 'acho que pode tirar esta linha 'Aqui é crucial, pois é onde ele fala para o Canvas qual é o número o OBJECT_ID, para quando ele criar as geometrias, criar com este OBJECT_ID
292   -
293 291 retornoPontoGPS = TeDatabase1.setCurrentLayer("NXGS_V_LIG_COMERCIAL_GPS")
294 292 TeDatabase1.getCenterGeometry 0, stringObject_id_ligacaoGPS, TypeGeometry.points, coordX_pontoGPS, coordY_pontoGPS
295 293 retornoPontoGPS = TeDatabase1.setCurrentLayer("WATERLINES")
... ... @@ -299,33 +297,32 @@ Private Sub InsereRamalLigacaoGPS(object_id_ligacaoGPS As Long, object_id_rede A
299 297 linhaRamalX(1) = coordX_pontoGPS
300 298 linhaRamalY(1) = coordY_pontoGPS
301 299 retornoPontoGPS = TeDatabase1.setCurrentLayer("RAMAIS_AGUA")
302   - retornoAdicionaLinhaRamal = TeDatabase1.addLine(objIdRamalTemporarioDoUsuario, linhaRamalX(0), linhaRamalY(0), 2)
  300 + retornoAdicionaLinhaRamal = TeDatabase1.addLine(idUnicoRamaisAgua, linhaRamalX(0), linhaRamalY(0), 2)
303 301  
304 302 '3 - obtem o geoId máximo da tabela de geometria de linhas, último entrado
305   - debugCodigoErro = "2"
306   - On Error GoTo Transacao_Erro
307   - Conn.BeginTrans
308   - Set rsConsultaMaximoGeoId = New ADODB.Recordset
309   - strConsultaMaxGeoIdLinhaRamal = "SELECT Max ([geom_id]) From LINES7 WHERE object_id = '" + objIdRamalTemporarioDoUsuario + "'"
310   - rsConsultaMaximoGeoId.Open strConsultaMaxGeoIdLinhaRamal, Conn, adOpenForwardOnly, adLockOptimistic
311   - If rsConsultaMaximoGeoId.EOF = False Then
312   - Dim valorMaximo As Integer
313   - valorMaximo = rsConsultaMaximoGeoId.Fields(0).value
314   - geomIdRamal = valorMaximo
315   - objectIdRamal = CStr(geomIdRamal)
316   - End If
317   - rsConsultaMaximoGeoId.Close
318   - Conn.CommitTrans
  303 +' debugCodigoErro = "2"
  304 +' On Error GoTo Transacao_Erro
  305 +' Conn.BeginTrans
  306 +' Set rsConsultaMaximoGeoId = New ADODB.Recordset
  307 +' strConsultaMaxGeoIdLinhaRamal = "SELECT Max ([geom_id]) From LINES7 WHERE object_id = '" + objIdRamalTemporarioDoUsuario + "'"
  308 +' rsConsultaMaximoGeoId.Open strConsultaMaxGeoIdLinhaRamal, Conn, adOpenForwardOnly, adLockOptimistic
  309 +' If rsConsultaMaximoGeoId.EOF = False Then
  310 +' Dim valorMaximo As Integer
  311 +' valorMaximo = rsConsultaMaximoGeoId.Fields(0).value
  312 +' geomIdRamal = valorMaximo
  313 +' objectIdRamal = CStr(geomIdRamal)
  314 +' End If
  315 +' rsConsultaMaximoGeoId.Close
  316 +' Conn.CommitTrans
319 317 On Error GoTo Trata_Erro
320 318 '4 - Adiciona geometria do ponto ao ramail
321 319 debugCodigoErro = "3"
322   - retornoPontoDoRamalInserido = TeDatabase1.addPoint(objectIdRamal, coordX_pontoGPS, coordY_pontoGPS)
  320 + retornoPontoDoRamalInserido = TeDatabase1.addPoint(idUnicoRamaisAgua, coordX_pontoGPS, coordY_pontoGPS)
323 321  
324 322 ' 4 - Atualiza os dados de RAMAIS_AGUA inclusive com o OBJECT_ID do trecho de rede e OBJECT_ID do ramal
325 323 'BOM, até agora ele criou uma linha em RAMAIS_AGUA, e inseriu as geometrias de linha (LINES7) e ponto (POINTS7) do ramal. Então tem agora que atualizar a linha recem inserida em RAMAIS_AGUA com os dados do ramal
326 324  
327 325 Set rsAtualizaDadosDoRamal = New ADODB.Recordset
328   -
329 326 strAtualizaObjIdRamal = "SELECT * FROM RAMAIS_AGUA WHERE OBJECT_ID_ = '" + objIdRamalTemporarioDoUsuario + "'"
330 327 debugCodigoErro = "4"
331 328 On Error GoTo Transacao_Erro
... ... @@ -333,29 +330,30 @@ Private Sub InsereRamalLigacaoGPS(object_id_ligacaoGPS As Long, object_id_rede A
333 330 rsAtualizaDadosDoRamal.Open strAtualizaObjIdRamal, Conn, adOpenKeyset, adLockOptimistic, adCmdText
334 331 'Inicia a atualização de RAMAIS_AGUA com todos os dados
335 332 If rsAtualizaDadosDoRamal.EOF = False Then 'Tem que encontrar a linha em RAMAIS_AGUA que acabou de ser inserida
336   - rsAtualizaDadosDoRamal!Object_id_ = objectIdRamal 'Agora coloca o OBJECT_ID do ramal correto, o anterior tinha o nome do usuário-data-hora
  333 + rsAtualizaDadosDoRamal!Object_id_ = idUnicoRamaisAgua 'ID autonumérico da tabela Ramais 'Agora coloca o OBJECT_ID do ramal correto, o anterior tinha o nome do usuário-data-hora
337 334 rsAtualizaDadosDoRamal!USUARIO_LOG = strUser 'Salva o nome do usuário
338 335 rsAtualizaDadosDoRamal.Update
339 336 End If
340 337 rsAtualizaDadosDoRamal.Close
341 338 Conn.CommitTrans
342 339 On Error GoTo Trata_Erro
  340 +
343 341 '5 - Atualiza Lines7
344   - debugCodigoErro = "5"
345   - Set rsAtualizaDadosLinhaRamal = New ADODB.Recordset
  342 +' debugCodigoErro = "5"
  343 +' Set rsAtualizaDadosLinhaRamal = New ADODB.Recordset
  344 +' strAtualizaDadosDaLinhaRamal = "SELECT * FROM LINES7 WHERE OBJECT_ID = '" + objIdRamalTemporarioDoUsuario + "'"
  345 +' On Error GoTo Transacao_Erro
  346 +' Conn.BeginTrans
  347 +' rsAtualizaDadosLinhaRamal.Open strAtualizaDadosDaLinhaRamal, Conn, adOpenKeyset, adLockOptimistic, adCmdText
  348 +' 'Inicia a atualização de RAMAIS_AGUA com todos os dados
  349 +' If rsAtualizaDadosLinhaRamal.EOF = False Then 'Tem que encontrar a linha em RAMAIS_AGUA que acabou de ser inserida
  350 +' rsAtualizaDadosLinhaRamal!object_id = objectIdRamal 'Agora coloca o OBJECT_ID do ramal correto, o anterior tinha o nome do usuário-data-hora
  351 +' rsAtualizaDadosLinhaRamal.Update
  352 +' End If
  353 +' rsAtualizaDadosLinhaRamal.Close
  354 +' Conn.CommitTrans
  355 +' On Error GoTo Trata_Erro
346 356  
347   - strAtualizaDadosDaLinhaRamal = "SELECT * FROM LINES7 WHERE OBJECT_ID = '" + objIdRamalTemporarioDoUsuario + "'"
348   - On Error GoTo Transacao_Erro
349   - Conn.BeginTrans
350   - rsAtualizaDadosLinhaRamal.Open strAtualizaDadosDaLinhaRamal, Conn, adOpenKeyset, adLockOptimistic, adCmdText
351   - 'Inicia a atualização de RAMAIS_AGUA com todos os dados
352   - If rsAtualizaDadosLinhaRamal.EOF = False Then 'Tem que encontrar a linha em RAMAIS_AGUA que acabou de ser inserida
353   - rsAtualizaDadosLinhaRamal!object_id = objectIdRamal 'Agora coloca o OBJECT_ID do ramal correto, o anterior tinha o nome do usuário-data-hora
354   - rsAtualizaDadosLinhaRamal.Update
355   - End If
356   - rsAtualizaDadosLinhaRamal.Close
357   - Conn.CommitTrans
358   - On Error GoTo Trata_Erro
359 357 ' 6 - Insere em RAMAIS_AGUA_LIGACAO a ligação selecionada pelo usuário
360 358 On Error GoTo Transacao_Erro
361 359 Conn.BeginTrans
... ... @@ -370,7 +368,7 @@ Private Sub InsereRamalLigacaoGPS(object_id_ligacaoGPS As Long, object_id_rede A
370 368 numeroDaLigacaoComDV = rsInsereRamaisAguaLigacao!NRO_LIGACA
371 369 End If
372 370 strInsereLigacao = "INSERT INTO RAMAIS_AGUA_LIGACAO (OBJECT_ID_,NRO_LIGACAO,CONSUMO_LPS) "
373   - strInsereLigacao = strInsereLigacao & "VALUES ('" & objectIdRamal & "','" & numeroDaLigacaoComDV & "', " & volumeFaturado & ")"
  371 + strInsereLigacao = strInsereLigacao & "VALUES ('" & idUnicoRamaisAgua & "','" & numeroDaLigacaoComDV & "', " & volumeFaturado & ")"
374 372 Conn.execute (strInsereLigacao)
375 373 rsInsereRamaisAguaLigacao.Close
376 374  
... ...
trunk/GeoSan.exe
No preview for this file type
trunk/GeoSan.vbp
... ... @@ -151,7 +151,7 @@ HelpContextID="0"
151 151 CompatibleMode="0"
152 152 MajorVer=7
153 153 MinorVer=3
154   -RevisionVer=1
  154 +RevisionVer=3
155 155 AutoIncrementVer=0
156 156 ServerSupportFiles=0
157 157 VersionCompanyName="NEXUS GeoEngenharia e Com. Ltda."
... ...
trunk/GeoSan.vbw
1   -Global = 178, 111, 1297, 843, C
  1 +Global = 178, 111, 1297, 843, Z
2 2 calcDetecta = 0, 0, 0, 0, C
3 3 FrmCreatTextForLayer = 0, 0, 0, 0, C, 132, 132, 1251, 864, C
4 4 frmAbout = 0, 0, 0, 0, C, 154, 154, 1273, 886, C
5 5 FrmTypes = 0, 0, 0, 0, C, 176, 176, 1295, 908, C
6 6 FrmMain = 37, 14, 1267, 632, C, 44, 44, 1163, 776, C
7 7 FrmAssociation = 39, 209, 1277, 778, C, 220, 220, 1339, 952, C
8   -FrmCadastroRamal = 18, 19, 1408, 748, Z, 45, 39, 1164, 771, C
  8 +FrmCadastroRamal = 18, 19, 1408, 748, , 45, 39, 1164, 771, C
9 9 frmCadastroRamalFiltro = 100, 100, 1246, 731, C, 264, 264, 1383, 996, C
10 10 frmCanvas = -74, 93, 1045, 858, , 110, 110, 1229, 842, C
11 11 frmConsumidoresDesabastecidos = 110, 110, 1229, 842, C, 308, 308, 1427, 1040, C
... ... @@ -33,7 +33,7 @@ FrmSelectTypes = 0, 0, 0, 0, C, 22, 22, 1141, 754, C
33 33 FrmSubTypes = 0, 0, 0, 0, C, 44, 44, 1163, 776, C
34 34 FrmSuppliers = 0, 0, 0, 0, C, 66, 66, 1185, 798, C
35 35 FrmSuppliersSub = 0, 0, 0, 0, C, 88, 88, 1207, 820, C
36   -clsTerraLib = 56, 35, 1052, 839,
  36 +clsTerraLib = 56, 35, 1052, 839, C
37 37 clsEPACurves = 0, 0, 0, 0, C
38 38 clsEPAPatterns = 0, 0, 0, 0, C
39 39 clsGeoReference = 132, 132, 1251, 864, C
... ...
trunk/Modules/Global.bas
... ... @@ -200,7 +200,7 @@ Public Sub Main()
200 200 End If
201 201 'Configura a versão atual do GeoSan
202 202 Versao_Geo = App.Major & "." & App.Minor & "." & App.Revision
203   - Versao_Geo = "07.03.01"
  203 + Versao_Geo = "07.03.03"
204 204 glo.diretorioGeoSan = App.path 'salva globalmente o caminho onde encontra-se o GeoSan.exe
205 205 SaveLoadGlobalData glo.diretorioGeoSan + "/controles/variaveisGlobais.txt", True 'salva em um arquivo todas as variáveis globais para poderem ser acessadas por outras aplicações
206 206 connn = ""
... ...