Boa noite a todos. Uso versão Access 2003 - Windows XP
Fiz buscas no Fórum e encontrei alguns tópicos do assunto que ajudaram, mas não consegui resolver toda a questão que é:
Na rotina abaixo ** Numerei as linhas para melhor explicação adiante
01 - Private Sub Status_AfterUpdate()
02 - Me!StatusNome = Status.Column(1)
03 - Me.IDRecebedor.SetFocus
04 -
05 - On Error GoTo Err_Status_Click
06 -
07 - CurrentDb.Execute "UPDATE T33_OrdemBusca set [T33_OrdemBusca].[Status] =" & Me.Status & " WHERE CodOB = " & Me.IDOrdem & ";"
08 -
09 - CurrentDb.Execute "UPDATE T33_OrdemBusca set [T33_OrdemBusca].[StatusNome] =" & Me.StatusNome & " WHERE CodOB = " & Me.IDOrdem & ";"
10 -
11 - DoCmd.DoMenuItem acFormBar, acRecordsMenu, acSaveRecord, , acMenuVer70
12 -
13 - MsgBox "Registo Atualizado com Sucesso na Tabela de ORDEM DE BUSCA ...", vbInformation
14 -
15 - Exit_Status_Click:
16 - Exit Sub
17 -
18 - Err_Status_Click:
19 -
20 - Resume Exit_Status_Click
21 - End Sub
• Tenho 02 Tabelas usadas com seus respectivos Formulários e Campos usados nesta questão:
a) T33_OrdemBusca – Formulário: F33_OrdemBusca – Campo: Status (Tipo Texto) e StatusNome (Tipo Texto)
b) T42_RELAG – Formulário: F42_RELAG – Campo: Status (Tipo Texto) e StatusNome (Tipo Texto)
c) Minha intenção é quando no Formulário F42_RELAG após atualizar o campo “Status” que é uma Caixa de Combinação que tem 03 códigos com as situações: 1: Em andamento; 2: Resolvido parcialmente; 3: Resolvido integralmente. Quando atualizo este campo o mesmo atualiza para o campo “StatusNome” o texto que se segue ao número correspondente, por exemplo, se escolho o código 3, no campo StatusNome fica “Resolvido integralmente”, neste mesmo Formulário, conforme linha 02 da rotina acima;
d) Na linha 07 da rotina acima, consegui atualizar o campo “Status” usado no Formulário: F42_RELAG para o Formulário: F33_OrdemBusca, no entanto, na linha 09 que justamente é o texto do campo “StatusNome” não acontece nada, ou seja, não atualiza no Formulário F33_OrdemBusca;
e) Quando testei apenas com a linha 07 funcionou perfeitamente, inclusive mostrando a mensagem da linha 13, quando coloquei a linha 09, não funcionou esta linha, e nem mostrou a mensagem da linha 13, mas funciona apenas a linha 07, sem mostrar a mensagem já citada.
f) Observação: Nas Linhas 07 e 09 o Campo “CodOB” (Tabela: T33 - Autonumeracao) e “IDOrdem” (Tabela: 42 - Número) são os campos que identificam entre si os registros correspondentes e relacionados.
Em resumo: quero atualizar os campos "Status" e "StatusNome" do Formulário F42 para o Formulário F33, no evento “após atualizar” do 1º Formulário, respectivamente, consequentemente atualizando na tabela correspondente, então o que faltou eu fazer, visto que apenas consegui atualizar apenas 1 campo?
Fiz buscas no Fórum e encontrei alguns tópicos do assunto que ajudaram, mas não consegui resolver toda a questão que é:
Na rotina abaixo ** Numerei as linhas para melhor explicação adiante
01 - Private Sub Status_AfterUpdate()
02 - Me!StatusNome = Status.Column(1)
03 - Me.IDRecebedor.SetFocus
04 -
05 - On Error GoTo Err_Status_Click
06 -
07 - CurrentDb.Execute "UPDATE T33_OrdemBusca set [T33_OrdemBusca].[Status] =" & Me.Status & " WHERE CodOB = " & Me.IDOrdem & ";"
08 -
09 - CurrentDb.Execute "UPDATE T33_OrdemBusca set [T33_OrdemBusca].[StatusNome] =" & Me.StatusNome & " WHERE CodOB = " & Me.IDOrdem & ";"
10 -
11 - DoCmd.DoMenuItem acFormBar, acRecordsMenu, acSaveRecord, , acMenuVer70
12 -
13 - MsgBox "Registo Atualizado com Sucesso na Tabela de ORDEM DE BUSCA ...", vbInformation
14 -
15 - Exit_Status_Click:
16 - Exit Sub
17 -
18 - Err_Status_Click:
19 -
20 - Resume Exit_Status_Click
21 - End Sub
• Tenho 02 Tabelas usadas com seus respectivos Formulários e Campos usados nesta questão:
a) T33_OrdemBusca – Formulário: F33_OrdemBusca – Campo: Status (Tipo Texto) e StatusNome (Tipo Texto)
b) T42_RELAG – Formulário: F42_RELAG – Campo: Status (Tipo Texto) e StatusNome (Tipo Texto)
c) Minha intenção é quando no Formulário F42_RELAG após atualizar o campo “Status” que é uma Caixa de Combinação que tem 03 códigos com as situações: 1: Em andamento; 2: Resolvido parcialmente; 3: Resolvido integralmente. Quando atualizo este campo o mesmo atualiza para o campo “StatusNome” o texto que se segue ao número correspondente, por exemplo, se escolho o código 3, no campo StatusNome fica “Resolvido integralmente”, neste mesmo Formulário, conforme linha 02 da rotina acima;
d) Na linha 07 da rotina acima, consegui atualizar o campo “Status” usado no Formulário: F42_RELAG para o Formulário: F33_OrdemBusca, no entanto, na linha 09 que justamente é o texto do campo “StatusNome” não acontece nada, ou seja, não atualiza no Formulário F33_OrdemBusca;
e) Quando testei apenas com a linha 07 funcionou perfeitamente, inclusive mostrando a mensagem da linha 13, quando coloquei a linha 09, não funcionou esta linha, e nem mostrou a mensagem da linha 13, mas funciona apenas a linha 07, sem mostrar a mensagem já citada.
f) Observação: Nas Linhas 07 e 09 o Campo “CodOB” (Tabela: T33 - Autonumeracao) e “IDOrdem” (Tabela: 42 - Número) são os campos que identificam entre si os registros correspondentes e relacionados.
Em resumo: quero atualizar os campos "Status" e "StatusNome" do Formulário F42 para o Formulário F33, no evento “após atualizar” do 1º Formulário, respectivamente, consequentemente atualizando na tabela correspondente, então o que faltou eu fazer, visto que apenas consegui atualizar apenas 1 campo?
Última edição por vileman em 18/11/2011, 20:53, editado 2 vez(es) (Motivo da edição : Indicar Versao do Access)