13,870
社区成员




bool TDBPoolProcess::OpenQryProc(AnsiString strTmpSQL)
{
try
{
DMCadpm->QryTmp->Close();
DMCadpm->QryTmp->SQL->Clear();
DMCadpm->QryTmp->SQL->Add(strTmpSQL);
DMCadpm->QryTmp->ExecSQL();
DMCadpm->QryTmp->Close();
return true;
}
catch(...)
{
return false;
}
}
bool TDesignWin::SaveSingleWinInfo()
{
try
{
AnsiString strSjRq = DateToStr(Date());
AnsiString strTmpSQL = "insert into DesignTmpWinPara(DesignId,DesignBh,Wkuang,Hkuang,WinDoorAmount,TotalArea,Jftdh,DesignGraphCode,WinDoorCode,FirstBoard,BuildingBh,FixPlace,DesignRemark,ProjectCode,FactoryCode,SeriesCode,DesignWinType,designDate,SeriesName,FactoryJc)";
strTmpSQL += " select DesignId,BK_DesignBh,BK_Wkuang,BK_Hkuang,BK_WinDoorAmount,BK_TotalArea,BK_Jftdh,BK_DesignGraphCode,BK_WinDoorCode,BK_FirstBoard,BK_BuildingBh,BK_FixPlace,BK_DesignRemark,BK_ProjectCode,BK_FactoryCode,BK_SeriesCode,0,'";
strTmpSQL += strSjRq + "',BK_SeriesName,BK_FactoryJc from DesignTmpSingleWinPara where DesignId=" + IntToStr(m_nDesignID);
DBOperate->OpenQryProc(strTmpSQL);
// 在这里弹出一个对话框,等待两三秒再单击“确定”,后面SQL语句就能执行成功(DesignTmpMaterialBill表中有结果),如果这里不“停顿”,则后面的SQL语句就执行不成功(DesignTmpMaterialBill表中没有结果)。
Application->MessageBox("insert DesignTmpWinPara_end!","提示",64);
strTmpSQL = "insert into DesignTmpMaterialBill(MaterialID,MaterialLength,MaterialWidth,MaterialAmount,BoardFlag,LinkRemark,UsePlace,MaterialRemark,UseScope,MaterialType,Compositor,ProjectCode,FactoryCode,SeriesCode,DesignId)";
strTmpSQL += " select MaterialID,MaterialLength,MaterialWidth,sum(MaterialAmount) as MaterialAmount,BoardFlag,LinkRemark,UsePlace,MaterialRemark,UseScope,MaterialType,Compositor,ProjectCode,FactoryCode,SeriesCode,DesignId from DesignLSMaterialBill where DesignId=" + IntToStr(m_nDesignID);
strTmpSQL += " group by MaterialID,MaterialLength,MaterialWidth,BoardFlag,LinkRemark,UsePlace,MaterialRemark,UseScope,MaterialType,Compositor,ProjectCode,FactoryCode,SeriesCode,DesignId";
DBOperate->OpenQryProc(strTmpSQL);
return true;
}
catch(...)
{
m_strErrorMsg = "保存窗型设计信息时出错!";
return false;
}
}
TDesignWin NewDesignWin;
if (!NewDesignWin.SingleWinCompute(strErrorMsg))
{
Screen->Cursor=crDefault;
Application->MessageBox(("材料计算失败!" + strErrorMsg).c_str(),"提示",64);
return;
}