⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 unit_plansmanage.~pas

📁 用友ERP功能扩展
💻 ~PAS
字号:
unit Unit_PlansManage;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, cxGraphics, StdCtrls, Buttons, cxMemo, cxTextEdit, cxGroupBox,
  cxDropDownEdit, cxCalendar, cxLabel, cxMaskEdit, cxLookupEdit,
  cxDBLookupEdit, cxDBLookupComboBox, cxRadioGroup, cxControls,
  cxContainer, cxEdit, ComCtrls, Grids, DBGrids, cxDBLabel, cxDBEdit,
  dxExEdtr, dxDBGrid, dxTL, dxDBCtrl, dxCntner, cxTreeView, ImgList,
  cxNavigator, cxDBNavigator, dxtree, dxdbtree,DB, Menus;

type
  TForm_PlansManage = class(TForm)
    PC_ProductAppend: TPageControl;
    TS_PlanAttribute: TTabSheet;
    Bt_Ok: TBitBtn;
    Bt_Cancel: TBitBtn;
    RG_PlanData: TcxRadioGroup;
    DBLabel_ProductName: TcxDBLabel;
    cxLabel1: TcxLabel;
    Label_PlanType: TcxLabel;
    DBLabel_PlanType: TcxDBLabel;
    Label_ProductType: TcxLabel;
    DBLabel_ProductType: TcxDBLabel;
    DBLabel_PEDate: TcxDBLabel;
    Label_PlanDate: TcxLabel;
    DBLabel_PSDate: TcxDBLabel;
    Label_CustNumber: TcxLabel;
    DBLabel_CustNumber: TcxDBLabel;
    Label_PlanCust: TcxLabel;
    DBLabel_PlanCust: TcxDBLabel;
    Label_TransactCust: TcxLabel;
    DBLabel_TransactCust: TcxDBLabel;
    DBGrid_Plan: TdxDBGrid;
    ICO_List: TImageList;
    DBGrid_Plans: TdxDBGrid;
    DBGrid_PlansColumn1: TdxDBGridMaskColumn;
    DBGrid_PlansColumn2: TdxDBGridMaskColumn;
    DBGrid_PlansColumn3: TdxDBGridColumn;
    DBGrid_PlansColumn4: TdxDBGridMaskColumn;
    DBGrid_PlansColumn5: TdxDBGridColumn;
    DBGrid_PlansColumn6: TdxDBGridColumn;
    DBGrid_PlansColumn7: TdxDBGridMaskColumn;
    DBGrid_PlansColumn8: TdxDBGridMaskColumn;
    DBGrid_PlansColumn9: TdxDBGridMaskColumn;
    DBGrid_PlansPlanPersonID: TdxDBGridColumn;
    DBGrid_PlanPlanPersonID: TdxDBGridColumn;
    DBGrid_PlanPBNO: TdxDBGridMaskColumn;
    DBGrid_PlancPersonName: TdxDBGridColumn;
    cxDBLabel1: TcxDBLabel;
    dxDBGrid1: TdxDBGrid;
    dxDBGrid1cPersonName: TdxDBGridColumn;
    dxDBGrid1cPersonCode: TdxDBGridColumn;
    dxDBGrid1cCusRankCode: TdxDBGridColumn;
    dxDBGrid1cCusRankName: TdxDBGridColumn;
    DBGrid_PlanCustList: TdxDBGrid;
    DBGrid_PlanCustListcCusPPerson: TdxDBGridColumn;
    DBGrid_PlanCustListCustomerKCode: TdxDBGridColumn;
    DBGrid_PlanCustListcCusAbbName: TdxDBGridColumn;
    cxLabel2: TcxLabel;
    cxDBLabel2: TcxDBLabel;
    procedure Bt_CancelClick(Sender: TObject);
    procedure DBGrid_PlanCustListCustomDrawCell(Sender: TObject; ACanvas: TCanvas;
      ARect: TRect; ANode: TdxTreeListNode; AColumn: TdxTreeListColumn;
      ASelected, AFocused, ANewItemRow: Boolean; var AText: String;
      var AColor: TColor; AFont: TFont; var AAlignment: TAlignment;
      var ADone: Boolean);
    procedure DBGrid_PlanCustListDblClick(Sender: TObject);
    procedure DBGrid_PlansCustomDrawCell(Sender: TObject; ACanvas: TCanvas;
      ARect: TRect; ANode: TdxTreeListNode; AColumn: TdxTreeListColumn;
      ASelected, AFocused, ANewItemRow: Boolean; var AText: String;
      var AColor: TColor; AFont: TFont; var AAlignment: TAlignment;
      var ADone: Boolean);
    procedure FormShow(Sender: TObject);
    procedure Bt_OkClick(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form_PlansManage: TForm_PlansManage;

implementation
uses  Unit_Data;
{$R *.dfm}

procedure TForm_PlansManage.Bt_CancelClick(Sender: TObject);
begin
    Close;
end;

procedure TForm_PlansManage.DBGrid_PlanCustListCustomDrawCell(Sender: TObject;
  ACanvas: TCanvas; ARect: TRect; ANode: TdxTreeListNode;
  AColumn: TdxTreeListColumn; ASelected, AFocused, ANewItemRow: Boolean;
  var AText: String; var AColor: TColor; AFont: TFont;
  var AAlignment: TAlignment; var ADone: Boolean);
Var
    sCusName: String;
    PBNO: Integer;
begin
    sCusName := Form_Data.SQL_PlanCustList.FieldValues['cCusCode'];
    PBNO := Form_Data.SQL_Plan.FieldValues['计划序号'];
    IF Form_Data.Table__Plans.Locate('PLCustID;PBNO',varArrayof([sCusName,PBNO]),[]) = True Then
    DBGrid_PlanCustList.Canvas.Font.Color := clRED
end;

procedure TForm_PlansManage.DBGrid_PlanCustListDblClick(Sender: TObject);
Var
    sCusCode,sPerson,sCustLevel: String;
    PBNO: Integer;
begin
    IF Form_Data.Table_Manage.Lookup('MName',UserName,'M004') = 0 Then
    Begin
        Showmessage('你无权执行此项操作,请咨询系统管理员!');
        Exit;
    End;
    PBNO       := Form_Data.SQL_Plan.FieldValues['计划序号'];
    sPerson    := Form_Data.Table__PlanPerson.FieldValues['cPersonCode'];
    sCustLevel := Form_Data.Table__PlanCustLevel.FieldValues['cCusRankCode'];
    sCusCode   := Form_Data.SQL_PlanCustList.FieldValues['cCusCode'];

    IF Form_Data.Table__Plans.Locate('PLCustID;PBNO',varArrayof([sCusCode,PBNO]),[]) = True Then
    Begin
        IF MessageDlg('请确认:  '+#13+#13+'该客户已在你的计划中,要从计划中删除它吗?'+#13+#13+#13+'[确定]请单击 OK 按钮,[取消]请单击 Cancel 按钮' ,mtInformation,[mbOK,mbCancel],0) = mrOk Then
        Begin
              Form_Data.Table__Plans.Delete;
        End
        Else Exit;
    End Else Begin
        IF MessageDlg('请确认:  '+#13+#13+'该客户不在你的计划中,要把它加入当前计划吗?'+#13+#13+#13+'[确定]请单击 OK 按钮,[取消]请单击 Cancel 按钮' ,mtInformation,[mbOK,mbCancel],0) = mrOk Then
        Begin
            Form_Data.Table__Plans.Append;
            Form_Data.Table__Plans.FieldValues['PLCustID'] := sCusCode ;
            Form_Data.Table__Plans.FieldValues['PBNO']     := PBNO ;
            Form_Data.Table__Plans.FieldValues['PLType']   := 1 ;
            Form_Data.Table__Plans.FieldValues['PLState']  := 0 ;
            Form_Data.Table__Plans.Post;
        End
        Else Exit;
    End;

    Form_Data.Table__Plans.Active := False ;
    Form_Data.Table__Plans.Active := True ;
    Form_Data.SQL_Plan.Active  := False ;
    Form_Data.SQL_Plan.Active  := True ;
    Form_Data.SQL_Plans.Active := False ;
    Form_Data.SQL_Plans.Active := True ;
    Form_Data.SQL_PlanCustLists.Active := False ;
    Form_Data.SQL_PlanCustLists.Active := True ;
    Form_Data.SQL_Plan.Locate('计划序号',PBNO,[]);
    Form_Data.Table__PlanPerson.Locate('cPersonCode;PBNO',varArrayof([sPerson,PBNO]),[]);
    Form_Data.Table__PlanCustLevel.Locate('cCusRankCode;cPersonCode',varArrayof([sCustLevel,sPerson]),[]);
    Form_Data.SQL_PlanCustList.Locate('cCusCode',sCusCode,[]);
    Form_Data.SQL_Plans.Locate('PLCustID',sCusCode,[]);
    
end;

procedure TForm_PlansManage.DBGrid_PlansCustomDrawCell(Sender: TObject;
  ACanvas: TCanvas; ARect: TRect; ANode: TdxTreeListNode;
  AColumn: TdxTreeListColumn; ASelected, AFocused, ANewItemRow: Boolean;
  var AText: String; var AColor: TColor; AFont: TFont;
  var AAlignment: TAlignment; var ADone: Boolean);
begin
    IF Form_Data.SQL_Plans.FieldValues['状态'] = '已完成' Then
    DBGrid_Plans.Canvas.Font.Color := clBlue;

end;

procedure TForm_PlansManage.FormShow(Sender: TObject);
begin
    Form_data.Table__PlanPerson.Active := False;
    Form_data.Table__PlanPerson.Active := True;
end;

procedure TForm_PlansManage.Bt_OkClick(Sender: TObject);
begin
    Close;
end;

end.

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -