Buenas tardes,
Foro,
Ya pude hacer dinamico un pagecontrol, con "n" tabsheet y cada tabsheet con su grid y cada grid con su Datasource y cada dataset.
Codigo:
Código Delphi
[-]
with sk_ValidaEmpresas do begin
First;
while not Eof do begin
tt := TTabSheet.Create(Self);
tt.PageControl := PageControlIngresos;
tt.Caption := FieldByName('D_Empresa_Corta').AsString;
tt.Name := FieldByName('K_Empresa').AsString;
sg := TwwDbGrid.Create(self);
ds := TDataSource.Create(Self);
sp := TStoredProc.create(self);
ds.Name := 'ds_'+tt.Name;
sg.Parent := tt;
sg.Align := alClient;
sg.Name := 'Gr'+tt.Name;
sp.DatabaseName :='Maveriyl';
sp.StoredProcName :='gp_PresupuestosPorEmpresa';
ds.DataSet := sp; sg.DataSource := ds;
ds.AutoEdit := True;
ds.Enabled := True;
sp.Name := 'Sp'+tt.Name;
sp.Params.Clear;
sp.Params.CreateParam(ftString,'@k_empresa',ptInput);
sp.Params.CreateParam(ftDateTime,'@F_Inicial',ptInput);
sp.Params.CreateParam(ftDateTime,'@F_Final',ptInput);
sp.ParamByName('@k_empresa').AsString := FieldByName('K_Empresa_Real').AsString;
sP.ParamByName('@F_Inicial').AsDateTime := F_Inicial.Date;
sP.ParamByName('@F_Final').AsDateTime := F_Final.Date;
try
sP.Open;
cuantos := sp.recordcount;
Except
MessageDlg('Procedimiento no pudo ser Ejecutado',mtWarning,[mbOk],0);
end;
Next;
end;
end;
Me funciona excelente, el problema es que ahora no se como borrar los datasource que fueron creados en tiempo de ejecucion
Que me falta ??