Insert SQL seem to be working just fine. UPDATE sql was the problem. but it was the query error not being in dsEdit was the only error. SQL below is after the fields were removed. Yes, your suggestion on how to check state worked perfectly. Thank you.
SQL.Add('SELECT UID, ProductNo, ProductDescription, UOM, ');
SQL.Add('StdQty, UnitPrice, StdCost, ');
SQL.Add('Suspended, ProductClass, ProductNote, ');
SQL.Add('Taxable1, Taxable2 FROM Inventory ORDER BY ProductNo');
{--------}
UpdateSQL.Clear;
UpdateSQL.Add('UPDATE INVENTORY SET ProductNo=:ProductNo, ProductDescription=:ProductDescription, ');
UpdateSQL.Add('UOM=:UOM, StdQty=:StdQty, UnitPrice=:Unitprice, StdCost=:StdCost, Suspended=:Suspended, ');
UpdateSQL.Add('ProductClass=:ProductClass,ProductNote=:ProductNote, ');
UpdateSQL.Add('Taxable1=:Taxable1, Taxable2=:Taxable2 WHERE UID=:OLD_UID');
{--------}
DeleteSQL.Clear;
DeleteSQL.Add('DELETE FROM Inventory WHERE (UID = :OLD_UID)');
{--------}
InsertSQL.Clear;
InsertSQL.Add('INSERT into Inventory ');
InsertSQL.Add('(ProductNo, ProductDescription, UOM, StdQty, UnitPrice, StdCost, ');
InsertSQL.Add('Suspended, ProductClass, ProductNote, ');
InsertSQL.Add('Taxable1, Taxable2) VALUES ');
InsertSQL.Add('(:ProductNo, :ProductDescription, :UOM, :StdQty, :UnitPrice, :StdCost, ');
InsertSQL.Add(':Suspended, :ProductClass, :ProductNote, :Taxable1, :Taxable2) ');
RefreshSQL.Clear;
RefreshSQL.Add('SELECT UID, ProductNo, ProductDescription, UOM, StdQty, UnitPrice, StdCost, ');
RefreshSQL.Add('Suspended, ProductClass, ProductNote, ');
RefreshSQL.Add('Taxable1, Taxable2 from Inventory WHERE (UID = :UID) ');