VBAK - (VBELN) -> ok for PK
VBUK - (VBELN) -> ok
VBAP - (VBELN-POSNR)-> ok
VBKD - (VBELN-POSNR) -> Refer to VBAK or VBAP depending on POSNR. VBKD is linked with header VBAK when POSNR='' or linked to VBAP when POSNR <>''.
VBEP - (VBELN-POSNR-ETENR) -> ok
VBPA - (VBELN-POSNR-PARVW) -> ok
VBFA contain the flow beetween different Sales documents. For example, when VBTYP_N = 'J', it contains the link beetween the delivery and it's sales order. Do not use VBFA-AEDAT as it seems not to be updated when you modify something in the flow. For example, no change for AEDAT when you create a deliverry for a sales order.
VEDA - (VBELN-VPOSN)
Delete can occurs in these tables, as you can delete a sales order or a position. You have to consider them.
VBUK is linked to VBAK, it is the summary o the status for the sales order
VBUP is linked to VBAP and contains the different status for the sales order position.
MKPF is the header file for MSEG
PK for MSEG linked to MKPF is MBLNR MJAHR
Hope it helps,