Solved

Delphi Programming question

Posted on 1997-09-24
2
132 Views
Last Modified: 2010-04-04
I would like to "Pack" my paradox-table at run-time. By packing I am refering to deleting empty records. In the Database Desktop you can do this when selecting "Restructure", but I want this to be automatic within my application.

I use Delphi Developer 2.0.

Thanks!
Erik N
0
Comment
Question by:Erik N
2 Comments
 
LVL 2

Accepted Solution

by:
Waldek earned 0 total points
ID: 1346161
Try this
  uses  DBIProcs, DBITypes, DBIErrs;

  function PackTable(table:TTable; db:TDatabase):DBIResult;
  var
    crtd: CRTblDesc;
  begin
    Result := DBIERR_NA;
    with table do if Active then Active := False;
    with db do if not Connected then Connected := True;
    FillChar(crtd,SizeOf(CRTblDesc),0);
    StrPCopy(crtd.szTblName,table.TableName);
    crtd.bPack := True;
    Result := DbiDoRestructure(db.Handle,1,@crtd,nil,nil,nil,FALSE);
  end;

Example of use:

  procedure TForm1.Button1Click(Sender: TObject);
  begin
    if PackTable(Table1,DataBase1) = DBIERR_NONE then .....
    else MessageBeep(0);
  end;
0
 

Author Comment

by:Erik N
ID: 1346162
Good help there Waldek. Thanx!
Erik N.
0

Featured Post

3 Use Cases for Connected Systems

Our Dev teams are like yours. They’re continually cranking out code for new features/bugs fixes, testing, deploying, testing some more, responding to production monitoring events and more. It’s complex. So, we thought you’d like to see what’s working for us.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Objective: - This article will help user in how to convert their numeric value become words. How to use 1. You can copy this code in your Unit as function 2. than you can perform your function by type this code The Code   (CODE) The Im…
In my programming career I have only very rarely run into situations where operator overloading would be of any use in my work.  Normally those situations involved math with either overly large numbers (hundreds of thousands of digits or accuracy re…
This tutorial gives a high-level tour of the interface of Marketo (a marketing automation tool to help businesses track and engage prospective customers and drive them to purchase). You will see the main areas including Marketing Activities, Design …
In a recent question (https://www.experts-exchange.com/questions/28997919/Pagination-in-Adobe-Acrobat.html) here at Experts Exchange, a member asked how to add page numbers to a PDF file using Adobe Acrobat XI Pro. This short video Micro Tutorial sh…

778 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question