Commit 9a49006b35cdf60af2f98bbfa0c04e3f77dd5d10
1 parent
552061af
Exists in
textosRedesEsgoto
and in
1 other branch
Implementada a atribuição de cotas nas redes de esgoto. Retirado aviso da tela o…
…nde não encontra MDT para calcular cotas. Mostra aviso no GeoSanlogErro.txt
Showing
10 changed files
with
96 additions
and
28 deletions
Show diff stats
install/GeraSetupGeoSan/Codigo Gerador Instalador Geosan com TerraComponents.iss
trunk/Controles/variaveisGlobais.txt
No preview for this file type
trunk/Forms/frmMain.frm
... | ... | @@ -1014,7 +1014,7 @@ Begin VB.MDIForm FrmMain |
1014 | 1014 | Caption = "Exporta consumidores, redes, ramais e nós no formato .shp" |
1015 | 1015 | End |
1016 | 1016 | Begin VB.Menu mnuAtualizaCotas |
1017 | - Caption = "Atualiza todas as cotas de todos os nós" | |
1017 | + Caption = "Atualiza todas cotas dos nós de água e esgoto" | |
1018 | 1018 | End |
1019 | 1019 | Begin VB.Menu mnuAutoLogin |
1020 | 1020 | Caption = "Logar Automaticamente" |
... | ... | @@ -1450,11 +1450,14 @@ End Sub |
1450 | 1450 | ' |
1451 | 1451 | Private Sub mnuAtualizaCotas_Click() |
1452 | 1452 | Dim setaZs As New CAcertaZsDosNos |
1453 | + Dim setaZsNosEsgoto as New CAcertaZsDosNosEsgoto | |
1453 | 1454 | |
1454 | 1455 | varGlobais.pararExecucao = False 'indica que iniciará sem sem informar que deverá parar a execução |
1455 | 1456 | FrmMain.Timer1.Enabled = True 'habilita o timer |
1456 | - setaZs.AtribuiZs 'chama método para atualizar todas as cotas da cidade toda | |
1457 | + setaZs.AtribuiZs 'chama método para atualizar todas as cotas das redes de água da cidade toda | |
1458 | + setaZsNosEsgoto.AtribuiZs 'chama método para atualizar todas as cotas das redes de esgoto da cidade toda | |
1457 | 1459 | FrmMain.Timer1.Enabled = False 'deshabilita o timer |
1460 | + FrmMain.sbStatusBar.Panels(2).Text = "Fim dos cálculos" | |
1458 | 1461 | End Sub |
1459 | 1462 | |
1460 | 1463 | Private Sub mnuAtualizaNumCasaGps_Click() | ... | ... |
trunk/GeoSan.vbp
... | ... | @@ -140,6 +140,7 @@ Class=clsConsumidorModel; classes\clsConsumidorModel.cls |
140 | 140 | Class=clsConsumidorControler; classes\clsConsumidorControler.cls |
141 | 141 | Object={F03ABD98-7B60-43E4-9934-DA5F0D19FDAC}#1.0#0; TeComViewManager.dll |
142 | 142 | ResFile32="GeoSan.RES" |
143 | +Class=CAcertaZsDosNosEsgoto; classes\CAcertaZsDosNosEsgoto.cls | |
143 | 144 | IconForm="FrmMain" |
144 | 145 | Startup="Sub Main" |
145 | 146 | HelpFile="" | ... | ... |
trunk/GeoSan.vbw
... | ... | @@ -5,7 +5,7 @@ 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 = 16, 71, 1497, 969, C, 139, 12, 1258, 744, C |
7 | 7 | FrmAssociation = 35, 68, 1273, 637, C, 220, 220, 1339, 952, C |
8 | -FrmCadastroRamal = 63, 13, 1453, 868, Z, 45, 39, 1164, 771, C | |
8 | +FrmCadastroRamal = 63, 13, 1453, 868, C, 45, 39, 1164, 771, C | |
9 | 9 | frmCadastroRamalFiltro = 100, 100, 1246, 731, C, 264, 264, 1383, 996, C |
10 | 10 | frmCanvas = 12, 33, 1492, 898, C, 110, 110, 1229, 842, C |
11 | 11 | frmConsumidoresDesabastecidos = 110, 110, 1229, 842, C, 308, 308, 1427, 1040, C |
... | ... | @@ -84,7 +84,7 @@ CViewDatabase = 93, 254, 1219, 987, C |
84 | 84 | CDistRamalInicioTrecho = 0, 0, 0, 0, C |
85 | 85 | CCoordIniRamalDistTrecho = 0, 0, 0, 0, C |
86 | 86 | CEmail = 0, 0, 0, 0, C |
87 | -CArquivo = 0, 0, 0, 0, C | |
87 | +CArquivo = 50, 50, 1301, 607, C | |
88 | 88 | CIntBilinear = 0, 0, 0, 0, C |
89 | 89 | CObtemZdoNo = 0, 0, 0, 0, C |
90 | 90 | CAcertaZsDosNos = 125, 125, 785, 625, C |
... | ... | @@ -99,3 +99,4 @@ clsRamalModel = 225, 225, 1371, 856, C |
99 | 99 | clsRamalController = 156, 128, 1302, 759, C |
100 | 100 | clsConsumidorModel = 0, 0, 0, 0, C |
101 | 101 | clsConsumidorControler = 100, 100, 1246, 731, C |
102 | +CAcertaZsDosNosEsgoto = 48, 29, 1322, 501, | ... | ... |
trunk/Modules/Global.bas
... | ... | @@ -201,7 +201,7 @@ Public Sub Main() |
201 | 201 | End If |
202 | 202 | 'Configura a versão atual do GeoSan |
203 | 203 | Versao_Geo = App.Major & "." & App.Minor & "." & App.Revision |
204 | - Versao_Geo = "08.01.01" | |
204 | + Versao_Geo = "08.02.00" | |
205 | 205 | glo.diretorioGeoSan = App.path 'salva globalmente o caminho onde encontra-se o GeoSan.exe |
206 | 206 | SaveLoadGlobalData glo.diretorioGeoSan + "/controles/variaveisGlobais.txt", True 'salva em um arquivo todas as variáveis globais para poderem ser acessadas por outras aplicações |
207 | 207 | connn = "" | ... | ... |
trunk/Projeto_PManager4/PManager4.vbw
1 | -ClsAttributes = 88, 116, 785, 604, C | |
1 | +ClsAttributes = 113, 40, 1299, 759, C | |
2 | 2 | CItens = 402, 85, 1099, 643, C |
3 | -Manager = 158, 24, 1466, 989, , 291, 115, 996, 614, C | |
4 | -mdlQuerys = 86, 71, 1375, 940, C | |
3 | +Manager = 16, 13, 1449, 841, , 291, 115, 996, 614, C | |
4 | +mdlQuerys = 90, 2, 1379, 871, | ... | ... |
trunk/classes/CAcertaZsDosNos.cls
... | ... | @@ -29,22 +29,12 @@ Public Sub AtribuiZs() |
29 | 29 | Dim yNo As Double |
30 | 30 | Dim objIdNo As String |
31 | 31 | Dim zNo As Double |
32 | - Dim diretorio As String 'Diretório onde será salva a exportação das cotas calculadas para conferir a anterior com a nova | |
33 | 32 | Dim retorno As Boolean |
34 | - Dim arquivoExportacao As String 'nome do arquivo junto com o diretório onde serão exportadas as cotas para conferência | |
35 | 33 | Dim zNoStr As String 'coordenada Z do no convertida para string. Isso para tratar a virgula que o SQL nao permite no UPDATE |
36 | 34 | |
37 | - diretorio = arquivo.SelecionaDiretorio | |
38 | - If diretorio = "falhou" Then | |
39 | - Screen.MousePointer = vbNormal | |
40 | - Exit Sub | |
41 | - End If | |
42 | 35 | Screen.MousePointer = vbHourglass |
43 | 36 | Set RSNos = New ADODB.Recordset |
44 | 37 | RSNos.Open "Select x, y, object_id from Points2", Conn, adOpenKeyset, adLockOptimistic |
45 | - arquivoExportacao = diretorio & "\GeoSan_atualização_cotas.txt" | |
46 | - Open arquivoExportacao For Output As #10 'Abre o arquivo novo | |
47 | - Close #10 | |
48 | 38 | retorno = cGeoDatabase.geoDatabase.setCurrentLayer("mdt") 'ativa o layer do MDT |
49 | 39 | If retorno = False Then |
50 | 40 | Screen.MousePointer = vbNormal |
... | ... | @@ -65,16 +55,12 @@ Public Sub AtribuiZs() |
65 | 55 | RSNos.MoveNext |
66 | 56 | Set rsAtributoNos = New ADODB.Recordset |
67 | 57 | rsAtributoNos.Open "SELECT GROUNDHEIGHT FROM WATERCOMPONENTS WHERE OBJECT_ID_ = " & objIdNo, Conn, adOpenKeyset, adLockOptimistic |
68 | - Open arquivoExportacao For Append As #10 | |
69 | - Print #10, objIdNo & " , " & xNo & " , " & yNo & " , " & rsAtributoNos.Fields("GROUNDHEIGHT").value & " , " & CStr(zNo) | |
70 | - Close #10 | |
71 | - FrmMain.sbStatusBar.Panels(2).Text = "Z nó " & objIdNo & " calculado = " & zNo | |
58 | + FrmMain.sbStatusBar.Panels(2).Text = " Z nó água " & objIdNo & " calculado = " & zNo & " " | |
72 | 59 | rsAtributoNos.Close |
73 | 60 | zNoStr = CStr(zNo) 'converte a cota do no para string para poder atualizar no SQL como ponto |
74 | 61 | zNoStr = Replace(zNoStr, ",", ".") 'troca a vírgula por ponto |
75 | 62 | Conn.execute "UPDATE WATERCOMPONENTS SET GROUNDHEIGHT = " & zNoStr & " WHERE OBJECT_ID_ = " & objIdNo |
76 | 63 | Loop |
77 | - Close #10 | |
78 | 64 | Screen.MousePointer = vbNormalObtemZ |
79 | 65 | Exit Sub |
80 | 66 | |
... | ... | @@ -83,7 +69,7 @@ Trata_Erro: |
83 | 69 | Resume Next |
84 | 70 | Else |
85 | 71 | Screen.MousePointer = vbNormal |
86 | - ErroUsuario.Registra "CAcertaZsDosNos", "AtribuiZs", CStr(Err.Number), CStr(Err.Description), True, glo.enviaEmails | |
72 | + ErroUsuario.Registra "CAcertaZsDosNos", "AtribuiZs", CStr(Err.Number), CStr(Err.Description), False, False | |
87 | 73 | End If |
88 | 74 | End Sub |
89 | 75 | ... | ... |
... | ... | @@ -0,0 +1,77 @@ |
1 | +VERSION 1.0 CLASS | |
2 | +BEGIN | |
3 | + MultiUse = -1 'True | |
4 | + Persistable = 0 'NotPersistable | |
5 | + DataBindingBehavior = 0 'vbNone | |
6 | + DataSourceBehavior = 0 'vbNone | |
7 | + MTSTransactionMode = 0 'NotAnMTSObject | |
8 | +END | |
9 | +Attribute VB_Name = "CAcertaZsDosNosEsgoto" | |
10 | +Attribute VB_GlobalNameSpace = False | |
11 | +Attribute VB_Creatable = True | |
12 | +Attribute VB_PredeclaredId = False | |
13 | +Attribute VB_Exposed = False | |
14 | +' Classe responsável por acertar todos os z's dos nós das redes de água | |
15 | +' | |
16 | +' | |
17 | +' | |
18 | + | |
19 | +Private getZNo As New CObtemZdoNo | |
20 | +' Subrotina que atribui a cota Z a todos os nós das redes | |
21 | +' | |
22 | +' | |
23 | +' | |
24 | +Public Sub AtribuiZs() | |
25 | + On Error GoTo Trata_Erro | |
26 | + Dim RSNos As ADODB.Recordset | |
27 | + Dim rsAtributoNos As ADODB.Recordset | |
28 | + Dim xNo As Double | |
29 | + Dim yNo As Double | |
30 | + Dim objIdNo As String | |
31 | + Dim zNo As Double | |
32 | + Dim retorno As Boolean | |
33 | + Dim zNoStr As String 'coordenada Z do no convertida para string. Isso para tratar a virgula que o SQL nao permite no UPDATE | |
34 | + | |
35 | + Screen.MousePointer = vbHourglass | |
36 | + Set RSNos = New ADODB.Recordset | |
37 | + RSNos.Open "Select x, y, object_id from Points4", Conn, adOpenKeyset, adLockOptimistic | |
38 | + arquivoExportacao = diretorio & "\GeoSan_atualização_cotas_esgoto.txt" | |
39 | + retorno = cGeoDatabase.geoDatabase.setCurrentLayer("mdt") 'ativa o layer do MDT | |
40 | + If retorno = False Then | |
41 | + Screen.MousePointer = vbNormal | |
42 | + MsgBox ("É necesário antes de iniciar esta operação abrir uma vista do mapa.") | |
43 | + Exit Sub | |
44 | + End If | |
45 | + Do While RSNos.EOF = False | |
46 | + DoEvents 'para o VB poder escutar o timer e poder parar o processamento caso a tecla ESC tenha sido pressionada | |
47 | + If varGlobais.pararExecucao = True Then | |
48 | + varGlobais.pararExecucao = False | |
49 | + Screen.MousePointer = vbNormal | |
50 | + Exit Sub | |
51 | + End If | |
52 | + xNo = RSNos("x").value | |
53 | + yNo = RSNos("y").value | |
54 | + objIdNo = RSNos("object_id").value | |
55 | + zNo = getZNo.ObtemZ(xNo, yNo, objIdNo) | |
56 | + RSNos.MoveNext | |
57 | + Set rsAtributoNos = New ADODB.Recordset | |
58 | + rsAtributoNos.Open "SELECT GROUNDHEIGHT FROM SEWERCOMPONENTS WHERE OBJECT_ID_ = " & objIdNo, Conn, adOpenKeyset, adLockOptimistic | |
59 | + FrmMain.sbStatusBar.Panels(2).Text = " Z nó esgoto " & objIdNo & " calculado = " & zNo & " " | |
60 | + rsAtributoNos.Close | |
61 | + zNoStr = CStr(zNo) 'converte a cota do no para string para poder atualizar no SQL como ponto | |
62 | + zNoStr = Replace(zNoStr, ",", ".") 'troca a vírgula por ponto | |
63 | + Conn.execute "UPDATE SEWERCOMPONENTS SET GROUNDHEIGHT = " & zNoStr & " WHERE OBJECT_ID_ = " & objIdNo | |
64 | + Loop | |
65 | + Screen.MousePointer = vbNormalObtemZ | |
66 | + Exit Sub | |
67 | + | |
68 | +Trata_Erro: | |
69 | + If Err.Number = 0 Or Err.Number = 20 Then | |
70 | + Resume Next | |
71 | + Else | |
72 | + Screen.MousePointer = vbNormal | |
73 | + ErroUsuario.Registra "CAcertaZsDosNosEsgoto", "AtribuiZs", CStr(Err.Number), CStr(Err.Description), False, False | |
74 | + End If | |
75 | +End Sub | |
76 | + | |
77 | + | ... | ... |
trunk/classes/CObtemZdoNo.cls
... | ... | @@ -140,7 +140,7 @@ Public Function ObtemZ(xNo As Double, yNo As Double, object_Id_No As String) As |
140 | 140 | 'obtem agora as cotas dos 4 pontos do MDT |
141 | 141 | mensagemDeErro = mensagemDeErro + "Nó com obj_id = " & object_Id_No & " coord. x = " & CStr(Round(xNo, 2)) & " coord. y = " & CStr(Round(yNo, 2)) & "MDT com obj_ids: ObjId1 = " & idObjPonto1 & ", ObjId2 = " & idObjPonto2 & ", ObjId3 = " & idObjPonto3 & ", ObjId4 = " & idObjPonto4 |
142 | 142 | If idObjPonto1 = Null Or idObjPonto2 = Null Or idObjPonto3 = Null Or idObjPonto4 = Null Then 'verifica se ele encontrou os nós do MDT, pois se não encontra não adianta realizar o cálculo |
143 | - ErroUsuario.Registra "CObtemZdoNo", "ObtemZ", CStr(Err.Number), CStr(Err.Description), False, glo.enviaEmails, mensagemDeErro 'não exibe mensagem para o usuário | |
143 | + ErroUsuario.Registra "CObtemZdoNo", "ObtemZ", CStr(Err.Number), CStr(Err.Description), False, False, mensagemDeErro 'não exibe mensagem para o usuário | |
144 | 144 | ObtemZ = 0 'retorna sem calcular a cota Z |
145 | 145 | Else 'encontrou |
146 | 146 | rs.Open "SELECT * from MDT where " & nomeColunaObjIdMdt & " = " & idObjPonto1, Conn, adOpenKeyset, adLockOptimistic |
... | ... | @@ -176,7 +176,7 @@ Trata_Erro: |
176 | 176 | If Err.Number = 0 Or Err.Number = 20 Then |
177 | 177 | Resume Next |
178 | 178 | Else |
179 | - ErroUsuario.Registra "CObtemZdoNo", "ObtemZ", CStr(Err.Number), CStr(Err.Description), True, glo.enviaEmails, mensagemDeErro | |
179 | + ErroUsuario.Registra "CObtemZdoNo", "ObtemZ", CStr(Err.Number), CStr(Err.Description), False, False, mensagemDeErro | |
180 | 180 | End If |
181 | 181 | End Function |
182 | 182 | ' Obtem o z de um nó a partir do Object_id do nó |
... | ... | @@ -214,6 +214,6 @@ Trata_Erro: |
214 | 214 | If Err.Number = 0 Or Err.Number = 20 Then |
215 | 215 | Resume Next |
216 | 216 | Else |
217 | - ErroUsuario.Registra "CObtemZdoNo", "CObtemZFromObjIdNo", CStr(Err.Number), CStr(Err.Description), True, glo.enviaEmails | |
217 | + ErroUsuario.Registra "CObtemZdoNo", "CObtemZFromObjIdNo", CStr(Err.Number), CStr(Err.Description), False, False | |
218 | 218 | End If |
219 | 219 | End Function | ... | ... |