Ejemplo n.º 1
0
MySQLFieldInfo *MySQLResult::getFieldInfo(int64_t field) {
  if (field < 0 || field >= getFieldCount()) {
    return NULL;
  }

  if (!m_localized && !m_fields) {
    if (m_res->fields == NULL) return NULL;
    // cache field info
    setFieldCount(getFieldCount());
    for (int i = 0; i < getFieldCount(); i++) {
      setFieldInfo(i, m_res->fields + i);
    }
  }
  return m_fields + field;
}
Ejemplo n.º 2
0
static bool AddNearByFields( const AcDbObjectId& objId, const CString& func)
{
	CString type = _T("计算参数");
	CString numMine;
	DataHelper::GetPropertyData(objId,_T("邻近层煤层层数"),numMine);
	int dNumMine = _ttoi(numMine);
	if(dNumMine <= 0)
	{
		AfxMessageBox(_T("没有邻近层"));
		return false;
	}

	for (int i = 0; i < dNumMine; i++)
	{
		CString strmi,strX0i,strXi,strEntai;
		strmi.Format(_T("第%d邻近层的煤厚度"),i+1);
		strX0i.Format(_T("第%d邻近层的原始瓦斯含量"),i+1);
		strXi.Format(_T("第%d邻近层的残余瓦斯含量"),i+1);
		strEntai.Format(_T("第%d邻近层的瓦斯涌出率"),i+1);

		FieldInfo fieldInfo;
		fieldInfo.m_dt = DT_NUMERIC;
		fieldInfo.m_minValue = 0;
		fieldInfo.m_maxValue = 999999;
		fieldInfo.m_enable = true;
		fieldInfo.m_showInTooltip = true;
		fieldInfo.m_descr = _T("单位:m");

		FuncFieldHelper::AddField(func,type,strmi);
		FieldHelper::AddField(type,strmi);
		setFieldInfo(type,strmi,fieldInfo);

		FuncFieldHelper::AddField(func,type,strX0i);
		FieldHelper::AddField(type,strX0i);
		fieldInfo.m_descr = _T("单位:m3/t");
		setFieldInfo(type,strX0i,fieldInfo);

		FuncFieldHelper::AddField(func,type,strXi);
		FieldHelper::AddField(type,strXi);
		fieldInfo.m_descr = _T("单位:m3/t");
		setFieldInfo(type,strXi,fieldInfo);

		FuncFieldHelper::AddField(func,type,strEntai);
		FieldHelper::AddField(type,strEntai);
		fieldInfo.m_descr = _T("单位:%");
		fieldInfo.m_enable = false;
		setFieldInfo(type,strEntai,fieldInfo);
	}

	while(dNumMine > 0)
	{
		CString strmi,strX0i,strXi,strEntai;
		strmi.Format(_T("第%d邻近层的煤厚度"),dNumMine+1);
		strX0i.Format(_T("第%d邻近层的原始瓦斯含量"),dNumMine+1);
		strXi.Format(_T("第%d邻近层的残余瓦斯含量"),dNumMine+1);
		strEntai.Format(_T("第%d邻近层的瓦斯涌出率"),dNumMine+1);
		if(FuncFieldHelper::RemoveField(func,type,strmi) 
			&& FuncFieldHelper::RemoveField(func,type,strX0i) 
			&& FuncFieldHelper::RemoveField(func,type,strXi)
			&& FuncFieldHelper::RemoveField(func,type,strEntai))
		{
			dNumMine += 1;
		}
		else
		{
			dNumMine = 0;
		}
	}

	return true;

}