This commit is contained in:
DESKTOP-E401PHE\Administrator 2025-10-30 17:02:54 +08:00
parent 20c0c41564
commit bc2f66ffd4
2 changed files with 37 additions and 29 deletions

View File

@ -286,6 +286,8 @@ object frmYMTRKInPut: TfrmYMTRKInPut
Tag = 2
Caption = #23454#38469#31859#25968
DataBinding.FieldName = 'FactMQty'
PropertiesClassName = 'TcxCurrencyEditProperties'
Properties.DisplayFormat = '0.00'
HeaderAlignmentHorz = taCenter
Options.Editing = False
Width = 80

View File

@ -761,33 +761,31 @@ begin
//////////生成应付数据
YFData();
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add('Update YMT_CK_CR Set MXKCQty=(select sum(isnull(Qty,0)*CRQtyFlag) from YMT_CK_CR A where A.FZSPID=YMT_CK_CR.SPID)');
sql.Add(',MXKCPiQty=(select sum(isnull(PiQty,0)*CRQtyFlag) from YMT_CK_CR A where A.FZSPID=YMT_CK_CR.SPID)');
sql.Add(' where SPID=''' + Trim(Maxno) + '''');
ExecSQL;
end;
with ADOQueryTemp do
begin
Close;
sql.Clear;
sql.Add('select * from YMT_CK_CR where SPID=''' + Trim(Maxno) + '''');
Open;
end;
if ADOQueryTemp.FieldByName('MXKCQty').Value < 0 then
begin
CDS_Sub.DisableControls;
ADOQueryCmd.Connection.RollbackTrans;
Application.MessageBox('入库数小于出库数不能保存!', '提示', 0);
Exit;
end;
// with ADOQueryCmd do
// begin
// Close;
// sql.Clear;
// sql.Add('Update YMT_CK_CR Set MXKCQty=(select sum(isnull(Qty,0)*CRQtyFlag) from YMT_CK_MX A where A.SPID=YMT_CK_CR.SPID)');
// sql.Add(',MXKCPiQty=(select sum(isnull(PiQty,0)*CRQtyFlag) from YMT_CK_MX A where A.SPID=YMT_CK_CR.SPID)');
// sql.Add(' where SPID=''' + Trim(Maxno) + '''');
// ExecSQL;
// end;
// with ADOQueryTemp do
// begin
// Close;
// sql.Clear;
// sql.Add('select * from YMT_CK_CR where SPID=''' + Trim(Maxno) + '''');
// Open;
// end;
//
// if ADOQueryTemp.FieldByName('MXKCQty').Value < 0 then
// begin
// CDS_Sub.DisableControls;
// ADOQueryCmd.Connection.RollbackTrans;
// Application.MessageBox('入库数小于出库数不能保存!', '提示', 0);
// Exit;
// end;
///////////////////////////////////////////////////////////////////////////
/// 保存子表
with CDS_MX do
@ -1386,7 +1384,7 @@ begin
if ReadMQty.Checked = False then
FieldByName('FactMQty').Value := FieldByName('Qty').Asfloat * FieldByName('Yardwand').Asfloat / 100
else
FieldByName('FactMQty').Value := TvMX.DataController.Summary.FooterSummaryValues[1].asInt * FieldByName('Yardwand').Asfloat / 100;
FieldByName('FactMQty').Value := TvMX.DataController.Summary.FooterSummaryValues[1].asFloat * FieldByName('Yardwand').Asfloat / 100;
end
else
begin
@ -1457,7 +1455,6 @@ begin
end;
end;
CDS_Sub.fieldbyname('FactPiQty').Value := CDS_MX.RecordCount;
;
ADOQueryCmd.Connection.CommitTrans;
except
@ -1474,6 +1471,7 @@ begin
SPID := Trim(CDS_Sub.fieldbyname('SPID').AsString);
if SPID = '' then
Exit;
if GetLSNo(ADOQueryTemp, MaxNo, 'MCM', 'YMT_CK_MX', 3, 1) = False then
begin
Application.MessageBox('取最大号失败!', '提示', 0);
@ -1498,7 +1496,9 @@ begin
FieldByName('KGQty').Value := '0';
Post;
end;
CDS_Sub.Edit;
CDS_Sub.fieldbyname('FactPiQty').Value := CDS_MX.RecordCount;
CDS_Sub.Post;
end;
procedure TfrmYMTRKInPut.TbDeleteRowClick(Sender: TObject);
@ -1539,6 +1539,7 @@ begin
sql.Add('delete YMT_CK_MX where MXID=' + quotedstr(Trim(CDS_MX.FieldByName('MXID').AsString)));
ExecSQL;
end;
with ADOQueryCmd do
begin
Close;
@ -1548,7 +1549,9 @@ begin
end;
try
CDS_MX.Delete;
CDS_Sub.Edit;
CDS_Sub.fieldbyname('FactPiQty').Value := CDS_MX.RecordCount;
CDS_Sub.Post;
finally
if CDS_MX.BookmarkValid(Bookmark) then
CDS_MX.GotoBookmark(Bookmark);
@ -1615,10 +1618,13 @@ end;
procedure TfrmYMTRKInPut.ReadMQtyClick(Sender: TObject);
begin
CDS_Sub.Edit;
if ReadMQty.Checked = False then
CDS_Sub.FieldByName('FactMQty').Value := CDS_Sub.FieldByName('Qty').Asfloat * CDS_Sub.FieldByName('Yardwand').Asfloat / 100
else
CDS_Sub.FieldByName('FactMQty').Value := TvMX.DataController.Summary.FooterSummaryValues[1].asInt * CDS_Sub.FieldByName('Yardwand').Asfloat / 100;
CDS_Sub.FieldByName('FactMQty').Value := TvMX.DataController.Summary.FooterSummaryValues[1].asFloat * CDS_Sub.FieldByName('Yardwand').Asfloat / 100;
CDS_Sub.Post;
end;
end.