access_cal.cpp
上传用户:gelin96
上传日期:2017-01-08
资源大小:20993k
文件大小:8k
源码类别:

MTK

开发平台:

C++ Builder

  1. /*****************************************************************************
  2. *  Copyright Statement:
  3. *  --------------------
  4. *  This software is protected by Copyright and the information contained
  5. *  herein is confidential. The software may not be copied and the information
  6. *  contained herein may not be used or disclosed except with the written
  7. *  permission of MediaTek Inc. (C) 2001
  8. *
  9. *****************************************************************************/
  10. /*****************************************************************************
  11.  *
  12.  * Filename:
  13.  * ---------
  14.  *   access_cal.cpp
  15.  *
  16.  * Project:
  17.  * --------
  18.  *   Maui META APP
  19.  *
  20.  * Description:
  21.  * ------------
  22.  *   Calibration result export to Microsoft Access source
  23.  *
  24.  * Author:
  25.  * -------
  26.  *  Andy Ueng (mtk00490)
  27.  *
  28.  *============================================================================
  29.  *             HISTORY
  30.  * Below this line, this part is controlled by PVCS VM. DO NOT MODIFY!!
  31.  *------------------------------------------------------------------------------
  32.  * $Revision$
  33.  * $Modtime$
  34.  * $Log$
  35.  *
  36.  *------------------------------------------------------------------------------
  37.  * Upper this line, this part is controlled by PVCS VM. DO NOT MODIFY!!
  38.  *============================================================================
  39.  ****************************************************************************/
  40. #include <IniFiles.hpp>
  41. #pragma hdrstop
  42. #ifndef  _ACCESS_CAL_H_
  43. #include "access_cal.h"
  44. #endif
  45. //===========================================================================
  46. //===========================================================================
  47. CACCESSCAL::CACCESSCAL( void )
  48. {
  49. }
  50. //---------------------------------------------------------------------------
  51. CACCESSCAL::~CACCESSCAL( )
  52. {
  53. }
  54. //------------------------------------------------------------------------------
  55. bool CACCESSCAL::AddFieldToAccess( TADOTable *p_ADOTab, AnsiString as_fieldname, AnsiString as_fieldvalue )
  56. {
  57.     try
  58.     {
  59.         p_ADOTab->FieldByName(as_fieldname)->AsString = as_fieldvalue;
  60.     }
  61.     catch(...)
  62.     {
  63.         AnsiString as_msg = "add " + as_fieldname + " fields error";
  64.         throw EDatabaseError(as_msg);
  65.         return false;
  66.     }
  67.     return true;
  68. }
  69. //------------------------------------------------------------------------------
  70. bool CACCESSCAL::AddBarcodeToAccess( TADOTable *p_ADOTab, AnsiString as_ID )
  71. {
  72.     if(! AddFieldToAccess( p_ADOTab, "BARCODE", as_ID ) )  return false;
  73.     return true;
  74. }
  75. //------------------------------------------------------------------------------
  76. bool CACCESSCAL::AddPcToAccess( TADOTable *p_ADOTab )
  77. {
  78.     char hostname[256];
  79.     unsigned long len=256;
  80.     GetComputerName( hostname, &len );
  81.     if(! AddFieldToAccess( p_ADOTab, "PC", hostname ) )  return false;
  82.     return true;
  83. }
  84. //------------------------------------------------------------------------------
  85. bool CACCESSCAL::AddDateToAccess( TADOTable *p_ADOTab )
  86. {
  87.     if(! AddFieldToAccess( p_ADOTab, "DATE", DateToStr(Date()) ) )  return false;
  88.     return true;
  89. }
  90. //------------------------------------------------------------------------------
  91. bool CACCESSCAL::AddTimeToAccess( TADOTable *p_ADOTab )
  92. {
  93.     if(! AddFieldToAccess( p_ADOTab, "TIME", CurrentTimeStr() ) )  return false;
  94.     return true;
  95. }
  96. //------------------------------------------------------------------------------
  97. bool CACCESSCAL::AddPassFailToAccess( TADOTable *p_ADOTab, int pass_fail )
  98. {
  99.     if(! AddFieldToAccess( p_ADOTab, "PASS_FAIL", IntToStr(pass_fail) ) )  return false;
  100.     return true;
  101. }
  102. //------------------------------------------------------------------------------
  103. bool CACCESSCAL::AddFailStepToAccess( TADOTable *p_ADOTab, int fail_step )
  104. {
  105.     if(! AddFieldToAccess( p_ADOTab, "FAIL_STEP", IntToStr(fail_step) ) )  return false;
  106.     return true;
  107. }
  108. //------------------------------------------------------------------------------
  109. bool CACCESSCAL::AddAfcFailReasonToAccess( TADOTable *p_ADOTab, int fail_reason_code )
  110. {
  111.     if(! AddFieldToAccess( p_ADOTab, "AFC_FAIL_REASON", IntToStr(fail_reason_code) ) )  return false;
  112.     return true;
  113. }
  114. //------------------------------------------------------------------------------
  115. bool CACCESSCAL::AddRxPathLossFailReasonToAccess( TADOTable *p_ADOTab, int fail_reason_code )
  116. {
  117.     if(! AddFieldToAccess( p_ADOTab, "RX_PATH_LOSS_FAIL_REASON", IntToStr(fail_reason_code) ) )  return false;
  118.     return true;
  119. }
  120. //------------------------------------------------------------------------------
  121. bool CACCESSCAL::AddApcFailReasonToAccess( TADOTable *p_ADOTab, int fail_reason_code )
  122. {
  123.     if(! AddFieldToAccess( p_ADOTab, "APC_FAIL_REASON", IntToStr(fail_reason_code) ) )  return false;
  124.     return true;
  125. }
  126. //------------------------------------------------------------------------------
  127. bool CACCESSCAL::AddAdcFailReasonToAccess( TADOTable *p_ADOTab, int fail_reason_code )
  128. {
  129.     if(! AddFieldToAccess( p_ADOTab, "ADC_FAIL_REASON", IntToStr(fail_reason_code) ) )  return false;
  130.     return true;
  131. }
  132. //---------------------------------------------------------------------------
  133. bool CACCESSCAL::AddCalTimeToAccess( TADOTable *p_ADOTab, AnsiString as_field, int i_time )
  134. {
  135.     float f_time;
  136.     f_time = 1.0*i_time /1000.0;
  137.     try
  138.     {
  139.         p_ADOTab->FieldByName(as_field)->AsFloat = f_time;
  140.     }
  141.     catch(...)
  142.     {
  143.         AnsiString as_msg = "add " + as_field + " field error";
  144.         throw EDatabaseError(as_msg);
  145.         return false;
  146.     }
  147.     return true;
  148. }
  149. //------------------------------------------------------------------------------
  150. bool CACCESSCAL::AddInitTimeToAccess( TADOTable *p_ADOTab, int i_INIT_time )
  151. {
  152.     m_sCalTime.i_INIT_time = i_INIT_time;
  153.     if( ! AddCalTimeToAccess( p_ADOTab, "INIT_TIME", i_INIT_time ) )  return false;
  154.     return true;
  155. }
  156. //------------------------------------------------------------------------------
  157. bool CACCESSCAL::AddAFCTimeToAccess( TADOTable *p_ADOTab, int i_AFC_time )
  158. {
  159.     m_sCalTime.i_AFC_time = i_AFC_time;
  160.     if( ! AddCalTimeToAccess( p_ADOTab, "AFC_TIME", i_AFC_time ) )  return false;
  161.     return true;
  162. }
  163. //------------------------------------------------------------------------------
  164. bool CACCESSCAL::AddRxPathLossTimeToAccess( TADOTable *p_ADOTab, int i_RX_PATH_LOSS_time )
  165. {
  166.     m_sCalTime.i_RX_PATH_LOSS_time = i_RX_PATH_LOSS_time;
  167.     if( ! AddCalTimeToAccess( p_ADOTab, "RX_PATH_LOSS_TIME", i_RX_PATH_LOSS_time ) )  return false;
  168.     return true;
  169. }
  170. //---------------------------------------------------------------------------
  171. bool CACCESSCAL::AddIP2TimeToAccess( TADOTable *p_ADOTab, int i_IP2_time )
  172. {
  173.     m_sCalTime.i_IP2_time = i_IP2_time;
  174.     if( ! AddCalTimeToAccess( p_ADOTab, "IP2_TIME", i_IP2_time ) )  return false;
  175.     return true;
  176. }
  177. //------------------------------------------------------------------------------
  178. bool CACCESSCAL::AddAPCTimeToAccess( TADOTable *p_ADOTab, int i_APC_time )
  179. {
  180.     m_sCalTime.i_APC_time = i_APC_time;
  181.     if( ! AddCalTimeToAccess( p_ADOTab, "APC_TIME", i_APC_time ) )  return false;
  182.     return true;
  183. }
  184. //------------------------------------------------------------------------------
  185. bool CACCESSCAL::AddADCTimeToAccess( TADOTable *p_ADOTab, int i_ADC_time )
  186. {
  187.     m_sCalTime.i_ADC_time = i_ADC_time;
  188.     if( ! AddCalTimeToAccess( p_ADOTab, "ADC_TIME", i_ADC_time ) )  return false;
  189.     return true;
  190. }
  191. //------------------------------------------------------------------------------
  192. bool CACCESSCAL::AddTotalCalTimeToAccess( TADOTable *p_ADOTab )
  193. {
  194.     m_sCalTime.i_Total_cal_time = m_sCalTime.i_INIT_time + m_sCalTime.i_AFC_time +
  195.                                m_sCalTime.i_RX_PATH_LOSS_time + m_sCalTime.i_IP2_time +
  196.                                m_sCalTime.i_APC_time + m_sCalTime.i_ADC_time;
  197.     if( ! AddCalTimeToAccess( p_ADOTab, "TOTAL_CAL_TIME", m_sCalTime.i_Total_cal_time ) )  return false;
  198.     return true;
  199. }