毕业论文论文范文课程设计实践报告法律论文英语论文教学论文医学论文农学论文艺术论文行政论文管理论文计算机安全
您现在的位置: 毕业论文 >> 论文 >> 正文

C++物流管理系统(功能结构图+源代码+论文参考文献) 第11页

更新时间:2010-3-25:  来源:毕业论文
C++物流管理系统(功能结构图+源代码+论文参考文献) 第11页
图9  库存盘点模块运行界面
 设计步骤
(1)与库存盘点模块对应的类为CDInventory,它是从业务基类CDOperation直接派生而来。
 代码分析
(1)当用户向表格内录入条型码,系统自动根据条型码查询出指定商品信息,并显示出来。
void CDInventory::OnCellKillFocus()
{
 CString sCode,sSQL;
 RxRecordset rst;
 if(this->m_Grid.GetCol()==0)
 {
  sCode=m_Grid.GetItemText(m_Grid.GetRow(),0);
  sSQL.Format("SELECT * FROM 商品信息表 WHERE 条形码='%s'",sCode);
  rst.Open(sSQL,adCmdText); 
  if(rst.GetRecordCount()<1)
   return;
  m_Grid.SetItemText(m_Grid.GetRow(),1,rst.GetFieldValue("名称"));
  m_Grid.SetItemText(m_Grid.GetRow(),2,rst.GetFieldValue("规格"));
  m_Grid.SetItemText(m_Grid.GetRow(),3,rst.GetFieldValue("产地"));
  m_Grid.SetItemText(m_Grid.GetRow(),4,rst.GetFieldValue("计量单位"));
 }
}
(2)当用户更改某单元格的值时,系统自动通过提示窗口显示出适当的提示内容。这段代码可算是此类中最有特色的部分。
void CDInventory::OnCellSetFocus()
{
 RxRecordset rst;
 CString sSQL,sName,sSpec,sAddr,sCode,sStore;
 this->m_EdtStore.GetWindowText(sStore);
 sStore=ado.FieldToOtherField("仓库信息表","仓库名称",sStore,"编号",1);
 switch(this->m_Grid.GetCol()){
 case 1:
  {
   rst.Open("SELECT DISTINCT 名称,简称 from 商品信息表",adCmdText);  
   m_Grid.m_Edit.NumberOnly(false);
   m_Grid.m_Edit.PopHide=false;
   m_Grid.m_Edit.EnterNumber=0;    
   m_Grid.m_Edit.ClearAll();
   m_Grid.m_Edit.StartUpAssciation=true;
   m_Grid.m_Edit.SetRecordset(rst);
   m_Grid.m_Edit.SetSelectField("名称");
   m_Grid.m_Edit.AutoPosition();
   break;
  }
 case 2: {
   m_Grid.m_Edit.NumberOnly(false);
   m_Grid.m_Edit.PopHide=false;
   m_Grid.m_Edit.EnterNumber=0;    
   m_Grid.m_Edit.ClearAll();
   sName=m_Grid.GetItemText(m_Grid.GetRow(),1);
   sSQL.Format("SELECT DISTINCT 名称,规格 FROM 商品信息表 \
   WHERE 名称='%s'",sName);
   rst.Open(sSQL,adCmdText);  
   m_Grid.m_Edit.StartUpAssciation=false;
   m_Grid.m_Edit.SetRecordset(rst);
   m_Grid.m_Edit.SetSelectField("规格");
   m_Grid.m_Edit.AutoPosition();
   break;
  }
 case 3: {
   m_Grid.m_Edit.NumberOnly(false);
   m_Grid.m_Edit.PopHide=false;
   m_Grid.m_Edit.EnterNumber=0;    
   m_Grid.m_Edit.ClearAll();
   sName=m_Grid.GetItemText(m_Grid.GetRow(),1);
   sSpec=m_Grid.GetItemText(m_Grid.GetRow(),2);
   sSQL.Format("SELECT DISTINCT 名称,产地 from 商品信息表 \
   WHERE 名称='%s' AND 规格='%s'",sName,sSpec);
   rst.Open(sSQL,adCmdText);  
   m_Grid.m_Edit.StartUpAssciation=false;
   m_Grid.m_Edit.SetRecordset(rst);
   m_Grid.m_Edit.SetSelectField("产地");
   m_Grid.m_Edit.AutoPosition();
   break;
  }
 case 4: {
   m_Grid.m_Edit.NumberOnly(false);
   m_Grid.m_Edit.PopHide=false;
   m_Grid.m_Edit.EnterNumber=0;    
   m_Grid.m_Edit.ClearAll();
   sName=m_Grid.GetItemText(m_Grid.GetRow(),1);
   sSpec=m_Grid.GetItemText(m_Grid.GetRow(),2);
   sAddr=m_Grid.GetItemText(m_Grid.GetRow(),3);
   sSQL.Format("SELECT * from 商品信息表 WHERE 名称='%s' AND \
   规格='%s' AND 产地='%s'",sName,sSpec,sAddr);
   rst.Open(sSQL,adCmdText);
   this->m_Grid.SetItemText(m_Grid.GetRow(),0,rst.GetFieldValue("条形码"));
   sSQL.Format("SELECT DISTINCT 名称,计量单位 from 商品信息表 \
   WHERE 名称='%s' AND 规格='%s' AND 产地='%s'",sName,sSpec,sAddr);
   rst.Open(sSQL,adCmdText);
   m_Grid.m_Edit.StartUpAssciation=false;
   m_Grid.m_Edit.SetRecordset(rst);
   m_Grid.m_Edit.SetSelectField("计量单位");
   m_Grid.m_Edit.AutoPosition();
   break;
  }
 case 5: {
   sCode=m_Grid.GetItemText(m_Grid.GetRow(),0);
   sSQL.Format("SELECT a.名称,b.库存数量 from 商品信息表 a inner join \
   库存信息表 b on a.条形码=b.商品条形码  WHERE a.条形码='%s' \
   AND b.仓库编号=%s",sCode,sStore);
   rst.Open(sSQL,adCmdText);  
   if(rst.GetRecordCount()<1)
    m_Grid.m_Edit.SetWindowText("0");
   else
    m_Grid.m_Edit.SetWindowText(rst.GetFieldValue("库存数量"));

 << 上一页  [11] [12] [13] [14] [15] [16] [17] [18] 下一页

C++物流管理系统(功能结构图+源代码+论文参考文献) 第11页下载如图片无法显示或论文不完整,请联系qq752018766
设为首页 | 联系站长 | 友情链接 | 网站地图 |

copyright©751com.cn 辣文论文网 严禁转载
如果本毕业论文网损害了您的利益或者侵犯了您的权利,请及时联系,我们一定会及时改正。