Simplicty and flexibility!

-

Visitors: 336,211

Radioboxes - how to filter on them and clear them

Download Sample

You can of course add a choice (default maybe) that is None or something like...

Written by DataEase 01/02/21 at 11:08:34 Dataease [{8}]FIVE

DE9 - A quick preview of the NEW interactive DQL editor.

Just a quick preview to show you all that we are not just relaxing here at DataEase

As you can see it is just a simple test done in the "horrible" Club ParaDEASE. Enjoy

Written by DataEase 18/11/20 at 21:06:06 - 4 people have commented. The newsest comment is 666 days old. DataEase 9 Developer

How to edit RDRR file to connect lost files.

All of you will at some stage get the problem when you change a form/table that it crash and the file is "lost". 

it is never lost.

The data is still there in a Temp Form XXX table. The problem is that the change crashed in the mi...

Written by DataEase 10/09/20 at 13:33:54 Dataease [{8}]FIVE

"System error: Relationship limit 255 exceeded. " - Understanding Relationships in DataEase

In regular intervals we get support request in regards to this message and what you can do to increase the limit to OPEN relationships in DataEase.

If you are "lucky" you get this problem wi...

Written by DataEase 03/09/20 at 10:53:34 Dataease [{8}]FIVE

DE85- 100% control of the USER!

Download Sample


We got a request on the form about how to use Modal and switch between f...

Written by DataEase 19/08/20 at 14:32:40 Dataease [{8}]FIVE

100% DataEase

LegEasy4DOS Professional is a "pioneer" that showcase the future of DataEase.

No! The future is not retro, and the bit about it that is pioneering is not the fact that you can fun DataEase for DOS applications.

That feature is basically just how it should always have been and a catch-up with our history.

Take a closer look - The entire product is made IN DataEase following up on a "slogan" we had when we sat out to refurbish DataEase.

DataEase need to be made in DataEase!

LegEasy4DOS - How it works?

The interest in LegEasy4DOS has been "overwhelming" since we released it at the end of last week.

A lot of eagerly awaiting Professional clients jumped at it and the feedback was not late to come.

Most of you are overjoyed and excited by this opportunity to run DataEase for DOS in a modern environment, and more than happy to scrap your old XP computers and Novell servers that has kept you up at night with worry - when will it draw its last breath and what will I do then?

However not all feedback is good and some of you have been "disappointed" too.

Some of this disappointment is down to us having problem with our server park after the release due to an unexpected heavy load - don't they always say that - but some of you have been running bench mark tests and compared it to "Native" DfD on Native XP, WIndows 7 x32 etc. and the results has baffled you.

Why is it sometimes much slower and then sometimes much faster than the comparison?

In the article below we will try to explain this and how LegEasy4DOS is designed and how it works.

LegEasy4DOS Professional Release 05.08.16

The response to our Personal version of L4D has been fantastic and it has given us great motivation in the work leading up to the release of our long awaited Professional version of L4D.

We won't spend too much time extrapolating its virtues here but limit ourselves to announcing it's release and showcase its beauty ;-)

Further down the article you will find the FREE FOR ALL Trial Key you can use to get the first "spin" in this brand new interpretation of DataEase (for DOS).

New Support Manager and new Support Products introduced

For a long time we have been focusing on improving our software products, but we have now entered a new phase where we will focus more and more on the entire customer experience.

One issue that has been raised more often than others is the lack of a dedicated support service so this is one of the areas were we will now focus.

Last month we hired Fatma Adel as our new Support Manager. She has now had some time to settle in and are more than eager to start helping you resolve your issues.

LegEasy 4DOS - Update!

We are and should be very happy when an upcoming release of a DataEase product cause this much of a stir, but it is also a sobering moment.

We obviously still have some catching up to do with our new products before they reach the same popularity as the early versions of DataEase.

Luckily the "re-launch" of DataEase for DOS is part of our DataEase infrastructure strategy so you will now be able to run your legacy apps well into this century when at the same time integrate them with the latest DataEase technology.

Locking Strategies for dummies!

Ever wondered why you have so much trouble with inconsistency and being locked out of your DataEase database? If the answer is YES, read one and discover how you can easily remedy it.

Full, Basic, Opportunistic - What does this really mean? We get a lot of questions about which locking to choose in DataEase, and the answers we have give - are giving, have changed over the years. I guess that if this was a simple as it "should be", there wouldn't even be three options in DataEase, and we wouldn't leave this is in your hands.

