Transitioning to the New Grids

PW
by Peter H. van Wijk13 views·Updated Oct 7, 2011
Powered by AI

Need to present on this topic?

Create your own polished presentation in minutes. Just describe what you need.

Free to try, no credit card required

Transcript

Goal of the Presentation

  • To help you convert
  • Give maybe some ideas of what can be done

To help you convert

  • Get it done fairly right
  • Get it done within time constraints.

Give maybe some ideas of what can be done

  • But there is so much what can be done.

History

Some History

  • Older no Clue
  • 2.3b hardly a Clue
  • 3.0
  • 3.2
  • Vdf 4 - 15.1

New Grid Classes in 16/16.1

Should I convert?

Order of Work

- Read the help and Doc in alfa

- Gone through the class code.

- Played with samples.

-Did some debugging with the samples for better understanding

  • The Timer
  • That makes tracking bugs hard.

Sort out all the special stuff in old classes and how to convert. Just to name a few: (show how it looks and works)

  • Decimals, in the old grid it needed to be right aligned. And now
  • Conditionally skipping columns
  • Resizing grid, resize one column.
  • Location of the prompt list dialog (not a 100% done)
  • Prompt_Callback
  • Beginning_of_data too much used with me.

object doesn't exist problem, solved at class level

  • OnRelationalPromptListError I defaulted that in my Class
  • With subclassing you have to do it 3 times.

Well maybe not, but is at first easier.

What new features do I want to use. Prioritize for first revision

  • Column reordering in dbGrid and validation
  • Freeze Column NICE.
  • Storing layout, Later
  • Well most new features I use are at the non-db stuff
  • Non db Prompt list, create one in 16.0 is now included in 16.1
  • ToolTip is nice

Function OnGetTooltip

  • Hidden columns

Very nice and helpfull

  • Special look and feel with

Procedure OnSetDisplayMetrics

  • Static Prompt lists and multi select. I can use that.
  • How about the outlook grid.

That would be nice……….

How do I want my look and feel of the new grid.

  • Fonts. What do you want.
  • Vertical scrollbar not nice at all.
  • Size of columns hmmmm. Also not easy working in design
  • Old Style new style editing.

For me fast data entry. Df/vdf has always been great

End-user

  • it works differently.
  • The mouse scroll to end in dbGrid does not bring it to last record.
  • New style editing in end user testing was not liked at all.
  • Page down/up there is a delay
  • No live implementation yet. Next month the first one.
  • Well at the moment some are live and well accepted. Had hardly any problem. Some key shortcuts missing. Also in higher data entry volume I did not have complaints.

Ok start to convert.

  • How to that the "less hard" way.
  • Automated, no will not work. Too much work to get close and still work needed.
  • When you get a hang of it, it goes fairly quickly

I did visually.

Order

  • Prompt Lists
  • dbGrids
  • grids.

New functionality

  • Created new grid below same size.
  • Made to old smaller.
  • Source code
  • Added the columns DDO Explorer
  • Took care of sizing.
  • Convert what is needed

Properties: old<> new mapping

 export_item_state peUpdateMode

 auto_export_state peUpdateMode

 move_value_out_state peUpdateMode

 col_index ColumnOrdering (in column class)

 restore_defaults OnRestoreDefaults

 Seed_List (private) SeedData (private)

move_value_out (non relational) OnMoveValueOutByValue

 export_column piUpdateColumn

 Auto_Index_State pbAutoOrdering

 Read_only_State Many Options

 More Ask John T

Messages

  • OnSetCalculatedValue
  • Prompt_CallBack

Can be Challenging

  • OnWrappingRow
  • ShouldCommitOnObjectExit
  • New Functionality

OnGetTooltip

OnSetDisplayMetrics

Special Items “the none dbGrids”.

  • That is work but very nice results.
  • So much easier than in the old, so much more logical
  • Some drawbacks although but minor to the pro’s
  • BUT AGAIN IT IS WORK

Left all the old code commented.

  • Needed that in many cases.
  • Compare does not work so nice.

How much time did it take?

  • Class work
  • One to one App
  • Vertical Application
  • New App
  • Fun stuff
  • Small App

 How does it look now.

