📄 upurpayment.pas
字号:
ParamByName('funit').asstring:=cdssub.fieldbyname('funit').asstring;
ParamByName('ftype').asstring:=cdssub.fieldbyname('ftype').asstring;
ParamByName('fcqty').asfloat:=cdssub.fieldbyname('fqty').asfloat;
ParamByName('fcode').asstring:=cdssub.fieldbyname('fcode').asstring;
ParamByName('years').asinteger:=yy;
ParamByName('months').asinteger:=mm;
execsql;
end;
end;
cdssub.next;
end;
cdssub.EnableControls;
inherited;
cmdStr:='Insert into tptotal(fsid) values('+vartosql(inNumber)+')';
Execsql(cmdStr);
end;
procedure Tfrmpurpayment.BitBtn1Click(Sender: TObject);
var
s,str1,str2,str3,str4:string;
i, ii,jj:integer;
ini:textfile;
Searcht, usercode:string;
begin
inherited;
s:=OpenDialog1.FileName;
if not FileExists(s) then //判断此文件是否存在
showmessage('该文件不存在')
else
begin
AssignFile(ini,s);
reset(ini);
CDSmaster.Append;
// i:=1;
while not eof(ini) do
begin
Readln(ini,usercode);
ii:=length(usercode);
jj:=Pos(',',usercode);
str1:=copy(usercode,1,jj-1);
/////////////////// str1
usercode:= copy(usercode,jj+1,ii-jj);
ii:=length(usercode);
jj:=Pos(',',usercode) ;
str2:=copy(usercode,1,jj-1);
////////////////////// str2
usercode:= copy(usercode,jj+1,ii-jj);
ii:=length(usercode);
jj:=Pos(',',usercode) ;
str3:=copy(usercode,1,jj-1);
/////////////////////////////str3
str4:= copy(usercode,jj+1,ii-jj);
///////////////////////////////////str4
spbtnadd.Click;
CdsSub.Append;
GetsqlData(CDSselectsub,'Vitem','fid','fcode='+vartosql(str1),1);
if CDSselectsub.RecordCount > 0 then
begin
// CDSsub['fid']:=i;
CDSsub['fitemid']:=CDSselectsub['fid'] ;
CDSsub['fcode']:=CDSselectsub['fcode'];
CDSsub['fname']:=CDSselectsub['fname'];
CDSsub['funit']:=CDSselectsub['funit'];
CDSsub['unitqty']:=CDSselectsub['unitqty'];
CDSsub['fqty'] :=strtofloat( str2);
CDSsub['total'] :=CDSselectsub['unitqty']*CDSsub['fqty'];
end;
Grid.SelectedIndex:=7;
//i:=i+1;
// CdsSub.FieldByName('fcode').AsString:=str1;
// CdsSub.FieldByName('fqty').AsString:=str2;
end;
CloseFile(ini);
end;
end;
procedure Tfrmpurpayment.PDJComEdit1ClickButton(Sender: TObject);
begin
inherited;
if cdsmaster.State in [dsedit,dsinsert] then
begin
adoquery1.SQL.Clear;
adoquery1.SQL.Add('select a.fitemid,a.fqty,a.fprice,a.gno,a.colorno,a.color,a.fnote,b.fpurno,b.fprovider,b.fpurer,b.fpurstore,');
adoquery1.SQL.add(' b.frefno,b.fdelivdate,b.fnote as note2,b.fcreauser,b.pno,b.fprice as price2,');
adoquery1.SQL.add(' c.fid,c.fcode,c.fname,c.funit,c.ftype,c.zs from Tstoresub a,Tstore b ,titem c');
adoquery1.SQL.add(' where a.fresid=b.fresid and c.fid=a.fitemid');
if billno.text<>'' then
begin
adoquery1.SQL.add(' and b.pno =:pno');
adoquery1.Parameters.ParamByName('pno').Value:=billno.Text; //批号
end;
if wwDBEdit2.text<>'' then
begin
adoquery1.SQL.add(' and b.frefno =:frefno');
adoquery1.Parameters.ParamByName('frefno').Value:=wwDBEdit2.text; //进货编号
end;
adoquery1.Open;
adoquery1.First;
while not adoquery1.Eof do
begin
spbtnadd.Click;
CdsSub.Append;
GetsqlData(CDSselectsub,'Vitem','fid','fid='+vartosql(adoquery1.fieldbyname('fID').Value),1);
if CDSselectsub.RecordCount > 0 then
begin
CDSsub['fitemid']:=adoquery1.fieldbyname('fID').Value;
CDSsub['fcode']:=CDSselectsub['fcode'];
CDSsub['fname']:=CDSselectsub['fname'];
CDSsub['ftype'] :=CDSselectsub['ftype'];
CDSsub['funit']:=CDSselectsub['funit'];
CDSsub['zs']:=CDSselectsub['zs'];
GetsqlData(CDSselectsub,'vstoresub','colorno','colorno='+vartosql(adoquery1.fieldbyname('colorno').Value),1);
if CDSselectsub.RecordCount > 0 then
CDSsub['color']:=CDSselectsub['color'];
CDSsub['gno'] :=adoquery1.fieldbyname('gno').Value;
CDSsub['colorno'] :=adoquery1.fieldbyname('colorno').Value;
CDSsub['fqty'] := adoquery1.fieldbyname('fqty').Value;
CDSsub['fprice'] := adoquery1.fieldbyname('fprice').Value;
CDSsub['total'] :=adoquery1.fieldbyname('fqty').Value*adoquery1.fieldbyname('fprice').Value;
end;
adoquery1.Next;
end;
if adoquery1.RecordCount>0 then
BEGIN
GetsqlData(CDSselectsub,'Vstore','frefno','frefno='+vartosql(adoquery1.fieldbyname('frefno').asstring),1);
if cdsselectsub.RecordCount>0 then
begin
if CDSselectsub['pno']<>NULL then
CDSmaster['fsaleno']:=CDSselectsub['pno'];//searq.fieldbyname('fpurstore').asstring;//'进货编号';
if CDSselectsub['fpurstore']<>NULL then
CDSmaster['fsalestore']:=CDSselectsub['fpurstore'];//searq.fieldbyname('fpurstore').asstring;//'仓库';
if CDSselectsub['fpurer']<>NULL then
CDSmaster['fsaleer']:=CDSselectsub['fpurer'];//searq.fieldbyname('fpurer').asstring;//'负责人';
if CDSselectsub['fprovider']<>null then
CDSmaster['fprovider']:=CDSselectsub['fprovider'];//searq.fieldbyname('fprovider').asstring;//'供应商';
if CDSselectsub['fnote']<>null then
CDSmaster['fnote']:=CDSselectsub['fnote'];//searq.fieldbyname('fnote').asstring;//'备注';
if CDSselectsub['fdelivdate']<>null then
CDSmaster['fdelivdate']:=CDSselectsub['fdelivdate'];//searq.fieldbyname('fdelivdate').asstring;//'交货日期';
if CDSselectsub['fcreauser']<>null then
CDSmaster['fcreauser']:=CDSselectsub['fcreauser'];//searq.fieldbyname('fcreauser').asstring;//'创建人';
if CDSselectsub['fcreadate'] <>null then
CDSmaster['fcreadate']:=CDSselectsub['fcreadate'];//searq.fieldbyname('fcreadate').asstring;//'订货日期';
end;
END;
// Grid.SelectedIndex:=7;
end;
end;
procedure Tfrmpurpayment.acaddExecute(Sender: TObject);
begin
inherited;
// wwDBLookupCombo1.Text:='亿溢';
end;
procedure Tfrmpurpayment.acdeleteExecute(Sender: TObject);
var
yy,mm,dd:word;
begin
decodedate(wwDBDateTimePicker2.Date,yy,mm,dd);
cdssub.DisableControls;
CDSsub.First;
while not CDSsub.eof do
begin
decodedate(wwDBDateTimePicker2.Date,yy,mm,dd);
adoquery2.SQL.Clear;
adoquery2.SQL.Add('update tpurreturnsub set fcqty=fcqty-:qty where colorno =:cno and gno=:gno ');
adoquery2.sql.add(' and color=:color and zs=:zs and fcode=:fcode and fname=:fname and ck=:ck and years=:years and months=:months');
adoquery2.Parameters.ParamByName('cno').Value:=cdssub.fieldbyname('colorno').Value;
adoquery2.Parameters.ParamByName('gno').Value:=cdssub.fieldbyname('gno').Value;
adoquery2.Parameters.ParamByName('qty').Value:=cdssub.fieldbyname('fqty').Value;
adoquery2.Parameters.ParamByName('color').Value:=cdssub.fieldbyname('color').Value;
adoquery2.Parameters.ParamByName('zs').Value:=cdssub.fieldbyname('zs').Value;
adoquery2.Parameters.ParamByName('fcode').value:=cdssub.fieldbyname('fcode').asstring;
adoquery2.Parameters.ParamByName('fname').Value:=cdssub.fieldbyname('fname').Value;
adoquery2.Parameters.ParamByName('ck').Value:=wwDBLookupCombo1.Text;
adoquery2.Parameters.ParamByName('years').value:=inttostr(yy);
adoquery2.Parameters.ParamByName('months').value:=inttostr(mm);
adoquery2.execsql;
cdssub.Next;
end;
cdssub.EnableControls;
inherited;
end;
procedure Tfrmpurpayment.billnoExit(Sender: TObject);
begin
// inherited;
if CDSmaster.State in [dsEdit,dsinsert] then
begin
GetsqlData(CDSselectsub,'Vitem','fid','fcode='+vartosql(billno.Text),1);
if CDSselectsub.RecordCount > 0 then
begin
// wwdbedit3.Text:=CDSselectsub['fname'];
wwDBComboBox2.Text:=CDSselectsub['ftype'];
wwDBComboBox3.Text:=CDSselectsub['funit'];
end else
begin
MessageDlg('没找到相应的资料 ? ',mtWarning,[MBOK],0);
end;
end;
end;
procedure Tfrmpurpayment.GridColExit(Sender: TObject);
var
ii,jj:integer;
ini:textfile;
str1,s1,str2, cmdStr:string;
begin
inherited;
case grid.SelectedIndex of
4,5,6:begin
if CDSsub.State in [dsEdit,dsinsert] then
begin
with query2 do
begin
SQL.Clear;
sql.add(' select fcode ');
sql.add(' from titem ');
sql.add(' where fcode=:fcode ');
ParamByName('fcode').asstring:=cdssub.fieldbyname('fcode').asstring;
Open;
if recordcount<=0 then
with query1 do
begin
SQL.Clear;
SQL.Add('insert into titem(fcode,fname,funit,ftype)');
sql.add(' values(:fcode,:fname,:funit,:ftype )');
ParamByName('fcode').asstring:=cdssub.fieldbyname('fcode').asstring;
ParamByName('fname').asstring:=cdssub.fieldbyname('fname').asstring;
ParamByName('funit').asstring:=cdssub.fieldbyname('funit').asstring;
ParamByName('ftype').asstring:=cdssub.fieldbyname('ftype').asstring;
execsql;
SQL.Clear;
sql.add(' select fid ');
sql.add(' from titem ');
sql.add(' where fcode=:fcode ');
ParamByName('fcode').asstring:=cdssub.fieldbyname('fcode').asstring;
Open;
if recordcount>0 then
begin
cdssub['fitemid']:=query1.fieldbyname('fid').AsInteger;
end;
end;
end;
/////////////////////
CDSsub['total'] :=strtofloat(floattostrf(CDSsub['fqty']*CDSsub['fprice'],ffFixed,18,2));
end;
end;
end;
end;
procedure Tfrmpurpayment.GridKeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
begin
inherited;
if grid.SelectedIndex=0 then
if char(key)='p' then
if cdssub.State in [dsedit,dsinsert] then
Selectsub;
end;
procedure Tfrmpurpayment.p01Execute(Sender: TObject);
var
ii:integer;
begin
//inherited;
ii:=1;
//showmessage(inttostr(cdssub.recordcount));
{GetAdddata(CDSMaster,Mainview,keyfield,20);
Application.ProcessMessages; //此上2句很重要。 }
adoquery1.SQL.clear;
adoquery1.SQL.Add('delete from Tsalesub where bt is not null');
adoquery1.ExecSQL;
IF CDSSUB.RecordCount<11 then
begin
while ii<11 do
begin
cdssub.Append;
cdssub.fieldbyname('bt').AsString:=inttostr(ii);
applyupdata(CDSsub,subtable,keyfield);
CDSsub.MergeChangeLog;
//showmessage('wait me.........');
// cdssub.Post;
ii:=ii+1;
end;
end;
cdssub.DisableControls;
frMD.LoadFromFile(frname);
frMD.ShowReport;
cdssub.EnableControls;
end;
procedure Tfrmpurpayment.FormCloseQuery(Sender: TObject; var CanClose: Boolean);
begin
inherited;
adoquery1.SQL.clear;
adoquery1.SQL.Add('delete from Tscsub where bt is not null');
adoquery1.ExecSQL;
end;
procedure Tfrmpurpayment.acmodifyExecute(Sender: TObject);
begin
inherited;
bb.Text:=wwdbedit2.text;
end;
end.
procedure Tfrmpurpayment.p05Execute(Sender: TObject);
begin
inherited;
end;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -