📄 unit_planchang.pas
字号:
unit Unit_PlanChang;
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,DB;
type
TForm_PlanChang = class(TForm)
PC_ProductAppend: TPageControl;
TS_PlanAttribute: TTabSheet;
RG_PlanType: TcxRadioGroup;
RB_PlanTypeRetrun: TcxRadioButton;
RB_PlanTypeNewAdd: TcxRadioButton;
RB_PlanTypeOldSale: TcxRadioButton;
RB_PlantypeNewSale: TcxRadioButton;
cxRadioGroup1: TcxRadioGroup;
LCB_ProductCode: TcxLookupComboBox;
Label_ProductName: TcxLabel;
cxRadioGroup3: TcxRadioGroup;
DE_PlanDate: TcxDateEdit;
DE_EndDate: TcxDateEdit;
cxRadioGroup4: TcxRadioGroup;
cxLabel1: TcxLabel;
cxLabel2: TcxLabel;
GB_Cust: TcxGroupBox;
RB_AllCustomer: TcxRadioButton;
RB_SaleBadCust: TcxRadioButton;
RB_DefineCust: TcxRadioButton;
TE_CustNumber: TcxTextEdit;
GB_OldSalePrice: TcxGroupBox;
TE_OldSalePrice: TcxTextEdit;
Memo_Plan: TcxMemo;
Bt_Ok: TBitBtn;
BitBtn2: TBitBtn;
procedure BitBtn2Click(Sender: TObject);
procedure RB_PlantypeNewSaleClick(Sender: TObject);
procedure RB_PlanTypeRetrunClick(Sender: TObject);
procedure RB_PlanTypeOldSaleClick(Sender: TObject);
procedure RB_PlanTypeNewAddClick(Sender: TObject);
procedure LCB_ProductCodePropertiesChange(Sender: TObject);
procedure RB_DefineCustClick(Sender: TObject);
procedure RB_AllCustomerClick(Sender: TObject);
procedure FormShow(Sender: TObject);
procedure Bt_OkClick(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form_PlanChang: TForm_PlanChang;
iType: Integer;
sType,sPBName: String;
implementation
uses Unit_Data;
{$R *.dfm}
procedure TForm_PlanChang.BitBtn2Click(Sender: TObject);
begin
Close;
end;
procedure TForm_PlanChang.RB_PlantypeNewSaleClick(Sender: TObject);
begin
IF RB_PlanTypeOldSale.Checked = True Then
Begin
GB_OldSalePrice.Enabled := True;
TE_OldSalePrice.Enabled := True;
end Else Begin
GB_OldSalePrice.Enabled := False;
TE_OldSalePrice.Enabled := False;
End;
end;
procedure TForm_PlanChang.RB_PlanTypeRetrunClick(Sender: TObject);
begin
IF RB_PlanTypeOldSale.Checked = True Then
Begin
GB_OldSalePrice.Enabled := True;
TE_OldSalePrice.Enabled := True;
end Else Begin
GB_OldSalePrice.Enabled := False;
TE_OldSalePrice.Enabled := False;
End;
end;
procedure TForm_PlanChang.RB_PlanTypeOldSaleClick(Sender: TObject);
begin
IF RB_PlanTypeOldSale.Checked = True Then
Begin
GB_OldSalePrice.Enabled := True;
TE_OldSalePrice.Enabled := True;
end Else Begin
GB_OldSalePrice.Enabled := False;
TE_OldSalePrice.Enabled := False;
End;
end;
procedure TForm_PlanChang.RB_PlanTypeNewAddClick(Sender: TObject);
begin
IF RB_PlanTypeOldSale.Checked = True Then
Begin
GB_OldSalePrice.Enabled := True;
TE_OldSalePrice.Enabled := True;
end Else Begin
GB_OldSalePrice.Enabled := False;
TE_OldSalePrice.Enabled := False;
End;
end;
procedure TForm_PlanChang.LCB_ProductCodePropertiesChange(Sender: TObject);
begin
IF LCB_ProductCode.Text <> '' Then
Begin
Label_ProductName.Caption := Form_Data.Table__Inventory.Lookup('cInvCode',LCB_ProductCode.Text,'cInvName');
Bt_Ok.Enabled := True ;
end;
end;
procedure TForm_PlanChang.RB_DefineCustClick(Sender: TObject);
begin
IF RB_DeFineCust.Checked = True Then
TE_CustNumber.Enabled := True
Else TE_CustNumber.Enabled := False;
end;
procedure TForm_PlanChang.RB_AllCustomerClick(Sender: TObject);
begin
IF RB_AllCustomer.Checked = True Then
TE_CustNumber.Enabled := False
Else TE_CustNumber.Enabled := True;
end;
procedure TForm_PlanChang.FormShow(Sender: TObject);
begin
sPBName:= Form_Data.SQL_Plan.FieldByName('计划单号').asString;
sType := Form_Data.SQL_Plan.FieldByName('计划类别').asString;
IF sType = '新款首铺' Then RB_PlanTypeNewSale.Checked := True
Else IF sType = '商品调回' Then RB_PlanTypeRetrun.Checked := True
Else IF sType = '滞销重铺' Then RB_PlanTypeOldSale.Checked := True
Else IF sType = '新款加铺' Then RB_PlanTypeNewAdd.Checked := True
Else begin
Showmessage('不明计划类别!请确认');
Exit;
end;
LCB_ProductCode.Text := Form_Data.SQL_Plan.FieldByName('商品代码').asString;
Label_ProductName.Caption := Form_Data.SQL_Plan.FieldByName('商品名称').asString;
TE_CustNumber.Text := Form_Data.SQL_Plan.FieldByName('客户数').asString;
DE_PlanDate.Date := Form_Data.SQL_Plan.FieldByName('计划起日').asDatetime;
DE_EndDate.Date := Form_Data.SQL_Plan.FieldByName('计划止日').asDatetime;
Memo_Plan.Text := Form_Data.SQL_Plan.FieldByName('备注').asString;
end;
procedure TForm_PlanChang.Bt_OkClick(Sender: TObject);
Var
iType,iCust: Integer;
bLocate: Boolean;
Opt: TLocateOptions;
begin
iCust := 0;
// 确认客户信息;
IF (RB_DefineCust.Checked = True AND ((TE_CustNumber.Text ='') OR (STRTOINT(TE_CustNumber.Text) = 0 )))Then
Begin
Showmessage('请输入新计划的客户信息!');
Exit;
End;
IF RB_PlanTypeNewSale.Checked = True Then iType := 1
Else IF RB_PlanTypeRetrun.Checked = True Then iType := 2
Else IF RB_PlanTypeOldSale.Checked = True Then iType := 3
Else IF RB_PlanTypeNewAdd.Checked = True Then iType := 4
Else begin
Showmessage('不明计划类别!请确认');
Exit;
end;
IF RB_DefineCust.Checked = True Then iCust := StrToInt(TE_CustNumber.Text)
Else IF RB_AllCustomer.Checked = True Then
Begin
Form_Data.SQL.Close;
Form_Data.SQL.SQL.Clear;
Form_Data.SQL.SQL.Add('SELECT DISTINCT SaleDealList.cInvCode, Customer.cCusCode, Customer.cCusAbbName');
Form_Data.SQL.SQL.Add('FROM SaleDealList INNER JOIN Customer ON SaleDealList.cCusCode = Customer.cCusCode');
Form_Data.SQL.SQL.Add('WHERE cInvCode = '''+ LCB_ProductCode.Text +'''');
Form_Data.SQL.SQL.Add('ORDER BY SaleDealList.cInvCode');
Form_Data.SQL.Open;
iCust := Form_Data.SQL.RecordCount;
End;
// 写定位代码,以修改.
Opt:= [LoPartialKey];
bLocate := Form_Data.Table__Plan.Locate('PBName',sPBName,Opt);
IF bLocate = True Then
Begin
With Form_Data.Table__Plan do
Begin
Form_Data.Table__Plan.Edit;
Form_Data.Table__Plan.FieldValues['PTCode'] := iType;
Form_Data.Table__Plan.FieldValues['PSDate'] := DE_PlanDate.Date;
Form_Data.Table__Plan.FieldValues['PEDate'] := DE_EndDate.Date;
Form_Data.Table__Plan.FieldValues['PBProd'] := LCB_ProductCode.Text;
Form_Data.Table__Plan.FieldValues['PBCust'] := iCust;
Form_Data.Table__Plan.FieldValues['PBMemo'] := Memo_Plan.Text;
Form_Data.Table__Plan.FieldValues['PMaker'] := UserName;
Form_Data.Table__Plan.Post;
End;
Close;
End Else
Begin
Showmessage('无法定位要修改的计划,请再确认!');
Exit;
end;
Form_Data.SQL_Plan.Active := False ;
Form_Data.SQL_Plan.Active := True ;
Form_Data.SQL_Plan.Locate('计划单号',sPBName,[]);
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -