电脑故障

位置:IT落伍者 >> 电脑故障 >> 浏览文章

进销存管理系统销售管理功能的实现(二)[3]


发布日期:2020/4/4
 
——此文章摘自《Delphi 数据库开发经典案例解析》定价特价购买>>http://tracklinktechcn/?m_id=dangdang&a_id=A&l=&l_type= width= height= border= nosave>

//保存销售单销售单明细数据

procedure ToutputButtonClick(Sender: TObject);

var

maxnummaxnumtempinputnuminputnum:string;

newnumnewnumi:integer;

begin

//计算销售单中最大编号以便插入新的销售单数据时编号不沖突

adoqueryClose;

adoquerySQLClear;

adoquerySQLAdd(select max(编号) 最大编号 from 销售单);

adoqueryOpen;

maxnum:=adoqueryFieldByName(最大编号)asstring;

//对读出的编号进行截取并将其转换为整数值字段太长时可以不能用strtoint来转换

//防止插入第一条记录时出错

if (maxnum=)or(maxnum= ) then

temp:=

else

temp:=copy(maxnum);

//新插入的销售单编号为插入前的最大编号+

newnum:=strtoint(temp)+;

//重新组合编码

if length(inttostr(newnum))= then

inputnum:=+inttostr(newnum);

if length(inttostr(newnum))= then

inputnum:=+inttostr(newnum);

if length(inttostr(newnum))= then

inputnum:=+inttostr(newnum);

if length(inttostr(newnum))= then

inputnum:=+inttostr(newnum);

if length(inttostr(newnum))= then

inputnum:=inttostr(newnum);

//计算销售单明细最大编号以便插入新的销售单明细数据时编号不沖突

adoqueryClose;

adoquerySQLClear;

adoquerySQLAdd(select max(编号) 最大编号 from 销售单明细);

adoqueryOpen;

maxnum:=adoqueryFieldByName(最大编号)asstring;

//防止插入第一条记录时出错

if (maxnum=)or(maxnum= ) then

temp:=

else

temp:=copy(maxnum);

newnum:=strtoint(temp);

//由于销售单明细数据可能由很多条因此在下面的循环中销售单明细循环种再编号和组合编码

//插入新的销售单和销售单明细

//如果客户号为空或者时没有销售单明细数据则取消插入

if (comboboxText=)or(editText=) then

showmessage(客户号不能为空且销售单明细数据必须完整)

right>[http://developcsaicn/delphi/htm>] [http://developcsaicn/delphi/htm>] [] [http://developcsaicn/delphi/htm>]

上一篇:进销存管理系统销售管理功能的实现(二)[4]

下一篇:进销存管理系统销售管理功能的实现(二)[2]