Questions tagged [4d-database]

4D is an integrated development platform containing all of the components needed to create and distribute professional applications.

History

Initially developed in 1984 by Laurent Ribardière, it was initially negotiated that 4D would be published by Apple. However, due to pressure from other database publishers, those plans eventually fell through, and 4D was published independently by Laurent Ribardière, in partnership with French businesswoman, Marylene Delbourg-Delphis.

Although independently published, Apple did support the venture and used 4D extensively throughout the organization for diverse projects such as fitness center management to CIM (Computer Integrated Manufacturing). This support from Apple undoubtedly helped the product to mature and gain traction in a difficult marketplace.

In 1987 4D was reviewed by Info World in their September 28 1987 publication.

In 1993, 4D Server, the client/server version of 4th Dimension was introduced and since 1995, 4D has supported both the Microsoft Windows and Apple Macintosh operating systems.

Syntax

The 4D syntax is unique, but bears some similarity to Visual Basic, Perl, and Python. One very unique aspect of 4D is that it's SQL engine is directly integrated into the language. The screenshot below demonstrates the Method Editor interface, showing the mixture of 4D and SQL syntax.

enter image description here

Current/Supported versions

Hotfix Versions

  • 4D v15.2 Hotfix 1, released on 4 July 2016 (fix list)
  • 4D v14.5 Hotfix 1, released on 11 July 2016 (fix list)

Legacy/Unsupported Versions

  • 4D v15.6, Final release on 25 Apr 2018; (first v15 release on 16 Jul 15).
  • 4D v14.6, Final release on 20 Dec 2016; (first v15 release on 12 Dec 13).
  • 4D v13.6, Final release on 18 Jun 2015; (first v13 release on 14 Feb 12).
  • 4D v12.6, Final release on 08 Oct 2013; (first v12 release on 03 Jun 2010).
  • 4D v11.9, Final release on 07 Jul 2011; (first v11 release on 25 Sep 2008).
  • 4D 2004.8, Final release on 30 Jun 2009; (first 2004 release on 31 Aug 2004).
  • 4D 2003.8r2, Final release on 11 Apr 2006; (first 2003 release on 17 Mar 2003).
  • 4D v6.8.6, Final release on 24 Sep 2004; (first 6.8 release on 15 Apr 2002).

Additional Resources

Related Tags

116 questions
0
votes
0 answers

ODBC C# Issue - The specified DSN contains an architecture mismatch between the Driver and Application

I am integrating 4D database into C#.Net based application which is developed in Framework 4.0. I have successfully created the DSN using 64 bit version since the drivers are only available for 64 bits. The application pool is also referring to 64…
Anil C
  • 1,045
  • 3
  • 16
  • 38
0
votes
1 answer

.bat file not running when executed by app as windows service

So, I have this client-server app which is written in 4th Dimension Language, that runs as a service so it restarts automatically if something happens to the server. This language has a built in function which allows you to run cmd commands and I…
Irettam
  • 1
  • 1
  • 5
0
votes
0 answers

How to execute Oracle PL/SQL stored procedures & functions inside of 4D?

I can find nothing in the 4D documentation (https://doc.4d.com/4Dv18R5/4D/18-R5/4D-for-OCI.100-5176638.en.html) on this topic. please help.
Walter B.
  • 19
  • 2
0
votes
2 answers

4D Database ORDA Query: Query Using Length of Related Records

Background I'm using 4D Database (v17.5) and trying to query records. I have the following simplified schema: Customers (table) -CustomerID (field) -CompanyName (field) -City (field) -State (field) SalesOrders (table) …
Kelderic
  • 6,502
  • 8
  • 46
  • 85
0
votes
2 answers

ORDA: How can I query field value against a field value?

Background I'm converting old 4D code from class queries to ORDA queries. One thing I can't figure out is how to query with a field vs a field, rather than a field vs a value. Edit: I'm using 4D…
Kelderic
  • 6,502
  • 8
  • 46
  • 85
0
votes
1 answer

How to set entry filter for 24 hour time format in the listbox column in 4d database

I have a listbox with 2 columns (say "from time" and "to time"). I want to filter user input by 24 hour format only i.e. no other key should be allowed to press except 24 hour time format (i.e 00:00 to 24:00) in the cell. I tried with this:…
Ravi
  • 31
  • 5
0
votes
1 answer

ORDA: How do I specify field order when using entitySelection.toCollection()?

Background I'm converting old 4D Database code to use new ORDA concepts introduced in v17. However, I've noticed an oddity. When I have an entitySelection that I created using ds[$vtTableName].query(), and I convert that entitySelection to a…
Kelderic
  • 6,502
  • 8
  • 46
  • 85
0
votes
1 answer

How Can I Avoid Throwing Errors From Incorrect FieldNames in EntitySelection.toCollection($fieldNames)

I'm trying to convert code to ORDA. One thing that is giving me issues is Relations. Example setup: Tables: [CallLogs], [Employees] Relation: [CallLogs]EmployeeID (M)---->(O) [Employees]UniqueID MtO Relation Name: "RelatedEmployee". Using ORDA, I…
Kelderic
  • 6,502
  • 8
  • 46
  • 85
0
votes
1 answer

Programmatically setting text style in 4D Write Pro (4D v17 R5)

I'm trying to programmatically set two text styles inside an also programmatically created 4D Write Pro document, but the last style set is the only one assumed for the whole document. I have created a new 4D Write Pro document (wpDoc), created a…
MarkAsh
  • 33
  • 6
0
votes
1 answer

64bit PowerShell calls the 32bit DLL

On a Windows 10 computer, I am calling QuickBooks from a 4th Dimension (4D) database using a PowerShell script. The script calls the QBXMLRP2.dll, a 32bit COM object, to talk to QuickBooks 2019. As I understand, if you call a 32bit dll using a 64bit…
JohnBDH
  • 11
  • 3
0
votes
1 answer

Can't connect to 4D server via Wakanda 4D Mobile

I have a v16 database with 4D Mobile enabled: I have the 4D Mobile License: The webserver is running and the "Total HTTP Hits" counter increments during failed 4D Mobile connection attempts: I can connect to other V16 Databases via 4D Mobile…
NAMS
  • 983
  • 7
  • 17
0
votes
1 answer

HTTP Get command doesn't work in (GSM/WCDMA) dongle network. Gives an HTTP server unreachable error while executing it

4DV16R6 HTTP Get command doesn't work in (GSM/WCDMA) dongle network whereas it smoothly runs over Ethernet/Wifi network. In dongle network, it gives "HTTP server unreachable" error when executing HTTP Get command. I've also tested with IC TCP/IP…
Ravi
  • 31
  • 5
0
votes
2 answers

Generate DDL from 4D database

I have inherited a 4D database that I need to extract all the data from to import to another relational database. The 4D database ODBC driver seems to have quite a few quirks that prevents it from being used as a SQL Server linked server. I can give…
MrBoffin
  • 69
  • 1
  • 1
  • 7
0
votes
2 answers

Using 4d variable inside a query in quick report editor

I'm creating a 4qr quick report file, and I am wondering how I can use a variable in a query inside the quick report editor.
Dylan
  • 37
  • 6
0
votes
1 answer

How to select a few table fields and all of another table like `t1.field, t2.*`

Does anyone know if a one can query a 4D database selecting all of a particular table like one can do in MySQL? I haven't been able to find any documentation on it. Fails I've tried this query but it fails to parse Syntax error: 1301 Failed to parse…
Kevin Jantzer
  • 9,215
  • 2
  • 28
  • 52