Pessoal boa tarde
Novamente preciso de uma ajuda.
Eu criei um formulário onde alguns campos preciso que ele busque informações de outra tabela, e também preciso que assim que inserir dados nesse campo que ele já grave as
informações na tabela para poder buscar dados em um sub formulário pra isso criei o seguinte código abaixo, mas o que acontece ele só funciona metade do código , se eu deixo as duas partes ele da a menssagem Parêmetro insuficiente . eram esperados 1.
Se eu tiro a parte do código onde grava os dados na tabela o código tras os dados que preciso normal mas não grava , se eu tiro a parte do código onde tras os dados ele grava mas as informações da outra tabela não vem, tem uns 3 dias que estou parado aqui e não descubro onde esta o erro.
Alguém pode me ajudar?
Grato
Private Sub TXTNUMLC_CONT_AfterUpdate()
Dim dbs As Database
Dim sql As String
Dim NLC As Recordset
Dim TESTE As String
If Not IsNull(Me.TXTNUMLC_CONT) Then
Set dbs = CurrentDb
sql = "SELECT DISTINCTROW [NNumeroLCcontrato] " & _
" FROM [Cadastro Contrato] " & _
" WHERE [Cadastro Contrato]![NumeroLCcontrato] = '" & Me.TXTNUMLC_CONT & "' "
Set NLC = dbs.OpenRecordset(sql, dbOpenDynaset)
If NLC.BOF = False Then
NLC.MoveFirst
MsgBox "VOCÊ ESTÁ TENTANDO INCERIR UMA CFM QUE JÁ EXISTE!! DIGITE OUTRO NÚMERO."
Me.TXTNUMLC_CONT = Null
Me.TXTNUMLC_CONT.SetFocus
End If
NLC.Close
dbs.Close
Else
MsgBox "Você deve incerir um número de LC, para continuar.!!!"
Me.TXTNUMLC_CONT.SetFocus
End If
'======================================================================"
Dim strcriteria As String
Dim MSG As String, Style As String, Title As String
Dim EVENTORC As Boolean
NumeroLCcontrato = UCase(NumeroLCcontrato)
strcriteria = "NumeroLCcontrato= '" & Me.TXTNUMLC_CONT & "'"
If Not IsNull(DLookup("NumeroLCcontrato", "[CADASTRO DE LICITAÇÃO]", strcriteria)) Then
Me.TXTNUMLC_CONT = DLookup("[NUMERO LC]", "[CADASTRO DE LICITAÇÃO]", strcriteria)
End If
strcriteria = "NumeroLCcontrato = '" & Me.TXTNUMLC_CONT & "'"
If IsNull(DLookup("eventoCadRc", "[CADASTRO DE LICITAÇÃO]", strcriteria)) Then
eventoCadRc = True
Else
eventoCadRc = False
End If
' devolve o número
If eventoCadRc Then
If Not IsNull(DLookup("[NUMERO LC]", "[CADASTRO DE LICITAÇÃO]", strcriteria)) Then
'CADASTRO DE LICITAÇÃO
If Not IsNull(DLookup("[OBJETO DA LICITAÇÃO]", "[CADASTRO DE LICITAÇÃO]", strcriteria)) Then
ObjetoCont = DLookup("[OBJETO DA LICITAÇÃO]", "[CADASTRO DE LICITAÇÃO]", strcriteria)
End If
If Not IsNull(DLookup("Prazo", "[CADASTRO DE LICITAÇÃO]", strcriteria)) Then
PrazoCont = DLookup("Prazo", "[CADASTRO DE LICITAÇÃO]", strcriteria)
End If
If Not IsNull(DLookup("[Tipo do prazo]", "[CADASTRO DE LICITAÇÃO]", strcriteria)) Then
Tipodoprazocont = DLookup("[Tipo do prazo]", "[CADASTRO DE LICITAÇÃO]", strcriteria)
End If
If Not IsNull(DLookup("ModalidadeCadRC", "[CADASTRO DE LICITAÇÃO]", strcriteria)) Then
ModalidadeCont = DLookup("ModalidadeCadRC", "[CADASTRO DE LICITAÇÃO]", strcriteria)
End If
If Not IsNull(DLookup("[SIGLA DO PROCESSO]", "[CADASTRO DE LICITAÇÃO]", strcriteria)) Then
AreaCont = DLookup("[SIGLA DO PROCESSO]", "[CADASTRO DE LICITAÇÃO]", strcriteria)
End If
If Not IsNull(DLookup("[VALOR TOTAL ESTIMADO]", "[CADASTRO DE LICITAÇÃO]", strcriteria)) Then
[VALOR TOTAL ESTIMADO] = DLookup("[VALOR TOTAL ESTIMADO]", "[CADASTRO DE LICITAÇÃO]", strcriteria)
End If
' cadastro de processo
If Not IsNull(DLookup("COMPRADOR", "[CADASTRO DE LICITAÇÃO]", strcriteria)) Then
COMPRADOR = DLookup("COMPRADOR", "[CADASTRO DE LICITAÇÃO]", strcriteria)
End If
Else
MSG = "Atenção: Você está tentando cadastrar um Contrato com as " & _
"especificações de um Processo que não está cadastrado." & _
"@APÓS SAIR DESTA MENSAGEM (CLICANDO OK), APERTE A TECLA [ESC]." & _
"@Saia deste módulo e entre no módulo Analista para inserir " & _
"um Edital/Processo no Cadastro."
Style = vbOKOnly + vbCritical ' Define botões.
Title = "Alerta ao usuário" ' Define título.
If MsgBox(MSG, Style, Title) = vbOKOnly Then
Rollback
End If
End If
Else
MSG = "Você está tentando cadastrar um Contrato em um processo que pode estar " & _
"Suspenso, Cancelado, Anulado, Revogado ou Fracassado." & _
"@Verifique o evento do Processo." & _
"@Se for um processo Suspenso, remova o evento na tela de Cadastro de RC." & _
"Em outras situações, somente o seu Coordenador poderá alterar."
Style = vbOKOnly
Title = "Alerta ao Usuário"
If MsgBox(MSG, Style, Title) = vbOKOnly Then
Rollback
End If
End If
End Sub
Novamente preciso de uma ajuda.
Eu criei um formulário onde alguns campos preciso que ele busque informações de outra tabela, e também preciso que assim que inserir dados nesse campo que ele já grave as
informações na tabela para poder buscar dados em um sub formulário pra isso criei o seguinte código abaixo, mas o que acontece ele só funciona metade do código , se eu deixo as duas partes ele da a menssagem Parêmetro insuficiente . eram esperados 1.
Se eu tiro a parte do código onde grava os dados na tabela o código tras os dados que preciso normal mas não grava , se eu tiro a parte do código onde tras os dados ele grava mas as informações da outra tabela não vem, tem uns 3 dias que estou parado aqui e não descubro onde esta o erro.
Alguém pode me ajudar?
Grato
Private Sub TXTNUMLC_CONT_AfterUpdate()
Dim dbs As Database
Dim sql As String
Dim NLC As Recordset
Dim TESTE As String
If Not IsNull(Me.TXTNUMLC_CONT) Then
Set dbs = CurrentDb
sql = "SELECT DISTINCTROW [NNumeroLCcontrato] " & _
" FROM [Cadastro Contrato] " & _
" WHERE [Cadastro Contrato]![NumeroLCcontrato] = '" & Me.TXTNUMLC_CONT & "' "
Set NLC = dbs.OpenRecordset(sql, dbOpenDynaset)
If NLC.BOF = False Then
NLC.MoveFirst
MsgBox "VOCÊ ESTÁ TENTANDO INCERIR UMA CFM QUE JÁ EXISTE!! DIGITE OUTRO NÚMERO."
Me.TXTNUMLC_CONT = Null
Me.TXTNUMLC_CONT.SetFocus
End If
NLC.Close
dbs.Close
Else
MsgBox "Você deve incerir um número de LC, para continuar.!!!"
Me.TXTNUMLC_CONT.SetFocus
End If
'======================================================================"
Dim strcriteria As String
Dim MSG As String, Style As String, Title As String
Dim EVENTORC As Boolean
NumeroLCcontrato = UCase(NumeroLCcontrato)
strcriteria = "NumeroLCcontrato= '" & Me.TXTNUMLC_CONT & "'"
If Not IsNull(DLookup("NumeroLCcontrato", "[CADASTRO DE LICITAÇÃO]", strcriteria)) Then
Me.TXTNUMLC_CONT = DLookup("[NUMERO LC]", "[CADASTRO DE LICITAÇÃO]", strcriteria)
End If
strcriteria = "NumeroLCcontrato = '" & Me.TXTNUMLC_CONT & "'"
If IsNull(DLookup("eventoCadRc", "[CADASTRO DE LICITAÇÃO]", strcriteria)) Then
eventoCadRc = True
Else
eventoCadRc = False
End If
' devolve o número
If eventoCadRc Then
If Not IsNull(DLookup("[NUMERO LC]", "[CADASTRO DE LICITAÇÃO]", strcriteria)) Then
'CADASTRO DE LICITAÇÃO
If Not IsNull(DLookup("[OBJETO DA LICITAÇÃO]", "[CADASTRO DE LICITAÇÃO]", strcriteria)) Then
ObjetoCont = DLookup("[OBJETO DA LICITAÇÃO]", "[CADASTRO DE LICITAÇÃO]", strcriteria)
End If
If Not IsNull(DLookup("Prazo", "[CADASTRO DE LICITAÇÃO]", strcriteria)) Then
PrazoCont = DLookup("Prazo", "[CADASTRO DE LICITAÇÃO]", strcriteria)
End If
If Not IsNull(DLookup("[Tipo do prazo]", "[CADASTRO DE LICITAÇÃO]", strcriteria)) Then
Tipodoprazocont = DLookup("[Tipo do prazo]", "[CADASTRO DE LICITAÇÃO]", strcriteria)
End If
If Not IsNull(DLookup("ModalidadeCadRC", "[CADASTRO DE LICITAÇÃO]", strcriteria)) Then
ModalidadeCont = DLookup("ModalidadeCadRC", "[CADASTRO DE LICITAÇÃO]", strcriteria)
End If
If Not IsNull(DLookup("[SIGLA DO PROCESSO]", "[CADASTRO DE LICITAÇÃO]", strcriteria)) Then
AreaCont = DLookup("[SIGLA DO PROCESSO]", "[CADASTRO DE LICITAÇÃO]", strcriteria)
End If
If Not IsNull(DLookup("[VALOR TOTAL ESTIMADO]", "[CADASTRO DE LICITAÇÃO]", strcriteria)) Then
[VALOR TOTAL ESTIMADO] = DLookup("[VALOR TOTAL ESTIMADO]", "[CADASTRO DE LICITAÇÃO]", strcriteria)
End If
' cadastro de processo
If Not IsNull(DLookup("COMPRADOR", "[CADASTRO DE LICITAÇÃO]", strcriteria)) Then
COMPRADOR = DLookup("COMPRADOR", "[CADASTRO DE LICITAÇÃO]", strcriteria)
End If
Else
MSG = "Atenção: Você está tentando cadastrar um Contrato com as " & _
"especificações de um Processo que não está cadastrado." & _
"@APÓS SAIR DESTA MENSAGEM (CLICANDO OK), APERTE A TECLA [ESC]." & _
"@Saia deste módulo e entre no módulo Analista para inserir " & _
"um Edital/Processo no Cadastro."
Style = vbOKOnly + vbCritical ' Define botões.
Title = "Alerta ao usuário" ' Define título.
If MsgBox(MSG, Style, Title) = vbOKOnly Then
Rollback
End If
End If
Else
MSG = "Você está tentando cadastrar um Contrato em um processo que pode estar " & _
"Suspenso, Cancelado, Anulado, Revogado ou Fracassado." & _
"@Verifique o evento do Processo." & _
"@Se for um processo Suspenso, remova o evento na tela de Cadastro de RC." & _
"Em outras situações, somente o seu Coordenador poderá alterar."
Style = vbOKOnly
Title = "Alerta ao Usuário"
If MsgBox(MSG, Style, Title) = vbOKOnly Then
Rollback
End If
End If
End Sub