I have spent quite a lot of times over the years debating and exploring this myself, and the problem is that it is more of a philosophical problem, than a technical one. Pictures this as going into a Chinese restaurant and ordering. You get a many with 500 items, and you are vaguely familiar with 3 of them, so what do you do. Choose what you know, or go for the set menu...

[{8}]five Release and Release program.

Finally...

DataEase {[8}]five went into production today and from now on it will be all about 8.5 and beyond.

We have now concluded the longest Beta program in DataEase history - 427 days or over 1 year and 2 months.

So why so little fanfare on this watershed day?

Warning! Price increase on DataEase 8 from January 1st

We are changing how we license DataEase from Januar 1st 2016.

In short we will stop dividing licenses (and executables) in Developer (Full) and GROUP (Runtime) and introduce a simple User License and one executable that will be either a development environment or a Application Launcher based on the users privileges.

The change might seem dramatic at first, but you will get much more functionality and flexibility.

This is just an early warning to those of you that plan to buy DataEase 8 in the near future, more information on the change in product and licensing strategy will follow.

Dynamic Design - A New paradigm in DataEase development

ExecDQLClass(), CreateTable(), AddColumn()* signify a complete breach with previous DataEase thinking.

From its infancy in the early 80ies and throughout its life until DE8 there was a clear divide in DataEase between Design and Runtime. (At least in the head of the designers, but the fact that most people used it interactively and added and changed to it in real time was not taken into account)

Tables, Scripts, Forms, Reports was froozen in runtime and there was few if any way you could make your application dynamic.

How this has changed in 8....

How to create CDFs for use in DE8/DG3

This is how you create your own CDFs using Visual Studio 2013. I selected to use this version because any one can get a full version for free as long as you register with MicroSoft. You should be able to recreate this in any version of Visual Studio in almost the same way as described here. Not much has changed in creating Windows DLLs in the last 20 years. You probably can do the same using other compilers as MinWin GCC and Embarcadero, but that is outside the scope of this document.

Migrating from DFW 5.x and 6.x to DE8.5 including National Versions

If you want to encompass DataEase problems in one word it must be Migration. It is fascinating that a company that has had so little success with this concept, has sworn to it for such a long time.

It is a badly hidden secret that DataEase lost most of it users in the flawed and bodged migration of DFD application to early DFW, what is maybe not so well know is all the other "unsuccessful" migration events.

In this article we will explain what/why and how it went wrong and what you can do to work around it.

We reached our 1.000.000 visitor today 23rd of February 2015

At the beginning of the year we had estimated that we would get our 1.000.000 visitor at the 6th June this year, but with the Beta of 8.5 and the great feedback we have seen both visits on our website and sales sky-rocket and we reached the 1.000.000 threshold more than a Quarter ahead of schedule!

We just have to thank you all for your patience with us, and for your contributions and support throughout the last couple of years since we took charge.

We both hope and feel that our efforts and enthusiasm for DataEase has been well received and are reciprocated by you all!

A wholehearted thank you to your all from "The DataEase Team".

NEW! Functions in DataEase 8.0 to 8.5 (Page 1)

Some of you might be aware of it but it seems a lot isn't so it might be time to advertise a little the vast number of new functions and functionalities that has been added to DataEase 8.0 through 8.5.

For a long time the only way new functions found their way to DataEase was through active and ingenious users which developed CDF's. As much as the CDF's alleviated the obvious short-comings in DataEase 5.x to 7.2 it was cumbersome, undocumented and "secretive" i.e. not everyone was in the know.

With 8.x we decided that the focus needed to be on moving DataEase forward, rather than the constant dance around the "bug fixing" fire.

Have a look and a try for yourself.

Due to the number of new functions we had to publish the short description in two articles, of which this is the last.

Also have a look on the blog synopsis found in the list to the right.

NEW! ?Functions in DataEase 8.0 to 8.5 (Page 2)

Some of you might be aware of it but it seems a lot isn't so it might be time to advertise a little the vast number of new functions and functionalities that has been added to DataEase 8.0 through 8.5.

For a long time the only way new functions found their way to DataEase was through active and ingenious users which developed CDF's. As much as the CDF's alleviated the obvious short-comings in DataEase 5.x to 7.2 it was cumbersome, undocumented and "secretive" i.e. not everyone was in the know.

With 8.x we decided that the focus needed to be on moving DataEase forward, rather than the constant dance around the "bug fixing" fire.

Have a look and a try for yourself.

Due to the number of new functions we had to publish the short description in two articles, of which this is the first.

Also have a look on the blog synopsis found in the list to the right.

