📄 untrecievefdbill.pas
字号:
unit UntRecieveFdBill;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, UnitStandard1, DBTables, DB, Menus, ImgList, Grids, DBGrids,
ComCtrls, Buttons, StdCtrls, ExtCtrls, ToolWin, DBCtrls, Mask;
type
TFrmRecieveFdBill = class(TFrmStandard1)
Label26: TLabel;
Label27: TLabel;
Label28: TLabel;
Label29: TLabel;
Label30: TLabel;
Label31: TLabel;
Label32: TLabel;
GroupBox6: TGroupBox;
Label40: TLabel;
Label41: TLabel;
Label42: TLabel;
GroupBox7: TGroupBox;
Label43: TLabel;
LblItem4: TLabel;
LblItem3: TLabel;
Label46: TLabel;
LblItem1: TLabel;
LblItem2: TLabel;
Label34: TLabel;
TblFood: TTable;
DataSourceFood: TDataSource;
DBEditNotyItem: TDBEdit;
DBEdit3: TDBEdit;
DBEditClerk: TDBEdit;
DBEditArrivalTime: TDBEdit;
DBEditFqClass: TDBEdit;
DBEditMoisture: TDBEdit;
DBEditItem1: TDBEdit;
DBEditItem2: TDBEdit;
DBEditItem3: TDBEdit;
DBEditItem4: TDBEdit;
DBEdit15: TDBEdit;
DBEdit22: TDBEdit;
DBEdit23: TDBEdit;
DBEditmisc: TDBEdit;
BitBtnSlctNotyItem: TBitBtn;
Label35: TLabel;
Label36: TLabel;
Label37: TLabel;
Label38: TLabel;
Label49: TLabel;
GroupBox8: TGroupBox;
DBEditQuantity: TDBEdit;
DBEdit8: TDBEdit;
DBEdit9: TDBEdit;
DBEdit10: TDBEdit;
DBEdit11: TDBEdit;
DBEditInTime: TDBEdit;
Label33: TLabel;
Label39: TLabel;
Label50: TLabel;
DBEditStore: TDBEdit;
DataSourcePosition: TDataSource;
QrySQLINSTACK_ID: TStringField;
QrySQLNOTY_ITEM_ID: TStringField;
QrySQLNOTY_FOOD: TStringField;
QrySQLFROM_STATION: TStringField;
QrySQLFREIGHT_NUMBER: TStringField;
QrySQLTO_STATION: TStringField;
QrySQLFREIGHT: TFloatField;
QrySQLIN_QUANTITY: TFloatField;
QrySQLSTORAGE: TFloatField;
QrySQLPRICE: TFloatField;
QrySQLPROD_AREA: TStringField;
QrySQLNEW: TIntegerField;
QrySQLOLD: TIntegerField;
QrySQLMISC: TIntegerField;
QrySQLFQ_MOISTURE: TFloatField;
QrySQLFQ_IMPURITY: TFloatField;
QrySQLFQ_ITEM1: TFloatField;
QrySQLFQ_ITEM2: TFloatField;
QrySQLFQ_ITEM3: TFloatField;
QrySQLFQ_ITEM4: TFloatField;
QrySQLFQ_CLASS: TStringField;
QrySQLATTRIBUTE: TStringField;
QrySQLMEMO: TStringField;
QrySQLNOTY_QUANTITY: TFloatField;
QrySQLIN_FOOD: TStringField;
QrySQLSUPPLYER: TStringField;
QrySQLCLERK: TStringField;
QrySQLMANAGER: TStringField;
DBLookupComboBox1: TDBLookupComboBox;
DBLkpCmbxInFood: TDBLookupComboBox;
Label51: TLabel;
DBEditImpurity: TDBEdit;
QrySQLCASE_ID: TStringField;
QrySQLADJUST_ID: TStringField;
QrySQLUNIT_ID: TIntegerField;
QrySQLSITE_ID: TIntegerField;
QrySQLDEPOT_ID: TIntegerField;
QrySQLFOODPOSITION_ID: TIntegerField;
QrySQLIN_TIME: TDateTimeField;
QrySQLREAP_YEAR: TIntegerField;
QrySQLR_NEW: TIntegerField;
QrySQLR_OLD: TIntegerField;
QrySQLR_MISC: TIntegerField;
QrySQLFQ_ITEM5: TFloatField;
QrySQLARRIVAL_TIME: TDateTimeField;
DBMemo2: TDBMemo;
DataSourceSite: TDataSource;
DataSourceDepot: TDataSource;
Label52: TLabel;
Label53: TLabel;
Label54: TLabel;
Label55: TLabel;
DBEditUnitID: TDBEdit;
LblItem5: TLabel;
DBEditItem5: TDBEdit;
QrySQLATTACHMENT: TStringField;
Label57: TLabel;
Label58: TLabel;
QryFoodStyle: TQuery;
QrySQLCOM_FLAG: TIntegerField;
QrySQLAdjustor: TStringField;
DBLkpCmbxAttribute: TDBLookupComboBox;
DBLkpCmbxAtechment: TDBLookupComboBox;
DataSourceAttribute: TDataSource;
TblAttribute: TTable;
TblAtechment: TTable;
DataSourceAtechmet: TDataSource;
Label25: TLabel;
Label44: TLabel;
DBEdtTorn: TDBEdit;
DBEdtKnit: TDBEdit;
QrySQLINTYPE: TStringField;
QrySQLTORN: TIntegerField;
QrySQLKNIT: TIntegerField;
QrySQLR_TORN: TIntegerField;
QrySQLR_KNIT: TIntegerField;
DBEdit1: TDBEdit;
Label45: TLabel;
Label47: TLabel;
Label48: TLabel;
DBEdit5: TDBEdit;
DBComboBox1: TDBComboBox;
DBCmbxInType: TDBComboBox;
DBEditSurplus: TDBEdit;
Label56: TLabel;
QrySQLSURPLUS: TFloatField;
DBEditR_new: TDBEdit;
DBEditR_old: TDBEdit;
DBEditR_misc: TDBEdit;
DBEditR_torn: TDBEdit;
DBEditR_knit: TDBEdit;
QrySite: TQuery;
QryDepot: TQuery;
QryPosition: TQuery;
DBCmbxSite: TDBComboBox;
DBCmbxDepot: TDBComboBox;
DBCmbxPosition: TDBComboBox;
QrySQLname: TStringField;
QrySQLdepot_name: TStringField;
QrySQLsite_name: TStringField;
QrySQLunit_name: TStringField;
DBEdtStId: TDBEdit;
DBEdtDptId: TDBEdit;
DBEdtPstnId: TDBEdit;
DBEdit7: TDBEdit;
LblFqFat: TLabel;
DBEditFqFat: TDBEdit;
QrySQLFQ_FAT: TFloatField;
procedure BitBtnSaveClick(Sender: TObject);
procedure BitBtnSlctNotyItemClick(Sender: TObject);
procedure DBEditQuantityExit(Sender: TObject);
procedure BitBtnNewClick(Sender: TObject);
procedure DBLkpCmbxInFoodClick(Sender: TObject);
procedure DBEditKeyExit(Sender: TObject);
procedure DBLkpCmbxSiteExit(Sender: TObject);
procedure DBLkpCmbxDepotExit(Sender: TObject);
procedure DBLkpCmbxPositionExit(Sender: TObject);
procedure QrySQLAfterScroll(DataSet: TDataSet);
procedure DBEditQuantityEnter(Sender: TObject);
procedure DBEditNotyItemExit(Sender: TObject);
procedure DBEdit22Exit(Sender: TObject);
procedure DBEdit22Enter(Sender: TObject);
procedure DBEdit23Enter(Sender: TObject);
procedure DBEdit23Exit(Sender: TObject);
procedure DBEditmiscExit(Sender: TObject);
procedure DBEditmiscEnter(Sender: TObject);
procedure DBEdtTornEnter(Sender: TObject);
procedure DBEdtKnitEnter(Sender: TObject);
procedure DBEdtTornExit(Sender: TObject);
procedure DBEdtKnitExit(Sender: TObject);
procedure FormCreate(Sender: TObject);
procedure QrySQLIN_TIMESetText(Sender: TField; const Text: String);
procedure QrySQLARRIVAL_TIMESetText(Sender: TField;
const Text: String);
procedure DBCmbxSiteDropDown(Sender: TObject);
procedure DBCmbxSiteExit(Sender: TObject);
procedure DBCmbxDepotDropDown(Sender: TObject);
procedure DBCmbxDepotExit(Sender: TObject);
procedure DBCmbxPositionExit(Sender: TObject);
procedure DBCmbxPositionDropDown(Sender: TObject);
procedure BitBtnAllClick(Sender: TObject);
procedure BitBtnOKClick(Sender: TObject);
private
{ Private declarations }
OldQuantity: double;
Old_new, Old_old, Old_Misc, Old_torn, Old_knit: integer;
public
{ Public declarations }
NotyItemID,NotyFdType: string;
NotyQuantity: Double;
StId,DptId,PstnId: array[1..100] of Integer;
end;
var
FrmRecieveFdBill: TFrmRecieveFdBill;
implementation
uses UntSlctNotyItemId,UnitDataModul,Global;
{$R *.dfm}
procedure TFrmRecieveFdBill.BitBtnSaveClick(Sender: TObject);
begin
if DBEditkey.Text='' then
begin
Showmessage('收货单编号不能为空,请输入!');
DBEditKey.SetFocus;
DBEditKey.Enabled:=true;
exit;
end;
if DBCmbxSite.Text='' then
begin
Showmessage('库点号不能为空,请输入!');
DBCmbxSite.SetFocus;
exit;
end;
if DBCmbxDepot.Text='' then
begin
Showmessage('仓库号不能为空,请输入!');
DBCmbxDepot.SetFocus;
exit;
end;
if DBCmbxPosition.Text='' then
begin
Showmessage('货位号不能为空,请输入!');
DBCmbxPosition.SetFocus;
exit;
end;
inherited;
end;
procedure TFrmRecieveFdBill.BitBtnSlctNotyItemClick(Sender: TObject);
begin
inherited;
NotyItemID := '';
NotyFdType := '';
NotyQuantity := 0;
UntSlctNotyItemId.SltFlds(Self);
if Length(NotyItemID)<>0 then
begin
DBGrid1.DataSource.DataSet.Edit;
DBEditNotyItem.Field.AsString := NotyItemID;
end;
if Length(NotyFdType)<>0 then
begin
DBGrid1.DataSource.DataSet.Edit;
DBLookupComboBox1.Field.AsString := NotyFdType;
end;
if NotyQuantity <> 0 then
begin
DBGrid1.DataSource.DataSet.Edit;
DBEdit3.Field.AsFloat := NotyQuantity;
end;
end;
procedure TFrmRecieveFdBill.DBEditQuantityExit(Sender: TObject);
var
OldStore: double;
begin
inherited;
if DBEditStore.Text='' then
OldStore:=0
else
OldStore := strToFloat(DBEditStore.Text);
DBEditStore.Text := floatToStr(OldStore+DBEditQuantity.Field.AsFloat-OldQuantity);
end;
procedure TFrmRecieveFdBill.BitBtnNewClick(Sender: TObject);
begin
inherited;
DBEditUnitID.Field.AsInteger:=Global.g_user.UnitID;
DBEditClerk.Field.AsString := Global.g_user.UserName;
DBEDitInTime.Field.AsDateTime := date;
DBEDitArrivalTime.Field.AsDateTime := date;
DBCmbxInType.Field.AsString := '购入';
DBEditSurplus.Field.AsFloat := 0;
end;
procedure TFrmRecieveFdBill.DBLkpCmbxInFoodClick(Sender: TObject);
begin
inherited;
QryFoodStyle.Active:=false;
QryFoodStyle.SQL.Clear;
QryFoodStyle.SQL.Add('select * from ENT_FOOD_TYPE where FOOD_TYPE='''+DBLkpCmbxInFood.Text+'''');
QryFoodStyle.Open;
if QryFoodStyle.RecordCount<>1 then
BEGIN
showmessage('入库的品种不对!');
exit;
END;
if QryFoodStyle.FieldByName('Food_style').AsString='大豆' then
begin
LblItem1.Enabled:=true;
DBEditItem1.Enabled:=true;
LblItem1.Caption:='纯粮率:';
LblItem2.Enabled:=false;
LblItem3.Enabled:=false;
LblItem4.Enabled:=false;
LblItem5.Enabled:=false;
DBEditItem2.Enabled:=false;
DBEditItem3.Enabled:=false;
DBEditItem4.Enabled:=false;
DBEditItem5.Enabled:=false;
LblFqFat.Enabled:=false;
DBEditFqFat.Enabled:=false;
end;
if QryFoodStyle.FieldByName('Food_style').AsString='大米' then
begin
LblItem1.Enabled:=false;
DBEditItem1.Enabled:=false;
LblItem2.Enabled:=true;
DBEditItem2.Enabled:=true;
LblItem5.Enabled:=true;
LblItem5.Caption:='稻谷率:';
DBEditItem5.Enabled:=true;
LblItem3.Enabled:=false;
LblItem4.Enabled:=false;
DBEditItem3.Enabled:=false;
DBEditItem4.Enabled:=false;
LblFqFat.Enabled:=false;
DBEditFqFat.Enabled:=false;
end;
if QryFoodStyle.FieldByName('Food_style').AsString='小麦' then
begin
LblItem1.Enabled:=false;
DBEditItem1.Enabled:=false;
LblItem2.Enabled:=true;
DBEditItem2.Enabled:=true;
LblItem5.Enabled:=true;
LblItem5.Caption:='容重:';
DBEditItem5.Enabled:=true;
LblItem3.Enabled:=false;
LblItem4.Enabled:=false;
DBEditItem3.Enabled:=false;
DBEditItem4.Enabled:=false;
LblFqFat.Enabled:=false;
DBEditFqFat.Enabled:=false;
end;
if QryFoodStyle.FieldByName('Food_style').AsString='玉米' then
begin
LblItem1.Enabled:=true;
DBEditItem1.Enabled:=true;
LblItem1.Caption:='纯粮率:';
LblItem2.Enabled:=true;
LblItem3.Enabled:=false;
LblItem4.Enabled:=false;
LblItem5.Enabled:=false;
DBEditItem2.Enabled:=true;
DBEditItem3.Enabled:=false;
DBEditItem4.Enabled:=false;
DBEditItem5.Enabled:=false;
LblFqFat.Enabled:=false;
DBEditFqFat.Enabled:=false;
end;
if QryFoodStyle.FieldByName('Food_style').AsString='稻谷' then
begin
LblItem1.Enabled:=true;
DBEditItem1.Enabled:=true;
LblItem1.Caption:='黄粒:';
LblItem2.Enabled:=true;
LblItem3.Enabled:=true;
LblItem4.Enabled:=true;
LblItem5.Enabled:=true;
LblItem5.Caption:='出糙率:';
DBEditItem2.Enabled:=true;
DBEditItem3.Enabled:=true;
DBEditItem4.Enabled:=true;
DBEditItem5.Enabled:=true;
LblFqFat.Enabled:=true;
DBEditFqFat.Enabled:=true;
end;
if QryFoodStyle.FieldByName('Food_style').AsString='油' then
begin
LblItem1.Enabled:=true;
DBEditItem1.Enabled:=true;
LblItem1.Caption:='酸价:';
LblItem2.Enabled:=false;
LblItem3.Enabled:=false;
LblItem4.Enabled:=false;
LblItem5.Enabled:=false;
LblItem5.Caption:='高过氧化值:';
DBEditItem2.Enabled:=false;
DBEditItem3.Enabled:=false;
DBEditItem4.Enabled:=false;
DBEditItem5.Enabled:=false;
LblFqFat.Enabled:=false;
DBEditFqFat.Enabled:=false;
end;
DBEditFqClass.Field.AsString:='';
DBEditImpurity.Field.AsFloat:=0;
DBEditMoisture.Field.AsFloat:=0;
DBEditItem1.Field.AsFloat:=0;
DBEditItem2.Field.AsFloat:=0;
DBEditItem3.Field.AsFloat:=0;
DBEditItem4.Field.AsFloat:=0;
DBEditItem5.Field.AsFloat:=0;
DBEditFqFat.Field.AsFloat:=0;
end;
procedure TFrmRecieveFdBill.DBEditKeyExit(Sender: TObject);
var
QryCX: TQuery;
str: string;
begin
inherited;
if DBEditkey.Text='' then
begin
Showmessage('收货单编号不能为空,请输入!');
DBEditKey.SetFocus;
DBEditKey.Enabled:=true;
exit;
end
else
begin
try
QryCX:= TQuery.Create(nil);
QryCX.DatabaseName := 'LYDB';
QryCX.SQL.Clear;
str:='select * from ENT_INSTACK where INSTACK_ID='''+trim(DBEditKey.Text)+''' and UNIT_ID='+intToStr(DBEditUnitId.Field.AsInteger);
QryCX.SQL.Add(Str);
QryCX.Open;
if QryCX.RecordCount>0 then
begin
showmessage('入库编号重复,请重新输入!');
DBEditKey.SetFocus;
DBEditKey.Enabled:=true;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -