static void WriteDrillDataToReport(const AcDbObjectId& objId) { CString GEType = _T("DrillGE"); AcStringArray funcs; AcDbObjectIdArray objIds; if(!GetFuncs(GEType,funcs,objIds)) { //AfxMessageBox(_T("系统中未发现钻孔!")); MyWord->WriteText(_T("系统中未发现钻孔!!"),wdAlignParagraphJustify); MyWord->TypeParagraph(); return; } funcs.remove(_T("高位钻孔参数计算")); funcs.remove(_T("孔口负压参数")); if (objId.isNull()) { ReportAllDrill(objIds,GEType,funcs); } else { ReportOneDrill(objId,GEType,funcs); } }
static bool GetFieldsDatas(const CString& type, const CString& func, const AcDbObjectId& objId,AcStringArray& fields,AcStringArray& datas) { fields.removeAll(); datas.removeAll(); if(!FuncFieldHelper::GetFields(func,type,fields)) return false; fields.remove(_T("钻孔名称")); for(int i = 0; i < fields.length(); i++) { CString strData; if(!DataHelper::GetPropertyData(objId,fields[i].kACharPtr(),strData)) return false; DealIntListDatas(fields[i].kACharPtr(),strData); datas.append(strData); } return true; }