Start your own thread!

03/02/23 14:03:02

Re:Re:Re: We are using SetsSyle, but in LE9 it is not working how we would expect a lot of the time.

You have kind of put your hand in an ants nest here.

OML was never supposed to be "released" as its part of the internal model of DE rather than something that users should dab in. This is why it was not part of the original release. OML is a hybrid of compiled and interpreted code which makes things a little awkward.
You can't call GetCurrent("RowNumber")  in the code directly due to when things are computed and executed. 
If you combine OML with GUI functions like SetStyle you need to "trigger" DataEase dependency order. So to get this to work you need to have a virtual field that contain the derivation GetCurrent("RowNumber") and then pick that values with ObjectName.Value().

I guess you looked a the sample and thought we were just idiots that didn't call the function directly and wanted to improve it... I would, but its done this way for a very obvious reason when you start playing with it. I also think that when you use the GetCurrent("RowNumber") in a subform it will return 2 rather than 1 while used in a table list it will show 1. Another DE quirk I'm afraid. Its easy to think that we are idiots, but the problem is that we have to go around some long standing development "truths" in WIndows which make something that should and to the untrained eye should be simple very very hard. I guess it was done with the best of intentions in a euphoria of object oriented programming but in reality it is just plain stupid.

So the problem for us that when we are in one place of the code we don't know where we come from or where we are going which allow for these quirky solutions. Pure windows brilliance...

Yes, its very "hacky" but the entire purpose of 

...

Product: DataEase 9 Developer

Written by: DataEase

03/02/23 13:06:23

Re:Re: We are using SetsSyle, but in LE9 it is not working how we would expect a lot of the time.

I get the row number thing, each being different on this version.

So I changed code to this:

define "x" text .
if SESS_EndDate > current extended date then
x:=setstyle(concat("SESS_Date2#",GetCurrent("RowNumber")),"SubFormFieldLive") .
else
x:=setstyle(concat("SESS_Date2#",getcurrent("RowNumber")),"SubFormField") .
end .

and it now highlights row three only ...
I also added a virtual field to collect the actual row number, but with same results.
I tried various combinations with and without the wildcard.

These highlight lines are not meant to trigger when highlighted, but whenever there is data on the line.


The buttons in my example1 all have unique names. Some work, most do not. 
This is the same across most forms.

...

Product: DataEase 9 Developer

Written by: Paul Cheeseman

03/02/23 10:47:43

Re: We are using SetsSyle, but in LE9 it is not working how we would expect a lot of the time.

Hi Paul.
SetStyle() work on the object name and OML work on the object. So when you use any Set command you will manipulate the first object in the object order in the compiled (RT) document. OML is mostly to complex and "programmy" for a lot of our users which is why we did the Set Class functions to allow users to do things more the DataEase way.

But what start off as easy very quickly become complicated when you want to do something "complicated". 

HighShade.color.red := 255 .

HighShade.color.green := 255 .

HighShade.color.blue := 255 .

This way of doing things is for most people "greek" and seems idiotic when for a computer it is brilliant because you tell it exactly what you want. 

With SetStyle we bascially exploit the features of the design tool and abstract the style from the look of the style so you can set the style and then if you change the style that change will permute the entire application. (like CSS in HTML).

If one prefer OML and the specific way of doing it that is great but if not then SetStyle and the SetClass is your thing (SetColor,SetLabelText,SetCurrent etc)

You are allowed to have the same object name on different levels so you can use MyLabel on Main Recod and SubRecord and SubForm and MainForm etc. as it will be classed. MyForm.MainRecord.MyLabel etc. 

When you define a subform you basically clone the first row, row times in RT so if the objetct is called CustomerName and you have 10 rows they will all be called CustomerName. SO if you have code that set style on CustomerName they will all set it on the first CUstomerName.

