Boa tarde,
gostaria de fazer um delete IDLotacao na tabela de lotação quando na mesma tabela o IDLotacao fosse diferente do IDLotacaoPai e IDUorgAgrupadora.
exp:
IDLotacaoPai lotacao IDUorgPai IDUorgAgrupadora1
1 GABINETE DO MINISTRO 431 431
362 COORDENAÇÃOGERAL DE APOIO ADMINISTRAT 1 1
363 COORDENAÇÃO/CGAA/GM 362 362
364 DIVISÃO/COORD/CGAA/GM 363 362
365 COORDENAÇÃO/CGAA/GM 362 362
o IDLotacaoPai 364 em negrito não existe na coluna IDUorgPai e nem na IDUorgAgrupadora1 em nenhuma posição. O meu while consiste nisso quando o IDLotacaoPai não existir na colunas IDUorgPai e nem na IDUorgAgrupadora1 em nenhuma posição é executado o delete do registro em questão.
eis o meu código:
Dim var1 As String
Dim var2 As String
Dim var3 As String
'Busca informações na TBFolha_Pagamento para o usuário não inserir a mesma informação
var1 = DLookup("[IDLotacaoPai]", "TBLotacaoPai")
'Tratamento de erro
On Error GoTo ErrHandle
'Abre um recordset
Set RsFolha = CurrentDb.OpenRecordset("TBLotacaoPai")
'Laço para ir de registro em registro, listando todos os estagiários da tabela.
While Not RsFolha.EOF
'Busca informções na tabela para inserir na tabela de folha de pagamento -----------
var2 = RsFolha.Fields("IDUorgPai")
var3 = RsFolha.Fields("IDUorgAgrupadora1")
'Delete
CurrentDb.Execute "delete * from TBLotacaoPai where var1 <> var2 and var1 <> var3"
'Tira o objeto da memória
Set ObjNewStrSQL = Nothing
'Move para o próximo Insert na tabela
RsFolha.MoveNext
Wend
'Tira o recordset da memória
Set RsFolha = Nothing
ErrHandle:
'Caso ocorra um erro
If Err.Number <> 0 Then
MsgBox Err.Description, vbInformation, "Erro número: " & Err.Number
End If
gostaria de fazer um delete IDLotacao na tabela de lotação quando na mesma tabela o IDLotacao fosse diferente do IDLotacaoPai e IDUorgAgrupadora.
exp:
IDLotacaoPai lotacao IDUorgPai IDUorgAgrupadora1
1 GABINETE DO MINISTRO 431 431
362 COORDENAÇÃOGERAL DE APOIO ADMINISTRAT 1 1
363 COORDENAÇÃO/CGAA/GM 362 362
364 DIVISÃO/COORD/CGAA/GM 363 362
365 COORDENAÇÃO/CGAA/GM 362 362
o IDLotacaoPai 364 em negrito não existe na coluna IDUorgPai e nem na IDUorgAgrupadora1 em nenhuma posição. O meu while consiste nisso quando o IDLotacaoPai não existir na colunas IDUorgPai e nem na IDUorgAgrupadora1 em nenhuma posição é executado o delete do registro em questão.
eis o meu código:
Dim var1 As String
Dim var2 As String
Dim var3 As String
'Busca informações na TBFolha_Pagamento para o usuário não inserir a mesma informação
var1 = DLookup("[IDLotacaoPai]", "TBLotacaoPai")
'Tratamento de erro
On Error GoTo ErrHandle
'Abre um recordset
Set RsFolha = CurrentDb.OpenRecordset("TBLotacaoPai")
'Laço para ir de registro em registro, listando todos os estagiários da tabela.
While Not RsFolha.EOF
'Busca informções na tabela para inserir na tabela de folha de pagamento -----------
var2 = RsFolha.Fields("IDUorgPai")
var3 = RsFolha.Fields("IDUorgAgrupadora1")
'Delete
CurrentDb.Execute "delete * from TBLotacaoPai where var1 <> var2 and var1 <> var3"
'Tira o objeto da memória
Set ObjNewStrSQL = Nothing
'Move para o próximo Insert na tabela
RsFolha.MoveNext
Wend
'Tira o recordset da memória
Set RsFolha = Nothing
ErrHandle:
'Caso ocorra um erro
If Err.Number <> 0 Then
MsgBox Err.Description, vbInformation, "Erro número: " & Err.Number
End If