ADO+acess仓库管理系统的自动实现(85分)

  • 主题发起人 主题发起人 BODY2001
  • 开始时间 开始时间
B

BODY2001

Unregistered / Unconfirmed
GUEST, unregistred user!
一个窗体为材料出库使用的DBGrid,当双击击DBGrid时弹出另一窗体(当前库存)
选中材料‘确定’后,材料的名称,单位,编号都自动拷贝到材料出库窗体的DBGrid
 
{按确定后应该可以得到材料编号,然后在出库窗体中用QUERY查询出记录显示到DBGRID,如果你}

等等,DBGRID中的列是不能随意加的,必须和数据集通过DATASOURCE连起来,你若要实现上面的功能最好不要用数据绑定,否则操作
起来会很麻烦,而且绑定数据库时对于错误保护以及显示都不好控制,可以考虑其它GRID,比如XLGRID,TOPGRID,就连STRINGTRID都可以啊

 
用dbedit,dblabel等控件,跟你的dbgrid同一个datasource,这样当点击时,跟dbgrid显示
同一个数据的内容。不过这样的坏处是可以直接修改数据库的内容。

 
一个窗体为材料出库使用的DBGrid,当双击击DBGrid时弹出另一窗体(当前库存)
选中材料‘确定’后,材料的名称,单位,编号都自动拷贝到材料出库窗体的DBGrid
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
在dbgid的keydown or keypress 中写代码,调用另一个窗体(fmlist),在fmlist中放置
dbgrid,显示库存。当用户选择了一个材料后,把当前的纪录相关信息复制给出库单的细表

 
其实就直接对相关数据表进行读写就可以了,不必要管DBGrid,记录变化会自动
显示到DBGrid。
 
在DBGrid已有记录时
1:首先在弹出窗口form2中定义函数
function Showdata(var name,unit,id:string ) : Integer;
begin
Result := ShowModal;
if Result = mrOk then
begin
name := //材料名称;
unit := //材料单位
id := //材料编码
end;

end;


2:在form1的DBGrid的onDblClick事件中定义
var sName,sUnit,sId
begin
sName=''
sUnit=''
sId=''
if form2.ShowData(sName,sUnit,sId) = mrOk then
//将sName,sUnit,sId分别更新数据库相应字段,写入后在DBGrid显示出来
end
end
 
多人接受答案了。
 
后退
顶部