This is why you can do it like this: SetStyle("CustomerName#3","MyStyle). Then you will set it on the 3rd CustomerName.

THis has been discussed on the forum before and you can read more about it and find a sample in the thread.


http://www.dataease.com/DG3_ForumList/?ParentID=00...

...

Product: DataEase 9 Developer

Written by: DataEase

03/02/23 10:45:27

We are using SetsSyle, but in LE9 it is not working how we would expect a lot of the time.

Example 1:

Main Form buttons using mouse over.

define "x" text .

x:=setstyle("CustomerDetailsButton","ASPButtonMouseOver") .

and on mouse exit

define "x" text .

x:=setstyle("CustomerDetailsButton","ASPButtonClearNoOutline") .

This works on a few buttons, but not on the rest. Nearly all forms have the same issue.

Example 2:

Subform field style changes, This one works on the first line of a subform, but not the rest.

The code here contains both old way and new way of doing this. The old colour change works fine on every subform line every time, but is a pain to change on every field if changes are needed. The SetStyle() ONLY works on the first line of the subform.

define "x" text .

x:=Setvar("VCDate",current extended date) .

if SESS_EndDate > getvar("VCDate") then

--x:=setstyle("SESS_NameofAd","SubFormFieldLive") .

HighShade.color.red := 0 .

HighShade.color.green := 255 .

HighShade.color.blue := 0 .

redraw := 1 .

else

--x:=setstyle("SESS_NameofAd","SubFormField") .

HighShade.color.red := 255 .

HighShade.color.green := 255 .

HighShade.color.blue := 255 .

redraw := 1 .

end .

end .

In both of these examples the styles are named correctly and can be applied to the field manually. Its only when its done automatically it fails.

In the other DE9 (DE10?) it worked flawlessly and was used throughout the database.

On any of these buttons or fields and on any of the forms, if I revert back to using the colour change code, it works everytime. 

...

Product: DataEase 9 Developer

Written by: Paul Cheeseman

19/01/23 17:15:25

Re:Re:WE NEED DE9 asap

Mate! Thx for Your reply a lot.

we use DataEase for our  militants  instead of very popular in Ukraine  aggressor's financial software called 1c . Need more secure version of DataEase ASAP.

as to WSJ link may be this will help

https://edition.cnn.com/2023/01/15/politics/ukraine-russia-war-weapons-lab/index.html?fbclid=IwAR3vteBPwhcE8rxzM9Q0a-qebJESjnnG7QJ13KsTaV8hvp7LKtigJZL8uxc

and this 

https://www.9news.com.au/national/russia-ukraine-update-australian-soldiers-to-train-ukrainian-army/71da721f-ac9d-4733-bab4-225b0868ca6f?fbclid=IwAR3XFO0PIN22P7-rxWmYKEjD8JWDDYAB2wbi2d2H-fS6mggdVVMsHYr9mnA

...

Product: DataEase 9 Developer

Written by: Ihor Zakharchenko

19/01/23 17:07:29

Re:Re:DE8.5 to DE9?

GREAT! thx for Your reply dear DataEase Team!

Also please pay more attention to database security. that is why we need new DE9 in Ukraine fully unknown to aggressor. their popular in Ukraine  economic product called 1c is a spy software in fact.

...

Product: DataEase 9 Developer

Written by: Ihor Zakharchenko

19/01/23 12:16:56

Re:DE8.5 to DE9?

As DataEase is now one of the oldest software products being in continued publishing  with its more than 40 years, there is a certain challenges that we have that most other software companies don't have.

It is kind of obvious that if Dataease is to survive long term we need to focus more on the current and the future.

After 8.5 we decided that we would spend some time and a lot of resources on figuring out what this means and how we can do this without leaving our current users in a lurch.

DataEase 9 has been delayed by a world pandemic and other challenges but we are still not in a rush as we need to get things right, rather than fast.

In DataEase 9 the future and the past kind of part ways when still co-existing. 

LegEasy 9 has been available on request for over 6 months and is very popular with the intended user group which is Legacy DataEase users with Legacy Applications.

We realised during the development of DE9 that if DataEase was to be a current product it could not constantly hanker to the past so we decided that we would now firmly split the product into two.

LegEasy 9 for the people with Legacy needs/applications that want to move forward while at the same time not do re-writes/conversions or fresh development.

DataEase 9 for people that want to develop fresh applications or spend time rewriting their application to fit the future.

To make it easy both LE9 and DE9 will be compatible when released but then part ways from 9.5 onwards.

So the short answer to your question is that LE9 is designed with your needs in mind but that does not mean it will be 100% fit as all progress will inevitably also change something. 

...

Product: DataEase 9 Developer

Written by: DataEase

19/01/23 09:08:58

Re:WE NEED DE9 asap

Good day
Is there a way of getting access to the details in this article without having a Wall Street Journal subscription?

...

Product: DataEase 9 Developer

Written by: Sam Bird

19/01/23 08:58:53

DE8.5 to DE9?

Is the upgrade from DE8.5 to DE9 a 100% simple process or is there functional changes that may require application changes.

Is any current 8.5 functionality deprecated in DE9?

...

Product:

Written by: Sam Bird

04/01/23 11:57:22

WE NEED DE9 asap

https://www.wsj.com/articles/ukraine-has-digitized-its-fighting-forces-on-a-shoestring-11672741405

...

Product: DataEase 9 Developer

Written by: Ihor Zakharchenko

23/12/22 15:33:21

Re:Re:Re:How to exceed 255 character limit

The issues that has always been there will always be there as both are out of support.


However in DE8.5 you can use the Memo functions to get around these problems but it is more awkward than simpy using the string functions directly in the code.

LE9/DE9 also have memo as variable in DQL.

Define "MyBigString" Memo .

MyBigString := concat(Memo,"/CRThis is a test/CR",TextField,StringBetween(AMemo,"<header>","</header")) .

Etc.

...

Product: Dataease [{8}]FIVE

Written by: DataEase

23/12/22 10:06:14

Re:Re:How to exceed 255 character limit

Ok, that sounds great for DE9.
...for DE6 or DE8 it's still an issue. 

I did find one way of getting around this although it does have it's kinks.
An Import spec from file will allow for more than 255 characters if it is set to add all records. If the import is set to update existing then it does not work.

...

Product: Dataease [{8}]FIVE

Written by: Sam Bird

22/12/22 14:03:48

Re:How to exceed 255 character limit


Hi Sam.

Yes, you are butting your head against a limitation that has been the same since DFD.

In 8.x we did a lot of work where you could manipulate Memos with a full library of Memo specific functions as it has been a "truth" in DataEase/Ffenics circles that the 255 boundary was "impossible" to work around.

As it turns out it isn't.

In LE9/DE9 onwards there is no longer any practical difference between text/memo which render the above function obsolete as you can simply use the good old trusted concat(),firstc(),lastc(),stringfind(),stringreplace() etc. 
The theoretical limit in LE9/DE9 is 4GB which is not a small increase in this incapacitating limit but an increase which is no less than 1684300900% or in laymans terms a bit over 1.5 billion %.

To be honest if there was no other reason to move to LE9/DE9 (there is plenty) this should be reason enough. 

Suddenly you can work with large texts as you please. concatenate memos, with texts, number, replace, insert large text into a wireframe, build an entire website in memory and publish it....

Only the imagination is the limitation here.

...

Product: Dataease [{8}]FIVE

Written by: DataEase

21/12/22 22:28:08

How to exceed 255 character limit

Need to create a dynamic text string in a memo or text field based on multiple variable user inputs.
The total characters concatenated can exceed 255 characters.
Concat, Jointext & joinstrings all have a 255 character limit.
Is there any way of returning a string with more than 255 characters?

...

Product: Dataease [{8}]FIVE

Written by: Sam Bird

07/12/22 11:14:51

Re:Re:Re:as to price and etc. (lucky me! ON WINDOWS 11 when using the fresh download with the trial license on the weak msix370 amd laptop)

...

Product: LegEasy 8 Developer

Written by: Ihor Zakharchenko

07/12/22 10:32:36

Re:Re:as to price and etc. (when using the fresh download with the trial license )

...

Product: LegEasy 8 Developer

Written by: Ihor Zakharchenko

07/12/22 10:30:18

Re:as to price and etc. (when using war license for Ukraine )

...

Product: LegEasy 8 Developer

Written by: Ihor Zakharchenko

07/12/22 08:58:48

as to price and etc.

Dear DataEase team, How are You all ? Wish You all be happy and safe!

Just downloaded Le9 (23/11/23) build and have installed it with hidden administrator trick from MS. may be will try special war license for Ukraine 

yup, 23/11/ ... 23

Merry Christmas and Happy New Year to all

...

Product: LegEasy 8 Developer

Written by: Ihor Zakharchenko

05/12/22 23:07:47

Re:Re:Re:Re:Re:re:How to set Landscape print as default

Will request price although this may be a deal breaker for this project to continue.
The client purchased 8 with the expectation that their 6.53 system would b upgraded.
They just took a while to get someone to do the upgrade.

Very disconnected financial management - so they will not understand the reality of upgrade uncertainty and the time lapse.
They will not be happy to be told they have to purchase DE again.

Will probably have to change all reports to work as portrait.

...

Product: Dataease [{8}]FIVE

Written by: Sam Bird

01/12/22 11:24:15

Re:Re:Re:Re:re:How to set Landscape print as default

Yes, just request a price from desales@dataease.com

You will be able to buy it online when we publish the new web page, but until then just request a price.

...

Product: Dataease [{8}]FIVE

Written by: DataEase

DataEase Mainpage