BillInfoLookup.cpp
上传用户:sunh8215
上传日期:2010-02-13
资源大小:1616k
文件大小:3k
源码类别:

酒店行业

开发平台:

Visual C++

  1. // BillInfoLookup.cpp : implementation file
  2. //
  3. #include "stdafx.h"
  4. #include "qq.h"
  5. #include "BillInfoLookup.h"
  6. #ifdef _DEBUG
  7. #define new DEBUG_NEW
  8. #undef THIS_FILE
  9. static char THIS_FILE[] = __FILE__;
  10. #endif
  11. /////////////////////////////////////////////////////////////////////////////
  12. // CBillInfoLookup dialog
  13. CString CBillInfoLookup::STRINGS[100]={""};
  14. CBillInfoLookup::CBillInfoLookup(CWnd* pParent /*=NULL*/)
  15. : CDialog(CBillInfoLookup::IDD, pParent)
  16. {
  17. //{{AFX_DATA_INIT(CBillInfoLookup)
  18. // NOTE: the ClassWizard will add member initialization here
  19. //}}AFX_DATA_INIT
  20. BillCode = _T("");
  21. HandCode = _T("");
  22. Sum = 0;
  23. Paid = 0;
  24. Rebate = _T("");
  25. Striked = FALSE;
  26. bSuccess=false;
  27. }
  28. void CBillInfoLookup::DoDataExchange(CDataExchange* pDX)
  29. {
  30. CDialog::DoDataExchange(pDX);
  31. //{{AFX_DATA_MAP(CBillInfoLookup)
  32. DDX_Control(pDX, IDC_COMBO1, m_InfoLookup_BillCode);
  33. //}}AFX_DATA_MAP
  34. }
  35. BEGIN_MESSAGE_MAP(CBillInfoLookup, CDialog)
  36. //{{AFX_MSG_MAP(CBillInfoLookup)
  37. //}}AFX_MSG_MAP
  38. END_MESSAGE_MAP()
  39. /////////////////////////////////////////////////////////////////////////////
  40. // CBillInfoLookup message handlers
  41. BOOL CBillInfoLookup::OnInitDialog() 
  42. {
  43. CDialog::OnInitDialog();
  44. HICON m_hIcon=AfxGetApp()->LoadIcon(IDR_MAINFRAME2);
  45. this->SetIcon(m_hIcon,true);
  46. // TODO: Add extra initialization here
  47. m_acCombo.Init(GetDlgItem(IDC_COMBO1));
  48. if(!m_BillInfoSet.Open(AFX_DB_USE_DEFAULT_TYPE))
  49. {
  50. MessageBox("查询数据库失败或者数据库没有连接!",
  51.        "数据库错误",
  52.    MB_OK
  53.       );
  54. return false;
  55. }
  56. InitDate();//
  57. m_BillInfoSet.MoveFirst();//move to the first record
  58. int i=0;
  59.     while(!m_BillInfoSet.IsEOF())
  60. {
  61.         STRINGS[i]=m_BillInfoSet.m_BillCode;
  62.          m_BillInfoSet.MoveNext();
  63.  i++;
  64. }
  65.     m_BillInfoSet.Close();//关闭数据库
  66.     for (int j=0;(!STRINGS[j].IsEmpty()); j++)
  67. {
  68. m_acCombo.GetStringList().Add(STRINGS[j].GetBuffer(STRINGS[j].GetLength()));
  69. }
  70. return TRUE;  // return TRUE unless you set the focus to a control
  71.               // EXCEPTION: OCX Property Pages should return FALSE
  72. }
  73. void CBillInfoLookup::OnOK() 
  74. {
  75. // TODO: Add extra validation here
  76. CString str;
  77. m_InfoLookup_BillCode.GetWindowText(str);
  78.     if(str=="")
  79. {
  80. MessageBox("请输入帐单号码!","手牌号错误",MB_OK);
  81. return ;
  82. }
  83. if(!m_BillInfoSet.Open(AFX_DB_USE_DEFAULT_TYPE))
  84. {
  85. MessageBox("查询数据库失败或者数据库没有连接!",
  86. "数据库错误",
  87. MB_OK
  88.       );
  89. bSuccess=false;
  90. return ;
  91. }
  92. bool bInSQL=false;//是否存在这个数据记录
  93. m_BillInfoSet.MoveFirst();
  94. while(!m_BillInfoSet.IsEOF())
  95. {
  96.          if(m_BillInfoSet.m_BillCode==str)
  97.  {
  98.  bInSQL=true;
  99.  break;
  100.  }
  101.  else bInSQL=false;
  102.          m_BillInfoSet.MoveNext();
  103. }
  104. ///////////////////////////////////////////////////////////
  105. // 查询成功的话保存得到的数据
  106.  if(bInSQL)
  107.  {
  108. BillCode=m_BillInfoSet.m_BillCode;
  109.     HandCode=m_BillInfoSet.m_HandCode;
  110. Sum=m_BillInfoSet.m_Sum;
  111. Paid=m_BillInfoSet.m_Paid;
  112. Rebate=m_BillInfoSet.m_Rebate;
  113.     Striked=m_BillInfoSet.m_Striked;
  114. bSuccess=true;
  115.  }
  116.  else
  117.  {
  118.  MessageBox("该记录不存在!","数据库错误",MB_OK);
  119.  bSuccess=false;
  120.  m_BillInfoSet.Close();//关闭数据库返回
  121.  return ;
  122.  }
  123.     ////保存数据完成关闭数据库
  124.     m_BillInfoSet.Close();
  125. CDialog::OnOK();
  126. }
  127. void CBillInfoLookup::InitDate()
  128. {
  129.    for(int i=0;i<100;i++)
  130.    {
  131.    STRINGS[i]="";
  132.    }
  133. }