Pro's

- New look and feel, makes your application look modern

- You will fix bugs you have never seen before.

- New classes: it is way more logical, Column based

- Important limits have been lifted

  • Old grid exponential slow over 1500 lines.
  • Old grid is "challenging” if you want more.

- New features of the Codejock Grid Control will be there.

  • Hiding, and Enabling Columns
  • Reorder Columns (but do you want that ??)
  • Better font control, images in cells
  • Easy storing layouts (well maybe)
  • In short there is more what you can do. Way more, do you need all, no way but over time you can do more.

- early adaptor gives me more time and better control important functionality

- Rainbows are for vb programmers.

Con's

Vdf4 – Vdf 15.1

  • dbGrid (Row Based)
  • • Never had any troubles with it. Did what it had to do.
  • • Vertical slider. “every disadvantage has an advantage”
  • • Horizontal slider never used. Took care it did not happen.
  • Grid (Cel Based)
  • • It sort of worked
  • • And it was often intensive work.
  • • Just keep it simple and limited
  • • Has its limits (lines above 1500)

- It is work and the dbGrid works properly now.

- A lot of my worktime went into it,

  • special functionality,
  • extensions

- How will the new grid hold up.

  • There will be bugs (see the fixes in 16.1)
  • Missing features, any showstoppers
  • 1.0 release Lots of History

- End Users do not like changes. Not feeling limiting and seeing the “new features”

- Source control does not help to much in converting.

- You will introduce new Bugs.

What did I convert

Df3.1 & 3.2 (row Based)

  • Working with dd class.
  • Clear code. Fast development
  • Fast high speed end user data entry

Df23 Never did anything with it

  • Decompiled Code, you do not want to see it.
  • 12 Grid lines and that is it.
  • Customer sometimes got 10 invoices for one order.
  • So a Technical or Design problem?

- Much to choose from, but 2 needed to be done and have it all

- One to one Application

  • Very stable Accounting application
  • 1500 grid line limit.
  • Stay within technical revision.
  • 35 dbGrids, 50 SelList, some grids

- HRp5 a big vertical market application

  • In process of a new release.
  • We need a new look and feel to show the upgrade.
  • We have the time to do it.
  • Hundreds of dbGrids, Hundreds of Sellists, 40 grids many with special coding

- Playing time.

  • When you start to have a hang of it.
  • Just create something new to sort out how it works

- New Paid Application.

  • The new grid fitted in so nice

- Recently an old application which started in vdf4

  • Done for this presentation
  • Limited number dbGrid

Df30 My first Dataflex version

  • Coding well it worked well.
  • Fast entering possible

Big Vertical Application

Small Application

Feature Request

Not only range but some of the

So using static prompt list

Returning records

Showing the multi in tooltip

Work Contained

  • Old vdf 4 garbage code
  • 30 Selection Lists many with "special code"
  • 12 dbGrids
  • Took 14 Hours to convert and test.

New Application

  • using the piFreezeColumnsCount
  • Static Readonly dbGrid
  • Analysing tool for end user
  • Columns showing Ok or "not ok"
  • If not ok end-user can hover the Tooltip for more information
  • Dynamic hiding-showing columns depending on end user settings
  • Using hidden columns to show tooltip info and percentage calculation

Playing Time

  • Working with Colors (not my thing)
  • Using cCjGrid displaying Records from 2 tables
  • No dynamic creating just hiding columns
  • Putting totals in the Footer (do not like it will not use it)
  • Using Validation on columns for consistent data like using the dd logic, can do the full db "things"
  • Process stores the whole cCjGrid in the database

Shows Mail Merge Facility with word documents inside the application, so having full control.

  • Merge File Selection is a cCJGridPromptList
  • Was using the old version something like cTreeList but was never happy about it
  • The grid behind a Editable cCjGrid
  • In the old version a read only grid with add, modife and delete buttons
  • On advantage of the old grid. Because it was cell based you could have properly formatted contents for date, numeric or string in one column. Now that is not possible

Outlook Report Control

Not using the sig Classes but based on the cCJGrid