Add this code to the form that adds records to table A.
Code:
Option Compare Database
Option Explicit
Private Sub Form_AfterInsert()
Dim sSQL As String
sSQL = "Insert Into tblB (SalesOrderID,PaymentAmt,PaymentDate) " _
& "Values (" & TempVars!tvSalesOrderID & ", " & 0 & ", #" & Date & "#);"
Debug.Print sSQL
CurrentDb.Execute sSQL, dbFailOnError
TempVars.Remove "tvSalesOrderID"
End Sub
'---------------------------------------------------------------------------------------
' Method : SalesOrderID_AfterUpdate
' Author : davegri
' Date : 6/23/2018
' Purpose: Two things here:
' 1. Check to see if the SalesOrderID already exists in tblA, if so warn and no update.
' 2. The values in the form are not available after the insert into tblA, so save the value
' of SalesOrderID in a tempvar as soon as it is entered into the form.
'---------------------------------------------------------------------------------------
Private Sub SalesOrderID_AfterUpdate()
Dim nID As Long
nID = Nz(DLookup("SalesOrderID", "tblA", "SalesOrderID=" & [SalesOrderID]), 0)
Select Case nID
Case 0
TempVars!tvSalesOrderID = SalesOrderID.Value
Exit Sub
Case Else
MsgBox "SalesOrderID already exists", vbOKOnly, " D A T A E N T R Y W A R N I N G "
Me.Undo
End Select
End Sub