FORM NAO APARECE
Amigos bom dia.
Criei um form novo para meu sistema, aparentemente tudo igual a todos os outros, porém no cliente ele não aparece de modo algum. Já não sei o que fazer, aqui funciona. outros cliente não reclamaram, mas nesse vimos que não abre e sem motivo aparente.
A chamada a ele pelo form mid é
Isso faz apenas checar se já existe um form aberto, para impedir abrir outro, tica o menu e chama o form.
No load está assim:
Alguém teria alguma ideia do porque não abre exibe o form?
Não gera erro e não trava o sistema, só não exibe.
As rotinas todas são usadas em outros forms sem problema. O resto do sistema funciona normalmente.
Criei um form novo para meu sistema, aparentemente tudo igual a todos os outros, porém no cliente ele não aparece de modo algum. Já não sei o que fazer, aqui funciona. outros cliente não reclamaram, mas nesse vimos que não abre e sem motivo aparente.
A chamada a ele pelo form mid é
Private Sub menuConsultaAvaliacoesPorAvaliador_Click()
If Not bAtivo Then
sTitulo = [Ô]Consulta Avaliações Realizadas[Ô]
Set oItemMenu = frmAmbiente.menuConsultaAvaliacoesPorAvaliador
bAtivo = True
oItemMenu.Checked = True
frmConsultaAvaliacaoPeloAvaliador.Show
Else
FormAberto
End If
End Sub
Isso faz apenas checar se já existe um form aberto, para impedir abrir outro, tica o menu e chama o form.
No load está assim:
rivate Sub Form_Load()
10 On Error GoTo Form_Load
20 frmAmbiente.MousePointer = 11
30 strNomeFormMod = Me.Name
[ô]# Inclui bordas em controles nativos
40 AplicaBorda Me
[ô]# fim
50 Me.Height = 7050
60 fraAjuda.Top = 0
70 fraAjuda.Left = 0
80 CentralizaForm Me
[ô]*** Variáveis usadas para carregar comboBox com Anos dos PADs criados
Dim SearchPath As String, FindStr As String
Dim FileSize As Long
Dim NumFiles As Integer, NumDirs As Integer
Dim bTeste As Boolean
[ô]*** Fim variáveis ****
[ô]*** Montando estrutura para povoar combo com Ano ***
90 Set rsAnos = New ADODB.Recordset
100 rsAnos.Fields.Append [Ô]cmpANO[Ô], adChar, 4, adFldMayBeNull
110 rsAnos.ActiveConnection = Nothing
120 rsAnos.CursorLocation = adUseClient
130 rsAnos.Open
[ô]*** fim estrutura ***
[ô]#Incluindo semestres na combo
140 cboSemestre.AddItem [Ô]1º S[Ô]
150 cboSemestre.AddItem [Ô]2º S[Ô]
160 cboSemestre.AddItem [Ô]Jan[Ô]
170 cboSemestre.AddItem [Ô]Fev[Ô]
180 cboSemestre.AddItem [Ô]Mar[Ô]
190 cboSemestre.AddItem [Ô]Abr[Ô]
200 cboSemestre.AddItem [Ô]Mai[Ô]
210 cboSemestre.AddItem [Ô]Jun[Ô]
220 cboSemestre.AddItem [Ô]Jul[Ô]
230 cboSemestre.AddItem [Ô]Ago[Ô]
240 cboSemestre.AddItem [Ô]Set[Ô]
250 cboSemestre.AddItem [Ô]Out[Ô]
260 cboSemestre.AddItem [Ô]Nov[Ô]
270 cboSemestre.AddItem [Ô]Dez[Ô]
280 If frmAmbiente.menuEfeitos.Checked Then
290 PassAltura = Me.Height
300 PassLargura = Me.Width
310 Me.Height = 0
320 Me.Width = 0
330 Else
340 PassAltura = 0
350 End If
360 Status [Ô]Módulo - [Ô] & sTitulo & [Ô] iniciado para trabalho.[Ô]
370 Set cmdFechar.Picture = frmAmbiente.imgBT.ListImages(7).Picture
380 Set cmdLocalizar.MouseIcon = cmdFechar.MouseIcon
390 Set cboSemestre.MouseIcon = cmdFechar.MouseIcon
400 Set cboAno.MouseIcon = cmdFechar.MouseIcon
410 Image2.Picture = frmAmbiente.imgBT.ListImages(11).Picture [ô]ajuda
420 With FlexAtitudes [ô] *** relação de Atitudes ***
430 .Cols = 3
440 .Rows = 1
450 .Row = 0
460 i = 0
470 .Col = i
480 .ColWidth(i) = 0
[ô]IDAtitude
490 i = 1
500 .Col = i
510 .CellFontBold = True
520 .FixedAlignment(i) = flexAlignLeftTop
530 .ColAlignment(i) = flexAlignLeftCenter
540 .ColWidth(i) = 3450
550 .Text = [Ô]Atitudes[Ô]
560 i = 2
570 .Col = i
580 .CellFontBold = True
590 .FixedAlignment(i) = flexAlignCenterTop
600 .ColAlignment(i) = flexAlignCenterCenter
610 .ColWidth(i) = 600
620 .Text = [Ô]Nota[Ô]
630 End With
640 With FlexHabilidades [ô] *** relação de habilidades ***
650 .Cols = 3
660 .Rows = 1
670 .Row = 0
680 i = 0
690 .Col = i
700 .ColWidth(i) = 0
[ô]IDHabilidade
710 i = 1
720 .Col = i
730 .CellFontBold = True
740 .FixedAlignment(i) = flexAlignLeftTop
750 .ColAlignment(i) = flexAlignLeftCenter
760 .ColWidth(i) = 3450
770 .Text = [Ô]Habilidades[Ô]
780 i = 2
790 .Col = i
800 .CellFontBold = True
810 .FixedAlignment(i) = flexAlignCenterTop
820 .ColAlignment(i) = flexAlignCenterCenter
830 .ColWidth(i) = 600
840 .Text = [Ô]Nota[Ô]
850 End With
[ô] *** Grid Notas para armazenar nota de cada pergunta do iten,
860 With GridNotasPorPerguntas
870 .Cols = 6
880 .Rows = 1
890 .Row = 0
[ô].RowHeight(0) = 0
900 i = 0
910 .Col = i
920 .CellFontBold = True
930 .FixedAlignment(i) = flexAlignCenterTop
940 .ColAlignment(i) = flexAlignCenterCenter
950 .ColWidth(i) = 850
960 .Text = [Ô]Nº[Ô]
[ô]cmpID (autonumeração) nas inclusões fica em branco nas edições/consultas tem o ID
970 i = 1
980 .Col = i
990 .ColWidth(i) = 0
[ô] .Text = [Ô]ID Avaliação[Ô]
1000 i = 2
1010 .Col = i
1020 .ColWidth(i) = 0
[ô] .Text = [Ô]Tipo[Ô] [ô]cmpTIPO (0=Atitude ou 1=Habilidade)
1030 i = 3
1040 .Col = i
1050 .ColWidth(i) = 0
[ô] .Text = [Ô]ID ITEM[Ô]
1060 i = 4
1070 .Col = i
1080 .ColWidth(i) = 0 [ô]6000
[ô] .Text = [Ô]Pergunta[Ô] [ô]cmpPergunta
1090 i = 5
1100 .Col = i
1110 .ColWidth(i) = 0 [ô]600
[ô] .Text = [Ô]Nota[Ô] [ô]cmpNOTA
1120 End With
1130 If Conectar Then
1140 Set rsAvaliador = New ADODB.Recordset
1150 rsAvaliador.CursorLocation = adUseClient
1160 rsAvaliador.Open [Ô]SELECT cmpID,cmpNome FROM tabColaboradores WHERE cmpID <> 1 ORDER BY cmpNome asc;[Ô], cn, adOpenStatic, adLockReadOnly, adCmdTableDirect
1170 Set rsAvaliador.ActiveConnection = Nothing
1180 Set cboAvaliador.DataSource = Nothing
1190 cboAvaliador.BoundColumn = [Ô]cmpID[Ô]
1200 cboAvaliador.ListField = [Ô]cmpNome[Ô]
1210 Set cboAvaliador.RowSource = rsAvaliador
1220 cboAvaliador.Refresh
1230 Else
1240 MeuAlerta msgSemConexao, Critico
1250 End If
1260 If ConectarDB(sMeuDBCompetencias) Then
[ô]Nova rotina para povoar ComboBox com os Anos dos PADs Criados
1270 bTeste = False
1280 SearchPath = sConfigPathPAD
1290 Do While Not bTeste
1300 If Right(SearchPath, 1) = [Ô]\[Ô] Then
1310 bTeste = True
1320 End If
1330 SearchPath = Mid(SearchPath, 1, Len(SearchPath) - 1)
1340 Loop
1350 FindStr = [Ô]dbPAD2*.hci[Ô]
1360 FileSize = FindFilesAPI(SearchPath, FindStr, NumFiles, NumDirs, Me, False)
[ô]passando dados anos ao novo sComboBox
1370 If Not rsAnos.EOF Then
1380 rsAnos.MoveFirst
1390 For i = 1 To rsAnos.RecordCount
1400 cboAno.AddItem rsAnos!cmpANO
1410 rsAnos.MoveNext
1420 Next i
1430 End If
[ô]fim combo novo
1440 Else
1450 MeuAlerta msgSemConexao, Critico
1460 DesativaProgressBar
1470 Desconectar
1480 FinalizaRst rs2
1490 FinalizaRst rsAnos
1500 DesConectarDB
1510 frmAmbiente.MousePointer = 0
1520 On Error GoTo 0
1530 Unload Me
1540 Exit Sub
1550 End If
1560 cboAvaliador.BoundText = UsuarioID [ô]define colaborador como avaliador
1570 With GridNotasPorPerguntas
[ô]tira seleção amarela na última célula grid
1580 .AllowBigSelection = False
1590 .Highlight = flexHighlightNever
1600 End With
1610 Call SkinFlexgrid(FlexHabilidades, mySkinConfig)
1620 Call SkinFlexgrid(FlexAtitudes, mySkinConfig)
1630 Call SkinFlexgrid(GridNotasPorPerguntas, mySkinConfig)
1640 Status [Ô]Carregamento Completo.[Ô]
Saida:
1650 DesativaProgressBar
1660 Desconectar
1670 FinalizaRst rs2
1680 FinalizaRst rs3
1690 FinalizaRst rsAnos
1700 DesConectarDB
1710 DesConectarDB2
1720 frmAmbiente.MousePointer = 0
1730 On Error GoTo 0
1740 Exit Sub
Form_Load:
1750 If OutPutErr(strNomeFormMod, [Ô]Form_Load[Ô], Erl, Err.Number, Err.Description, descErro) = False Then
1760 MeuAlerta sMsgErro, Critico
1770 End If
1780 Resume Saida
End Sub
Alguém teria alguma ideia do porque não abre exibe o form?
Não gera erro e não trava o sistema, só não exibe.
As rotinas todas são usadas em outros forms sem problema. O resto do sistema funciona normalmente.
Luiz se você ja não fez isso claro, faça o seguinte comente todos tratamentos de erros, ou seja todos on error goto deste form ou do form chamador, para ver se o erro não está sendo camuflado.
Marcelo pra fazer isso vai ser complicado, pois não tenho acesso ao sistema. Terei de esperar minha sócia ir até este cliente, próxima semana, para fazer isso, pois terei de compilar uma versão para esse teste e enviar para substituir.
O estranho é que se ocorre erro ele é capturado pelo programa e enviado automaticamente para meu email, agora ocorrer um erro e não ser disparado é complicado.
O mais estranho é que no nos micros isso não ocorre, abre tanto no Seven quanto no XP.
O estranho é que se ocorre erro ele é capturado pelo programa e enviado automaticamente para meu email, agora ocorrer um erro e não ser disparado é complicado.
O mais estranho é que no nos micros isso não ocorre, abre tanto no Seven quanto no XP.
uma coisa que me deixa meio desconfiado é o fato de você colocar o nome da linha de tratamento de erros igual ao evento do form
ou seja
Pivate Sub [txt-color=#e80000]Form_Load()[/txt-color]
10 On Error GoTo [txt-color=#e80000]Form_Load[/txt-color]
bla bla bla bla
[txt-color=#e80000]Form_Load:[/txt-color]
não sei se isso influencia porém nunca se sabe né
ou seja
Pivate Sub [txt-color=#e80000]Form_Load()[/txt-color]
10 On Error GoTo [txt-color=#e80000]Form_Load[/txt-color]
bla bla bla bla
[txt-color=#e80000]Form_Load:[/txt-color]
não sei se isso influencia porém nunca se sabe né
Concordo com você, pois há coisas que aparentemente não deveriam causar problemas, mas causam.
Porém nesse caso não acredito, uma vez que outro form igual a este com mesma funcionalidade, só que usado para entrada de dados para outros funcionários, também está assim e funciona, além de vários outros métodos.
Isso inclusive é o padrão do componente MZ-Tools que cria a estrutura dos eventos dessa forma por padrão. Por isso em alguns código está assim e em outros uso sempre o rótulo Falha para identificar a para do desvio para o erro.
Obrigado, por desencargo troquei também kkkk, mas não acredito que seja isso e semana que vem vou fazer o teste comentando o tratamento de erro.
Porém nesse caso não acredito, uma vez que outro form igual a este com mesma funcionalidade, só que usado para entrada de dados para outros funcionários, também está assim e funciona, além de vários outros métodos.
Isso inclusive é o padrão do componente MZ-Tools que cria a estrutura dos eventos dessa forma por padrão. Por isso em alguns código está assim e em outros uso sempre o rótulo Falha para identificar a para do desvio para o erro.
Obrigado, por desencargo troquei também kkkk, mas não acredito que seja isso e semana que vem vou fazer o teste comentando o tratamento de erro.
Tópico encerrado , respostas não são mais permitidas