不正常地定义参数对象
AnsiString cEndTime = DateTimeToStr(FormatDateTime("yyyy-mm-dd",Now()));
Form1->ArrayType="TerminalType,Building,Unit,Storey,Room,TNum";
DataModule35->qry3->Close();
DataModule35->qry3->SQL->Clear();
DataModule35->qry3->SQL->Add("Select " + Form1->CdtCol + " from cdtinfo");
DataModule35->qry3->SQL->Add(" where ComputerNo = :ComputerNo and (TerminalType = 3 or TerminalType = 4)");
DataModule35->qry3->SQL->Add(" and Address in (select Author from CardAuthor where CardNo in(Select CardNo from Card where DateTimeToStr(EndTime) <= :cEndTime))");
这样提示“不正常地定义参数对象”错误,我调试了一下,是在Select CardNo from Card where DateTimeToStr(EndTime) <= :cEndTime这一句产生的。
EndTime在access数据库中是“日期/时间”类型的。
[解决办法]
cEndTime参数未赋值吧
DataModule35->qry3->paramts->ParamaByName("cEndTime")->Value = xx;