1597 |
|
case Action of |
1598 |
|
TARollback, TACommit: |
1599 |
|
begin |
1600 |
< |
DoBeforeTransactionEnd; |
1600 |
> |
try |
1601 |
> |
DoBeforeTransactionEnd; |
1602 |
> |
except on E: EIBInterBaseError do |
1603 |
> |
begin |
1604 |
> |
if not Force then |
1605 |
> |
raise; |
1606 |
> |
end; |
1607 |
> |
end; |
1608 |
> |
|
1609 |
|
for i := 0 to FSQLObjects.Count - 1 do if FSQLObjects[i] <> nil then |
1610 |
+ |
try |
1611 |
|
SQLObjects[i].DoBeforeTransactionEnd(Action); |
1612 |
+ |
except on E: EIBInterBaseError do |
1613 |
+ |
begin |
1614 |
+ |
if not Force then |
1615 |
+ |
raise; |
1616 |
+ |
end; |
1617 |
+ |
end; |
1618 |
+ |
|
1619 |
|
if InTransaction then |
1620 |
|
begin |
1621 |
|
if (Action = TARollback) then |
1632 |
|
end; |
1633 |
|
end; |
1634 |
|
|
1635 |
< |
for i := 0 to FSQLObjects.Count - 1 do if FSQLObjects[i] <> nil then |
1636 |
< |
SQLObjects[i].DoAfterTransactionEnd; |
1637 |
< |
DoAfterTransactionEnd; |
1635 |
> |
for i := 0 to FSQLObjects.Count - 1 do if FSQLObjects[i] <> nil then |
1636 |
> |
try |
1637 |
> |
SQLObjects[i].DoAfterTransactionEnd; |
1638 |
> |
except on E: EIBInterBaseError do |
1639 |
> |
begin |
1640 |
> |
if not Force then |
1641 |
> |
raise; |
1642 |
> |
end; |
1643 |
> |
end; |
1644 |
> |
try |
1645 |
> |
DoAfterTransactionEnd; |
1646 |
> |
except on E: EIBInterBaseError do |
1647 |
> |
begin |
1648 |
> |
if not Force then |
1649 |
> |
raise; |
1650 |
> |
end; |
1651 |
> |
end; |
1652 |
|
end; |
1653 |
|
end; |
1654 |
|
TACommitRetaining: |