Log In    |    Knowledge Base    |    4D Home
Tech Tip: Publication Name and Custom Client-Server Applications
PRODUCT: 4D Server | VERSION: 11 | PLATFORM: Mac & Win
Published On: May 21, 2009

For deploying a custom or built client-server application, the Configuration preferences in the Design Reference describes the Publication Name field as the following:

"This parameter is not taken into account for custom client-server applications. In principle, the client application connects directly to the server application, without passing through the connection dialog box. However, in the event of an error, this dialog box appears; in this case, the publication name of the server application is the name of the compiled database."

This explanation does not fully explain the role of the "Publication Name" in custom client-server applications.

In the 4D XML Keys document, there is the key "BuildApplicationName". The key establishes the name of the compiled file or built application. If this key is not used, the compiled file or application uses the name of the structure file. By default this also becomes the "Publication Name", and unfortunately there is no XML key to specify the "Publication Name".

This is important because it is the "Publication Name" that gets stored in the "EnginedServer.4dlink" file that allows the client to automatically connect to the server. If you change the "Publication Name" of the server, the client will not auto connect and presents the user with the server connection dialog that displays "Recent Databases", as explained in the Design Reference section above.

By design, custom client-server applications are not displayed in the "Recent Databases" list. The user has to connect using the "Custom" page. After the connection, the "Publication Name" is stored in the "EnginedServer.4dlink" file and subsequent launches will connect to that server as long as the "Publication Name" is unchanged.

Another excellent reason to change the "Publication Name" when a Custom Server is first installed is to avoid conflicts between multiple custom client-server applications on the same network. By changing the "Publication Name" to something unique on the network, it will allow multiple instances of the custom client-server application to be installed, yet be limited to a specific group of users via their 4D Link files.

Commented by Jesse Pina on October 1, 2010 at 6:05 PM
The Publication Name is set in the database Preferences and can be modified, at runtime, in any 4D Server application (including merged servers). It is only set to the structure name at database creation time. Otherwise the value always comes from what is in the Preferences.