财务
This commit is contained in:
parent
b67f583bf4
commit
98f3d8882b
|
|
@ -44,16 +44,32 @@ object frmSingleCustStatement: TfrmSingleCustStatement
|
||||||
ImageIndex = 1
|
ImageIndex = 1
|
||||||
OnClick = TBRafreshClick
|
OnClick = TBRafreshClick
|
||||||
end
|
end
|
||||||
object ToolButton3: TToolButton
|
object TBVerify: TToolButton
|
||||||
Left = 71
|
Left = 71
|
||||||
Top = 0
|
Top = 0
|
||||||
AutoSize = True
|
AutoSize = True
|
||||||
|
Caption = #26680#23545
|
||||||
|
ImageIndex = 12
|
||||||
|
OnClick = TBVerifyClick
|
||||||
|
end
|
||||||
|
object TBCancelVerify: TToolButton
|
||||||
|
Left = 142
|
||||||
|
Top = 0
|
||||||
|
AutoSize = True
|
||||||
|
Caption = #25764#38144#26680#23545
|
||||||
|
ImageIndex = 11
|
||||||
|
OnClick = TBCancelVerifyClick
|
||||||
|
end
|
||||||
|
object ToolButton3: TToolButton
|
||||||
|
Left = 237
|
||||||
|
Top = 0
|
||||||
|
AutoSize = True
|
||||||
Caption = #25171#21360
|
Caption = #25171#21360
|
||||||
ImageIndex = 21
|
ImageIndex = 21
|
||||||
OnClick = ToolButton3Click
|
OnClick = ToolButton3Click
|
||||||
end
|
end
|
||||||
object ToolButton1: TToolButton
|
object ToolButton1: TToolButton
|
||||||
Left = 142
|
Left = 308
|
||||||
Top = 0
|
Top = 0
|
||||||
AutoSize = True
|
AutoSize = True
|
||||||
Caption = #23548#20986
|
Caption = #23548#20986
|
||||||
|
|
@ -61,7 +77,7 @@ object frmSingleCustStatement: TfrmSingleCustStatement
|
||||||
OnClick = ToolButton1Click
|
OnClick = ToolButton1Click
|
||||||
end
|
end
|
||||||
object ToolButton2: TToolButton
|
object ToolButton2: TToolButton
|
||||||
Left = 213
|
Left = 379
|
||||||
Top = 0
|
Top = 0
|
||||||
AutoSize = True
|
AutoSize = True
|
||||||
Caption = #20445#23384#26684#24335
|
Caption = #20445#23384#26684#24335
|
||||||
|
|
@ -69,7 +85,7 @@ object frmSingleCustStatement: TfrmSingleCustStatement
|
||||||
OnClick = ToolButton2Click
|
OnClick = ToolButton2Click
|
||||||
end
|
end
|
||||||
object TBClose: TToolButton
|
object TBClose: TToolButton
|
||||||
Left = 308
|
Left = 474
|
||||||
Top = 0
|
Top = 0
|
||||||
AutoSize = True
|
AutoSize = True
|
||||||
Caption = #20851#38381
|
Caption = #20851#38381
|
||||||
|
|
@ -610,11 +626,13 @@ object frmSingleCustStatement: TfrmSingleCustStatement
|
||||||
Height = 542
|
Height = 542
|
||||||
Align = alClient
|
Align = alClient
|
||||||
TabOrder = 3
|
TabOrder = 3
|
||||||
|
ExplicitTop = 73
|
||||||
object TV11: TcxGridDBTableView
|
object TV11: TcxGridDBTableView
|
||||||
Navigator.Buttons.CustomButtons = <>
|
Navigator.Buttons.CustomButtons = <>
|
||||||
Navigator.Buttons.Delete.Enabled = False
|
Navigator.Buttons.Delete.Enabled = False
|
||||||
Navigator.Buttons.Delete.Visible = False
|
Navigator.Buttons.Delete.Visible = False
|
||||||
ScrollbarAnnotations.CustomAnnotations = <>
|
ScrollbarAnnotations.CustomAnnotations = <>
|
||||||
|
OnCustomDrawCell = TV11CustomDrawCell
|
||||||
DataController.DataSource = DS_HZ
|
DataController.DataSource = DS_HZ
|
||||||
DataController.Filter.AutoDataSetFilter = True
|
DataController.Filter.AutoDataSetFilter = True
|
||||||
DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost]
|
DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost]
|
||||||
|
|
@ -669,6 +687,17 @@ object frmSingleCustStatement: TfrmSingleCustStatement
|
||||||
Styles.Header = DataLink_Financial.Default
|
Styles.Header = DataLink_Financial.Default
|
||||||
Styles.Inactive = DataLink_Financial.SHuangSe
|
Styles.Inactive = DataLink_Financial.SHuangSe
|
||||||
Styles.Selection = DataLink_Financial.SHuangSe
|
Styles.Selection = DataLink_Financial.SHuangSe
|
||||||
|
object TV11ssel: TcxGridDBColumn
|
||||||
|
Caption = #36873#25321
|
||||||
|
DataBinding.FieldName = 'ssel'
|
||||||
|
DataBinding.IsNullValueType = True
|
||||||
|
PropertiesClassName = 'TcxCheckBoxProperties'
|
||||||
|
Properties.ImmediatePost = True
|
||||||
|
Properties.NullStyle = nssUnchecked
|
||||||
|
FixedKind = fkLeftDynamic
|
||||||
|
HeaderAlignmentHorz = taCenter
|
||||||
|
Width = 66
|
||||||
|
end
|
||||||
object cxGridDBColumn1: TcxGridDBColumn
|
object cxGridDBColumn1: TcxGridDBColumn
|
||||||
Caption = #24207#21495
|
Caption = #24207#21495
|
||||||
DataBinding.FieldName = 'keyNO'
|
DataBinding.FieldName = 'keyNO'
|
||||||
|
|
@ -876,6 +905,11 @@ object frmSingleCustStatement: TfrmSingleCustStatement
|
||||||
object TV11Column4: TcxGridDBColumn
|
object TV11Column4: TcxGridDBColumn
|
||||||
DataBinding.IsNullValueType = True
|
DataBinding.IsNullValueType = True
|
||||||
end
|
end
|
||||||
|
object TV11is_checked: TcxGridDBColumn
|
||||||
|
DataBinding.FieldName = 'is_checked'
|
||||||
|
DataBinding.IsNullValueType = True
|
||||||
|
Visible = False
|
||||||
|
end
|
||||||
end
|
end
|
||||||
object cxGridLevel2: TcxGridLevel
|
object cxGridLevel2: TcxGridLevel
|
||||||
GridView = TV11
|
GridView = TV11
|
||||||
|
|
|
||||||
|
|
@ -110,6 +110,10 @@ type
|
||||||
TV11Column3: TcxGridDBColumn;
|
TV11Column3: TcxGridDBColumn;
|
||||||
TV11Column4: TcxGridDBColumn;
|
TV11Column4: TcxGridDBColumn;
|
||||||
TV11Column5: TcxGridDBColumn;
|
TV11Column5: TcxGridDBColumn;
|
||||||
|
TV11is_checked: TcxGridDBColumn;
|
||||||
|
TV11ssel: TcxGridDBColumn;
|
||||||
|
TBVerify: TToolButton;
|
||||||
|
TBCancelVerify: TToolButton;
|
||||||
procedure FormDestroy(Sender: TObject);
|
procedure FormDestroy(Sender: TObject);
|
||||||
procedure FormClose(Sender: TObject; var Action: TCloseAction);
|
procedure FormClose(Sender: TObject; var Action: TCloseAction);
|
||||||
procedure TBCloseClick(Sender: TObject);
|
procedure TBCloseClick(Sender: TObject);
|
||||||
|
|
@ -120,10 +124,17 @@ type
|
||||||
procedure FormCreate(Sender: TObject);
|
procedure FormCreate(Sender: TObject);
|
||||||
procedure ToolButton3Click(Sender: TObject);
|
procedure ToolButton3Click(Sender: TObject);
|
||||||
procedure ToolButton2Click(Sender: TObject);
|
procedure ToolButton2Click(Sender: TObject);
|
||||||
|
procedure TBVerifyClick(Sender: TObject);
|
||||||
|
procedure TBCancelVerifyClick(Sender: TObject);
|
||||||
|
procedure TV11CustomDrawCell(Sender: TcxCustomGridTableView;
|
||||||
|
ACanvas: TcxCanvas; AViewInfo: TcxGridTableDataCellViewInfo;
|
||||||
|
var ADone: Boolean);
|
||||||
private
|
private
|
||||||
{ Private declarations }
|
{ Private declarations }
|
||||||
|
|
||||||
procedure InitGrid();
|
procedure InitGrid();
|
||||||
|
|
||||||
|
procedure UpdateCheckedStatus(Checked: Boolean);
|
||||||
public
|
public
|
||||||
{ Public declarations }
|
{ Public declarations }
|
||||||
FOppCoNo, FOurCoNo, FCurrency: string;
|
FOppCoNo, FOurCoNo, FCurrency: string;
|
||||||
|
|
@ -138,6 +149,22 @@ uses
|
||||||
U_DataLink, U_RTFun, U_ZDYHelp;
|
U_DataLink, U_RTFun, U_ZDYHelp;
|
||||||
|
|
||||||
{$R *.dfm}
|
{$R *.dfm}
|
||||||
|
procedure SplitDelimited(const S: string; Delimiter: Char; List: TStrings);
|
||||||
|
var
|
||||||
|
i: Integer;
|
||||||
|
SL: TStringList;
|
||||||
|
begin
|
||||||
|
SL := TStringList.Create;
|
||||||
|
try
|
||||||
|
SL.StrictDelimiter := True;
|
||||||
|
SL.Delimiter := Delimiter;
|
||||||
|
SL.DelimitedText := S;
|
||||||
|
for i := 0 to SL.Count - 1 do
|
||||||
|
List.Add(SL[i]);
|
||||||
|
finally
|
||||||
|
SL.Free;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
procedure TfrmSingleCustStatement.InitGrid();
|
procedure TfrmSingleCustStatement.InitGrid();
|
||||||
begin
|
begin
|
||||||
|
|
@ -153,7 +180,7 @@ begin
|
||||||
sql.Add(' ,@OppCoNo=' + QuotedStr(Trim(FOppCoNo)));
|
sql.Add(' ,@OppCoNo=' + QuotedStr(Trim(FOppCoNo)));
|
||||||
sql.Add(' ,@OurCoNo=' + QuotedStr(Trim(FOurCoNo)));
|
sql.Add(' ,@OurCoNo=' + QuotedStr(Trim(FOurCoNo)));
|
||||||
sql.Add(' ,@Currency=' + QuotedStr(Trim(FCurrency)));
|
sql.Add(' ,@Currency=' + QuotedStr(Trim(FCurrency)));
|
||||||
// showmessage(sql.text);
|
showmessage(sql.text);
|
||||||
Open;
|
Open;
|
||||||
end;
|
end;
|
||||||
SCreateCDS(ADOQueryMain, CDS_HZ);
|
SCreateCDS(ADOQueryMain, CDS_HZ);
|
||||||
|
|
@ -170,6 +197,20 @@ begin
|
||||||
Action := caFree;
|
Action := caFree;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
|
procedure TfrmSingleCustStatement.TBVerifyClick(Sender: TObject);
|
||||||
|
begin
|
||||||
|
if CDS_HZ.IsEmpty then Exit;
|
||||||
|
if MessageDlg('确认将选中的记录标记为已核对吗?', mtConfirmation, [mbYes, mbNo], 0) <> mrYes then Exit;
|
||||||
|
UpdateCheckedStatus(True);
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfrmSingleCustStatement.TBCancelVerifyClick(Sender: TObject);
|
||||||
|
begin
|
||||||
|
if CDS_HZ.IsEmpty then Exit;
|
||||||
|
if MessageDlg('确认将选中的记录取消核对吗?', mtConfirmation, [mbYes, mbNo], 0) <> mrYes then Exit;
|
||||||
|
UpdateCheckedStatus(False);
|
||||||
|
end;
|
||||||
|
|
||||||
procedure TfrmSingleCustStatement.TBCloseClick(Sender: TObject);
|
procedure TfrmSingleCustStatement.TBCloseClick(Sender: TObject);
|
||||||
begin
|
begin
|
||||||
|
|
||||||
|
|
@ -190,6 +231,8 @@ begin
|
||||||
InitGrid();
|
InitGrid();
|
||||||
end;
|
end;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
procedure TfrmSingleCustStatement.P_OrderNo_YSK(Sender: TObject);
|
procedure TfrmSingleCustStatement.P_OrderNo_YSK(Sender: TObject);
|
||||||
begin
|
begin
|
||||||
ToolButton2.Click;
|
ToolButton2.Click;
|
||||||
|
|
@ -238,5 +281,101 @@ begin
|
||||||
|
|
||||||
end;
|
end;
|
||||||
|
|
||||||
|
procedure TfrmSingleCustStatement.TV11CustomDrawCell(
|
||||||
|
Sender: TcxCustomGridTableView; ACanvas: TcxCanvas;
|
||||||
|
AViewInfo: TcxGridTableDataCellViewInfo; var ADone: Boolean);
|
||||||
|
var
|
||||||
|
ARecord: TcxCustomGridRecord;
|
||||||
|
begin
|
||||||
|
ARecord := AViewInfo.GridRecord;
|
||||||
|
if ARecord = nil then
|
||||||
|
Exit;
|
||||||
|
|
||||||
|
if (not VarIsNull(ARecord.Values[TV11is_checked.Index])) and
|
||||||
|
(ARecord.Values[TV11is_checked.Index] = 1) then
|
||||||
|
begin
|
||||||
|
ACanvas.Brush.Color := $CCFFCC;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TfrmSingleCustStatement.UpdateCheckedStatus(Checked: Boolean);
|
||||||
|
var
|
||||||
|
FlowIDList, InvoiceIDList, TempIDs: string;
|
||||||
|
FlowIDsAll, InvoiceIDsAll: TStringList;
|
||||||
|
vBookmark: TBookmark;
|
||||||
|
targetValue: Integer;
|
||||||
|
begin
|
||||||
|
if CDS_HZ.IsEmpty then Exit;
|
||||||
|
|
||||||
|
targetValue := Ord(Checked);
|
||||||
|
|
||||||
|
FlowIDsAll := TStringList.Create;
|
||||||
|
InvoiceIDsAll := TStringList.Create;
|
||||||
|
try
|
||||||
|
CDS_HZ.DisableControls;
|
||||||
|
vBookmark := CDS_HZ.Bookmark;
|
||||||
|
try
|
||||||
|
CDS_HZ.First;
|
||||||
|
while not CDS_HZ.Eof do
|
||||||
|
begin
|
||||||
|
if CDS_HZ.FieldByName('ssel').AsBoolean then
|
||||||
|
begin
|
||||||
|
if not CDS_HZ.FieldByName('flow_ids').IsNull then
|
||||||
|
begin
|
||||||
|
TempIDs := CDS_HZ.FieldByName('flow_ids').AsString;
|
||||||
|
SplitDelimited(TempIDs, ',', FlowIDsAll);
|
||||||
|
end;
|
||||||
|
if not CDS_HZ.FieldByName('invoice_ids').IsNull then
|
||||||
|
begin
|
||||||
|
TempIDs := CDS_HZ.FieldByName('invoice_ids').AsString;
|
||||||
|
SplitDelimited(TempIDs, ',', InvoiceIDsAll);
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
CDS_HZ.Next;
|
||||||
|
end;
|
||||||
|
finally
|
||||||
|
CDS_HZ.Bookmark := vBookmark;
|
||||||
|
CDS_HZ.EnableControls;
|
||||||
|
end;
|
||||||
|
|
||||||
|
FlowIDsAll.Sorted := True;
|
||||||
|
FlowIDsAll.Duplicates := dupIgnore;
|
||||||
|
InvoiceIDsAll.Sorted := True;
|
||||||
|
InvoiceIDsAll.Duplicates := dupIgnore;
|
||||||
|
|
||||||
|
if FlowIDsAll.Count > 0 then
|
||||||
|
begin
|
||||||
|
FlowIDList := FlowIDsAll.CommaText;
|
||||||
|
ADOQueryCmd.Close;
|
||||||
|
ADOQueryCmd.SQL.Text :=
|
||||||
|
'UPDATE FF SET is_checked = :p ' +
|
||||||
|
'FROM Finance_Flow FF ' +
|
||||||
|
'INNER JOIN dbo.F_Tool_SplitString(:ids, '','') S ON FF.FFID = S.RTValue';
|
||||||
|
ADOQueryCmd.Parameters.ParamByName('p').Value := targetValue;
|
||||||
|
ADOQueryCmd.Parameters.ParamByName('ids').Value := FlowIDList;
|
||||||
|
ADOQueryCmd.ExecSQL;
|
||||||
|
end;
|
||||||
|
|
||||||
|
if InvoiceIDsAll.Count > 0 then
|
||||||
|
begin
|
||||||
|
InvoiceIDList := InvoiceIDsAll.CommaText;
|
||||||
|
ADOQueryCmd.Close;
|
||||||
|
ADOQueryCmd.SQL.Text :=
|
||||||
|
'UPDATE FI SET is_checked = :p ' +
|
||||||
|
'FROM Finance_Invoice FI ' +
|
||||||
|
'INNER JOIN dbo.F_Tool_SplitString(:ids, '','') S ON FI.IVId = S.RTValue';
|
||||||
|
ADOQueryCmd.Parameters.ParamByName('p').Value := targetValue;
|
||||||
|
ADOQueryCmd.Parameters.ParamByName('ids').Value := InvoiceIDList;
|
||||||
|
ADOQueryCmd.ExecSQL;
|
||||||
|
end;
|
||||||
|
|
||||||
|
finally
|
||||||
|
FlowIDsAll.Free;
|
||||||
|
InvoiceIDsAll.Free;
|
||||||
|
end;
|
||||||
|
|
||||||
|
InitGrid();
|
||||||
|
end;
|
||||||
|
|
||||||
end.
|
end.
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue
Block a user