remote_commodity.cpp 3.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114
  1. // remote_commodity.h : CTblRemote_Commodity 类的实现
  2. // CTblRemote_Commodity 实现
  3. // 代码生成在 2017年09月30日, 14:22
  4. #include "stdafx.h"
  5. #include "remote_commodity.h"
  6. IMPLEMENT_DYNAMIC(CTblRemote_Commodity, CRecordset)
  7. CTblRemote_Commodity::CTblRemote_Commodity(CDatabase* pdb)
  8. : CRecordset(pdb)
  9. {
  10. m_commodity_id = 0;
  11. m_commodity_name = _T("");
  12. m_commodity_remark = _T("");
  13. m_nFields = 3;
  14. m_nDefaultType = dynaset;
  15. }
  16. //#error 安全问题:连接字符串可能包含密码。
  17. // 此连接字符串中可能包含明文密码和/或其他重要
  18. // 信息。请在查看完此连接字符串并找到所有与安全
  19. // 有关的问题后移除 #error。可能需要将此密码存
  20. // 储为其他格式或使用其他的用户身份验证。
  21. CString CTblRemote_Commodity::GetDefaultConnect()
  22. {
  23. return _T("DSN=internal;Trusted_Connection=Yes;APP=Microsoft\x00ae Visual Studio\x00ae 2008;WSID=DESKTOP-5ILISFF;DATABASE=Internal;");
  24. }
  25. CString CTblRemote_Commodity::GetDefaultSQL()
  26. {
  27. return _T("[dbo].[remote_commodity]");
  28. }
  29. void CTblRemote_Commodity::DoFieldExchange(CFieldExchange* pFX)
  30. {
  31. pFX->SetFieldType(CFieldExchange::outputColumn);
  32. // RFX_Text() 和 RFX_Int() 这类宏依赖的是
  33. // 成员变量的类型,而不是数据库字段的类型。
  34. // ODBC 尝试自动将列值转换为所请求的类型
  35. RFX_Long(pFX, _T("[commodity_id]"), m_commodity_id);
  36. RFX_Text(pFX, _T("[commodity_name]"), m_commodity_name);
  37. RFX_Text(pFX, _T("[commodity_remark]"), m_commodity_remark);
  38. }
  39. /////////////////////////////////////////////////////////////////////////////
  40. // CTblRemote_Commodity 诊断
  41. #ifdef _DEBUG
  42. void CTblRemote_Commodity::AssertValid() const
  43. {
  44. CRecordset::AssertValid();
  45. }
  46. void CTblRemote_Commodity::Dump(CDumpContext& dc) const
  47. {
  48. CRecordset::Dump(dc);
  49. }
  50. #endif //_DEBUG
  51. /************************************************************************/
  52. /* 函数:[10/5/2017 IT];
  53. /* 描述:;
  54. /* 参数:;
  55. /* [IN] :;
  56. /* [OUT] :;
  57. /* [IN/OUT] :;
  58. /* 返回:void;
  59. /* 注意:;
  60. /* 示例:;
  61. /*
  62. /* 修改:;
  63. /* 日期:;
  64. /* 内容:;
  65. /************************************************************************/
  66. void CTblRemote_Commodity::GetReturnValue(IN CArray<CStringArray, CStringArray>& AryValue, IN CDatabase* pDatabase, IN CString strFilter)
  67. {
  68. CRecordset tagSet(pDatabase);
  69. CString strTemp = _T("select count(*) as cot from [remote_commodity]");
  70. if ( !strFilter.IsEmpty() )
  71. strTemp += _T(" where ") + strFilter;
  72. tagSet.Open(CRecordset::forwardOnly, strTemp);
  73. tagSet.GetFieldValue(_T("cot"), strTemp);
  74. tagSet.Close();
  75. // 2.查询指定条件记录;
  76. DWORD dwCount = atol(strTemp);
  77. DWORD dwOldSize = AryValue.GetSize();
  78. AryValue.SetSize(dwOldSize + dwCount, 1);
  79. DWORD dwIndex = dwOldSize == 0 ? 0 : dwOldSize - 1;
  80. CTblRemote_Commodity tagRst(pDatabase);
  81. if ( !strFilter.IsEmpty() )
  82. tagRst.m_strFilter = strFilter;
  83. tagRst.Open();
  84. while( !tagRst.IsEOF() )
  85. {
  86. AryValue.ElementAt(dwIndex).RemoveAll();
  87. strTemp.Format(_T("%d"),tagRst.m_commodity_id);
  88. AryValue.ElementAt(dwIndex).Add(strTemp); // 0.注释;
  89. AryValue.ElementAt(dwIndex).Add(tagRst.m_commodity_name); // 1.注释;
  90. AryValue.ElementAt(dwIndex).Add(tagRst.m_commodity_remark); // 2.注释;
  91. dwIndex++;
  92. if ( AryValue.GetSize() <= dwIndex )
  93. break;
  94. tagRst.MoveNext();
  95. }
  96. AryValue.SetSize(dwIndex,1);
  97. tagRst.Close();
  98. }