RvProject1.Open;
RvTableConnection1.Table:= Tables[ITabSheet];
MyDataView:=RvProject1.ProjMan.NewDataObject(TRaveDataView) as TRaveDataView;
MyDataView.ConnectionName := 'RvTableConnection1';
MyDataView.FullName:='DataView1';以前看到的帖子是这样做的:
CreateFields(trdv,nil,nil,true);
但是我的CreateFields后面只有一个参数Tlist;
MyDataView .CreateFields(Tlist);
我该怎样根据不同的数据表来创建DataView 下面的字段?
给你一个函数,在我机子上运行正常。
procedure Tfrm_SearchResult.CreateDataField(fieldname,dataviewName: string);
var mypage: Travepage;
myDataView: TraveDataView;
myfield: TRaveStringField;
begin
MyPage:=RvProject1.ProjMan.FindRaveComponent('Report2.mainPage',nil) as TRavePage;
myDataView:=RvProject1.ProjMan.FindRaveComponent(DataViewName,mypage) as TRavedataview; myfield:=TRaveStringField.Create(myDataView);
myfield.Parent:=myDataView;
myfield.Name:='datafield'+inttostr(fieldorder)+'new';
fieldorder:=fieldorder+1;
myfield.FieldName:=FieldName;
myfield.FullName:=FieldName;
addcomponent(myfield);
//建立新的字段,tStringfield,字段。
end;顺便我也问一个问题交流一下吧: 我在某些引用了count函数的时候,RAVE编绎会出错,说是类型不匹配:
DataType Excepted: dtstring DataType found: dtInteger 我翻来翻去就是没有找到那个ravedatatext(或者是ravedatamemo)的关于
类型的属性设定。 这几天RAVE是把我给搞惨了我再发一贴,能回答得分吧。
于是我就在SQL语句里把它转化了。str,就这么一个简单的函数,但我编晕了就
给忘了。 顺便邀请到http://expert.csdn.net/Expert/topic/2346/2346993.xml?temp=7.520694E-02
去领点小分。 另,交个朋友如何啊? 一个人思考这些问题太苦闷了。QQ:588527