I don't know what you are trying to accomplish. The Clear removes any of the data within the BO and resets any flags. Calling a Clear() and then a Save() would do literally nothing. What are you trying to accomplish?
Just so you can better understand this, run this code:
MyBO.Clear()
MsgBox(MyBO.Count.ToString())
You will get a message box with a "0" in it. There are no records in the BO after you call a clear...the records are not deleted, the BO is just cleared of its data. If you want to delete all of the records in the BO, the easiest thing to do is enumerate and get all of the PKs then delete all of the PKs at once:
Dim loPKs As New System.Collections.Generics.List(Of Integer)
If MyBO.MoveFirst()
Do
loPKs.Add(MyBO.MyPrimaryKey)
Loop While MyBO.MoveNext()
End If
'-- Now delete the records
For Each lnPK As Integer IN laPKs.ToArray()
MyBO.DeleteByPrimaryKey(lnPK)
Next
You don't need to call the save because the DeleteByPrimaryKey immediately deletes the record on the server.