Recent

Author Topic: My new unfinished DB admin app in Lazarus  (Read 14804 times)

Fantablup

  • Full Member
  • ***
  • Posts: 171
My new unfinished DB admin app in Lazarus
« on: July 03, 2021, 09:38:23 pm »
This is one of the screenshots of my new not yet finished database admin application made in Lazarus.
This is showing the SQL editor.

DonAlfredo

  • Hero Member
  • *****
  • Posts: 1739
Re: My new unfinished DB admin app in Lazarus
« Reply #1 on: July 04, 2021, 09:18:27 am »
This looks very nice !
Are you planning on open sourcing ?

cappe

  • Full Member
  • ***
  • Posts: 191
Re: My new unfinished DB admin app in Lazarus
« Reply #2 on: July 04, 2021, 10:13:05 am »
It seems very nice

Fantablup

  • Full Member
  • ***
  • Posts: 171
Re: My new unfinished DB admin app in Lazarus
« Reply #3 on: July 04, 2021, 12:04:04 pm »
Thanks guys.

I,m not sure about opensource it. Because i have never earned a dime on all my free programs.
I had a free invoice system made in Delphi, and over 1000 company used it, but only got some small unuseful shit in the mail as thanks from some of them. It could be a small ice fishing kit that cost 5 bucks.

I stopped developing it, and removed it from web after over 10 years.
I have re-programmed it for the web with Javascript and Node js, and it is completed. I used 4 years on it. It run on any OS and the web.
I'm planning to replace the Node js with a web server i create in Lazarus, for the desktop version.
But right now i'm developing this DB admin app in Lazarus.

So, i'm not sure of opensource. I need to earn money.
« Last Edit: July 04, 2021, 12:27:28 pm by Fantablup »

Fantablup

  • Full Member
  • ***
  • Posts: 171
Re: My new unfinished DB admin app in Lazarus
« Reply #4 on: July 04, 2021, 03:10:42 pm »
Another screenshot of the DB admin app.

Hansvb

  • Hero Member
  • *****
  • Posts: 618
Re: My new unfinished DB admin app in Lazarus
« Reply #5 on: July 04, 2021, 03:28:38 pm »
Does it handle Oracle spatial tables? I mean what happens if you do select * from table when it has a geometry column? Is the geometry coumn shown in the datagrid?

Fantablup

  • Full Member
  • ***
  • Posts: 171
Re: My new unfinished DB admin app in Lazarus
« Reply #6 on: July 04, 2021, 03:34:37 pm »
I have only created the Firebird 3 class in the application.
When the first version is finished with Firebird 3, and Firebird 4, i will add Oracle and others to it.

But it will first be ready to use with Firebird 3 and 4.

I am using whole classes for each DB and DB version, so it will be really easy to add new DB engines and DB versions to it.
I just copy the DB class and change it to the correct DB engine and DB version. And then add it to the application.

Fantablup

  • Full Member
  • ***
  • Posts: 171
Re: My new unfinished DB admin app in Lazarus
« Reply #7 on: July 08, 2021, 07:50:08 pm »
After a little more work the SQL result list look like this.

Here you can add images, or delete them, or save.

devEric69

  • Hero Member
  • *****
  • Posts: 648
Re: My new unfinished DB admin app in Lazarus
« Reply #8 on: July 08, 2021, 08:23:46 pm »
It's interesting your built-in preview functionality: do you draw the thumbnails yourself in the grid (onPaint \ embed a component like TImage in the cells that really contain a blob-image data), or do you use a component-grid that already knows how to do this?
use: Linux 64 bits (Ubuntu 20.04 LTS).
Lazarus version: 2.0.4 (svn revision: 62502M) compiled with fpc 3.0.4 - fpDebug \ Dwarf3.

Fantablup

  • Full Member
  • ***
  • Posts: 171
Re: My new unfinished DB admin app in Lazarus
« Reply #9 on: July 08, 2021, 08:37:50 pm »
Nahh..
I couldn't find any good grids that do this. I just use a TStringgrid.

I really wanted to make it like a preview that you can use as a working thing you can work on.
Image blobs and text blobs is important for this.
Next i'm gonna add text blobs.
I'm using TImage, TPicture and TBitmap for it in the arrays.
And resizing the thumb images to smaller, so it goes fast. And hold the big image in a TPicture component, so you can see it larger by clicking on it, or save it.

I just add the rows manually, and when it scrolls to a blob field, it loads from the database only once. And the next scrolling scroll fast because it already has the blob.
I use arrays with records and arrays in records to hold the data for the stringgrid.

Sorting is also implemented.

But all this hasn't been easy.
With scrolling issues on different col and row,

It's getting better and better.
« Last Edit: July 08, 2021, 08:41:23 pm by Fantablup »

devEric69

  • Hero Member
  • *****
  • Posts: 648
Re: My new unfinished DB admin app in Lazarus
« Reply #10 on: July 08, 2021, 08:52:16 pm »
Okay. That looks pretty good, near to what was produced by TurboPower. Maybe IBX-TDBControlGrid can do that (never tried; I should try: I prefer to store only the links \ paths towards the "blob files" on the hard disk, remaining outside the database). But if you want to stay independent from any data engine, I understand the choice of TDrawGrid or TStringGrid...
« Last Edit: July 08, 2021, 08:57:33 pm by devEric69 »
use: Linux 64 bits (Ubuntu 20.04 LTS).
Lazarus version: 2.0.4 (svn revision: 62502M) compiled with fpc 3.0.4 - fpDebug \ Dwarf3.

Fantablup

  • Full Member
  • ***
  • Posts: 171
Re: My new unfinished DB admin app in Lazarus
« Reply #11 on: July 08, 2021, 08:56:58 pm »
I just have to finish it first.
Actually i made this string grid as a component, so it could be used by others i guess too.

Everything is happening inside the component.

I will see how it goes.

Fantablup

  • Full Member
  • ***
  • Posts: 171
Re: My new unfinished DB admin app in Lazarus
« Reply #12 on: July 09, 2021, 05:20:13 pm »
Now with blob text.

Seams that i also have to remove the row header, and create one manually.
It does now work well with scrolling and with the small buttoms. The buttoms and memo showing over the header row.

The scrolling top also include the fixed rows, so i just have to remove it and create my own header row that is not in the stringgrid.

devEric69

  • Hero Member
  • *****
  • Posts: 648
Re: My new unfinished DB admin app in Lazarus
« Reply #13 on: July 09, 2021, 05:52:29 pm »
It seems that you are doing component embedding (TMemo) in the TStringGrid's cells (scrollbars are visible for the "text-blob" preview).
use: Linux 64 bits (Ubuntu 20.04 LTS).
Lazarus version: 2.0.4 (svn revision: 62502M) compiled with fpc 3.0.4 - fpDebug \ Dwarf3.

Fantablup

  • Full Member
  • ***
  • Posts: 171
Re: My new unfinished DB admin app in Lazarus
« Reply #14 on: July 09, 2021, 06:06:40 pm »
That's correct  :)

Also the same with the buttons.

I think i just create a tpanel over the header row, and paint it like the original row. And set the z order on the buttons and the memos.
« Last Edit: July 09, 2021, 06:18:09 pm by Fantablup »

 

TinyPortal © 2005-2018