LER O CAPTION DE UM FORMULARIO DO ACCESS, SEM ABRI

MARCOSLING 16/11/2009 10:45:55
#327817
Você não pode envia uma atualização cadastrando esse objeto?
já que você tem as informações, não vejo pq acessar o objeto
LUCIANORW 16/11/2009 11:43:11
#327828
Marcos,
Eu até pensei em fazer isso, mas ai eu tenho que ficar colocando em uma rotina todos os novos objetos que crio antes de mandar a atualização.
Veja abaixo o teste que estou fazendo.
[]s
Luciano


Function cadastraforms()
Dim frm As Form
Set tbl = CurrentDb.OpenRecordset([Ô]SELECT MSysObjects.Type, MSysObjects.Name, MSysObjects.Name AS vnome_obj, Left([name],3) AS vnome [Ô] & _
[Ô]FROM MSysObjects [Ô] & _
[Ô]WHERE (((MSysObjects.Type)=-32768) AND ((Left([name],3))=[ô]frm[ô])) [Ô] & _
[Ô]ORDER BY MSysObjects.Name;[Ô])
If tbl.EOF = False Then
tbl.MoveLast
tbl.MoveFirst
qtde = tbl.RecordCount
For i = 1 To qtde
Set tbl1 = CurrentDb.OpenRecordset([Ô]SELECT * [Ô] & _
[Ô]FROM tbl_cad_usuario_permissoes [Ô] & _
[Ô]WHERE (((tbl_cad_usuario_permissoes.nomesistema)=[ô][Ô] & tbl!vnome_obj & [Ô][ô]));[Ô])
If tbl1.EOF = False Then
novo_objeto = True
txt = [Ô]form_[Ô] & tbl!Name
[ô]DoCmd.OpenForm tbl!Name, acDesign
[ô]Set frm = Forms(tbl!Name)
[ô]With frm
[ô]txt = frm.Caption
[ô]End With
[ô]DoCmd.Close acForm, tbl!Name
[ô]Set tbl2 = CurrentDb.OpenRecordset([Ô]tbl_cad_usuario_permissoes[Ô])
With tbl1
.AddNew
!tipo = [Ô]Formulário[Ô]
!nomesistema = tbl!Name
!nomeusuario = txt
!nivel_4 = True
!nivel_5 = True
.Update
End With
tbl1.Close
Set tbl1 = Nothing
End If
[ô]tbl1.Close
[ô]Set tbl1 = Nothing
tbl.MoveNext
Next i
End If
tbl.Close
Set tbl = Nothing
CurrentDb.Close
End Function
LUCIANORW 16/11/2009 11:45:25
#327830
Abaixo é que estou tentando pegar o caption:
txt = [Ô]form_[Ô] & tbl!Name
ficaria assim:
txt = [Ô]form_[Ô] & tbl!Name.caption
Mas não aceita.
Luciano
MARCOSLING 16/11/2009 13:11:07
#327842
Em minhas aplicações em vb, eu faço controle de versão.

Eu faço uma rotina de atualização acumulativa (estrutura de tabela, atualização de dados, controle de acesso, etc), uma espécie de [ô]service pack[ô].

Então, independente da versão que o cliente tenha, quando o sistema é executado, o [ô]service pack[ô] do sistema faz uma atualização a partir da versão do cliente até chegar na versão atual.

Ao meu ver, a sua rotina apenas deixa o processo mais cômodo.
LUCIANORW 16/11/2009 17:34:40
#327886
Pois é Marcos,
Mas apesar de todos os esforços, realmente do jeito que queria não tem como.
Valeu pela atenção!!!
[]s
Luciano
Página 2 de 2 [15 registro(s)]
Tópico encerrado , respostas não são mais permitidas