|

楼主 |
发表于 2008-4-21 10:42:14
|
显示全部楼层
jietu
点击从初始化运行,在选定审批人之后,点击“确定”出现如图所示错误,代码停留在红色区
procedure TSCMObjectDataSetContainer.ApplyUpdates;
var
I: Integer;
begin
for I := 0 to DataSetCount - 1 do
begin
if (DataSets[I] <> nil) and
DataSets[I].UpdatesPending and
DataSets[I].UpdateOptions.Enabled {and
not DataSets[I].Relation.Active }then
DataSets[I].ApplyUpdates(False);
end;
end;
procedure TSCMObjectDataSetContainer.CancelUpdates;
var
I: Integer;
begin
for I := 0 to DataSetCount - 1 do
begin
if DataSets[I] = nil then
Continue;
if DataSets[I].State in [TDataSetState.dsInsert, TDataSetState.dsEdit] then
DataSets[I].Cancel;
if DataSets[I].UpdatesPending then
DataSets[I].CancelUpdates;
end;
end;
procedure TSCMObjectDataSetContainer.DisableControls;
var
I: Integer;
begin
for I := 0 to DataSetCount - 1 do
if DataSets[I] <> nil then
DataSets[I].DisableControls;
end;
procedure TSCMObjectDataSetContainer.EnableControls;
var
I: Integer;
begin
for I := 0 to DataSetCount - 1 do
if DataSets[I] <> nil then
DataSets[I].EnableControls;
end;
{ TSCMInvVoucher }
const
MaxInvVoucherDetailCount = 1000;
constructor TSCMInvVoucher.Create;
begin
SetLength(FDetails, MaxInvVoucherDetailCount);
end;
procedure TSCMInvVoucher.Add(const ItemCode, InvAccount, WhsCode: string;
Operator: TInvOperator; Quantity, Price, Sum: Double);
begin
FDetails[FCount].ItemCode := ItemCode;
FDetails[FCount].InvAccount := InvAccount;
FDetails[FCount].WhsCode := WhsCode;
FDetails[FCount].Operator := Operator;
FDetails[FCount].Quantity := Quantity;
FDetails[FCount].Price := Price;
FDetails[FCount].Sum := Sum;
Inc(FCount);
end;
function TSCMInvVoucher.SumSum: Double;
var
I: Integer;
begin
Result := 0;
for I := 0 to Count - 1 do
Result := Result + FDetails[I].Sum;
end;
var
OINMData: object;
{ TSCMInvAccount }
|
|