type mytype=record i:integer; name:String; age:integer; end; pMyType=^MyType ..... Function GetInfo(const sID:string='):String;OverLoad; Function GetInfo(sID:String;xx:pMyType):String;OverLoad; ......... ...... Function GetInfo(.... begin frm_selelct;=tFrm_Select.create(Self); With frm_Select do begin if showmodal<>mrok then exit; Result:=xx^.name; ....