You are browsing the archive for JavaScript.

Build Free Multi-Tier apps with DA/JavaScript + Relativity Server

July 13, 2012 in Data Abstract, JavaScript, Relativity

With the recent Summer 2012 release we have now made Data Abstract for JavaScript available as a completely free product edition with its own installer, in addition to being included in our other platform editions (for .NET, Delphi and Xcode).

When combining this on the back-end with our Relativity Server (which is also available in a royalty-free edition that runs on Windows, Linux and Mac OS X), you now have the ability to build powerful Data Abstract-driven multi-tier projects, all with completely free tools from RemObjects Software.

Data Abstract for JavaScript is a 100% native JavaScript implementation of our client libraries, and lets you create rich standards-based web applications on top of the HTML+JS stack that runs in the web browser. It also integrates with the new Visual Studio 2012 from Microsoft to let you build HTML-based Metro applications for Windows 8 (the Free DA/JS installer comes with full IDE integration, our New Project, and everything needed to get you started).

Relativity Server is our pre-built “middle tier in a box” built on our DA/.NET framework, and lets you serve up to two independent middle-tier projects in the free edition.

Both Data Abstract for JavaScript and Relativity Server are available on our Free Downloads page.

Click thru to learn more about Data Abstract for JavaScript and Relativity Server, or watch our “Metro App Development with Data Abstract for JavaScript” video below:

Summer’s Here!

June 12, 2012 in .NET, Cooper, Data Abstract, Delphi, Hydra, JavaScript, Metro, Relativity, Visual Studio

Change LogsJust in time for the start of summer, our “Summer 2012” releases are here! There are significant updates in every single one of our products — three editions of Data Abstract, four editions of RemObjects SDK (the new one being RemObjects SDK for Java), both editions of Oxygene, and Hydra.


The big theme this time around is our preliminary support for Metro and Windows 8. Since Windows 8 and Visual Studio 11 are in Release Preview right now, our support is preliminary, but rest assured that when they get released we will have finalized support right away. This means you can start developing native Windows 8 Metro apps today, so you are ready! You will find preliminary Metro support in Oxygene for .NET as well as Data Abstract and RemObjects SDK for both .NET and JavaScript.

Free JavaScript Client Libraries

Another big annoucement is that our JavaScript client libraries are now abailable as seperate, free downloads. You can use these to freely add Metro clients to your existing Delphi, .NET or Relativity servers. Check out the video on developing Metro apps with Data Abstract for JavaScript. If Windows 8 Metro isn’t on your radar yet, you can also use the JavaScript client libraries to build browser based client applications, as well as mobile applications with tools like Titanium or PhoneGap.

Schema Modeler 7 Tech Preview

Beyond Metro and JavaScript, you will also find a Tech Preview of our Schema Modeler 7 for Windows. This new Schema Modeler has been designed from the ground up to provide a better and more streamlined schema editing experience. If you are familiar with the reinvented Schema Modeler from the Xcode edition, you will see they have a lot in common.

We’re still putting some finishing touches on DASM7 (as we call it internally), before we consider it “done”. This means DASM7 does not replace the old Schema Modeler yet. You can find it in the \Bin folder of your Data Abstract installation and give it a try — or run it with /register once to make it the default.

But Wait, There’s More!

This is just the tip of the iceberg. As always, check the change logs to see what else is new in the “Summer 2012” release.

So renew your subscriptions with our recently reduced renewal pricing, upgrade to a new platform, or download a 30-day free trial today, and get a jump on summer!

RemObjects SDK for JavaScript and Smart Mobile Studio

May 30, 2012 in Data Abstract, Delphi, JavaScript

Recently, Smart Mobile Studio 1.0 was released and some of our customers expressed an interest in using it with our RemObjects SDK for JavaScript, so I gave it a try. For those of you who don’t know anything about it: Smart Mobile Studio lets you write Object Pascal code (based on the Delphi language) to build a JavaScript application.

You can download the trial version, install and run it. The IDE itself looks cute, its welcome screen offers quite a lot of starter info and we can start creating new projects immediately. Of course the first thing to do is to connect to the RemObjects MegaDemo server with the JavaScript libraries…

Adding RemObjects SDK files

I’ve found two ways of doing this:

Copy the library files to the project folder and manually add the following HTML at the end of the <head> section of index.html.

<script type="text/javascript" src="RemObjectsSDK.js"></script>
<script type="text/javascript" src="MegaDemoLibrary_intf.js"></script>

Or just add press “add script” and paste the script text there.

Designing the form

We’re going to create our usual Sum test app, so let’s create a form like this:

The code

Skipping research attempts, here’s what I got:

procedure TForm1.OnSuccess(res: variant);
    W3EditBox3.Text := res;
procedure TForm1.btnClick(sender: tobject);
var svc: variant;
    @svc = new MegaDemoService(new RemObjects.SDK.HTTPClientChannel('http://localhost:8099/json'),
    new RemObjects.SDK.JSONMessage());
  svc.Sum(W3EditBox1.Text, W3EditBox2.Text, @self.OnSuccess);
Procedure TForm1.InitializeObject;
  {$I 'Form1:impl'}
  W3Button1.OnClick := btnClick;

And that was enough to get the answer.


It’s quite easy to use RemObjects SDK for JavaScript as a third-party library with a quick asm section hack. The blog post of the Smart Mobile Studio creator shows that this may be done properly, and we’ll look into providing official and deeper integration with SmartStudio along those lines in the future.


Windows 8? We got you covered!

April 17, 2012 in .NET, Delphi, Elements, JavaScript, Metro, Month of Metro, Visual Studio, Windows

I updated this slide from //Build/Windows 2011 to show where you can use RemObjects Software’s tools with the Windows 8 Platform and Tools.

Naturally, you can continue to use our tools for Delphi and .NET for desktop application development with Oxygene for .NET, Data Abstract and RemObjects SDK. If you are using Hydra, you can even combine Managed .NET and Unmanaged Delphi for the best of both worlds.  Then, with our latest JavaScript client libraries, we also have you covered in the browser.

The part that everyone is interested in is the new Metro style apps. These are the apps designed for touch on tablets and the desktop, and running in the Metro area of Windows 8. Most importantly, Metro style apps are the only ones available through the Windows Store. We got you covered for Metro, too. The latest betas of our .NET editions work with C#, VB and Oxygene for .NET to build XAML based Metro User Interfaces. Thanks to Windows 8’s new support for JavaScript based Metro apps, you can use our JavaScript client libraries for Data Abstract and RemObjects SDK to build Metro apps based on JavaScript and HTML/CSS too.

We are not in the unmanaged Metro space yet. Currently, the only tools that are supported there are Visual C and C++, which we don’t have libraries for. Hopefully in the future we will see that gap filled in one way or another.

One important thing to point out about the JavaScript client libraries is that they ship with all editions, including our Delphi editions. That means if you currently are building solutions with DA/Delphi or RO/Delphi, you can add JavaScript Metro client applications to your solution, all with the RemObjects licenses you have today. We will soon be offering DA/JavaScript as a free separate download too.

Currently, Metro support is only available in our beta builds (which are available to all users with current subscriptions). Rest assured that we will have final versions of our Metro support by the time Windows 8 ships.

Profile photo of marc

by marc

Using Data Abstract for JavaScript in Visual Studio 11

March 19, 2012 in Data Abstract, JavaScript, Metro, Month of Metro, Visual Studio

As part of our Month of Metro, we’re also integrating Data Abstract (and RemObjects SDK) for JavaScript into Visual Studio, letting you create Metro apps that talk your servers.

While we of course fully support Metro with Data Abstract for .NET as well, this feature will also be available with Data Abstract for Delphi, so don;t be surprised if the DA/Delphi installer suddenly offers to integrate into Visual Studio ;).

Just as you’d expect, we provide a template for a Data Abstract Metro Application in the File|New project dialog:

which will launch into the familiar New project Wizard that you already know from DA/.NET and DA/Delphi. Of course JavaScript is a client-only technology, so the server options are not available, but you can choose to connect your JavaScript app to either Relativity Server or a custom Data Abstract Server.

As you can see, we’ve also started re-theming the wizard to match Visual Studio 11’s flatter look. I’ll spare you the remaining Wizard steps, as they will be pretty similar to running the wizard for DA/.NET or DA/Delphi.

Once the wizard is completed, you have a ready-to-run JavaScript application, with a couple of pieces of code that you can uncomment to easily download data and show it in a <table>.

For this post, i’ll enable the download of PCTrade‘s “CLients” table in default.js

adapter.getData(clientsTable, RemObjects.DataAbstract.Util.createRequestInfo(true, 30, "", []), function () {
    new RemObjects.DataAbstract.Views.HtmlTableView(clientsTable, "table-clients");
  }, RemObjects.UTIL.showError);

and uncomment the matching <table> tag in default.html. When we hit “Start”, our Metro app comes up full screen, first showing the default DA/Metro splash screen:

and then populating the <table> with 30 rows of Clients:

Of course the IDE support for JavaScript expands beyond just the template. For example, the RemObjects SDK menu item sports the familiar Import RemObjects SDK Service entry that lets you import the RODL from an existing RO service and generate a JavaScript Interface file right in our project.

We’re very excited about the possibilities of Data Abstract and RemObjects SDK for JavaScript on Metro, especially as it opens up the platform to Data Abstract for Delphi developers without needing DA/.NET. We’ll talk more about this soon, so stay tuned.

Oh, and: The functionality shown here is available in the current beta that we shipped last Friday. Feedback appreciated!



Month of Metro Media

March 16, 2012 in .NET, Data Abstract, Elements, JavaScript, Metro, Month of Metro, Podcast, rotv

I wanted to point out the podcast and video published as part of the Month of Metro.

First up is the video on building Windows 8 Metro Apps with Oxygene for .NET and VS11:

Then, there is the podcast with Daniel Arroyo of Flaretag, discussing mostly the open source, cross platform mobile application framework Titanium, as well as Metro and JavaScript in general.

There are more podcasts and videos in the works, so stay tuned.



Creating a Data Abstract client widget – Part 4

March 9, 2012 in Data Abstract, iOS, JavaScript

This is the 4th article in a 4 part series (the last for now)

  1. Using DashCode to create an interactive widget
  2. Creating an interactive widget without Dashcode
  3. Creating a RemObjects SDK client widget
  4. Creating a Data Abstract client widget (this article)

In this article we will look at Data Abstract client widgets created without using Dashcode.
Read the rest of this entry →

The desktop is not the OS. It’s an app

March 9, 2012 in .NET, JavaScript, Metro, Month of Metro, Windows

When everyone was in a panic about the announcement that JavaScript was pushed to be the preferred development tool for Windows 8 Metro apps, I said that as long as there is a desktop, traditional Win32 (or Win64) development will be a first class citizen, and that the Metro interface was the old concept of just the traditional “sidebar” apps (which have been developed in JavaScript for a while now), elevated to a new, more prominent status.

Well, it would appear I was wrong.

I was reading Paul Thurrott’s Windows 8 Consumer Preview: A Call For Common Sense and one point of his really stood out to me: “The desktop is not the OS. It’s an app.

He goes on to say . . .

The desktop is not the OS. In fact, while this isn’t technically true, conceptually, the desktop is just an app. The Windows 8 OS is comprised of Windows Runtime (WinRT), the Start screen shell and its Metro-style environment.

and . . .

For those many, many businesses that will rollout Windows 8 alongside Windows 7, the existing desktop environment looks and works almost exactly like its predecessor, and has no compatibility or long-term testing issues. That’s the goal for the Windows 8 desktop. All the exciting and new stuff is in Metro.

This really changes things. It means that the Desktop and traditional Windows programming has more in common with Windows XP mode on Windows 7 (running inside a virtual machine). I am not saying, nor have I heard anyone say, that the “Desktop” is running in a virtual machine, but the point is that the Desktop and traditional Windows programming is now officially “legacy”. In Windows 9 (or beyond), the Desktop may actually run in a virtual machine, or at least a sandbox.

Microsoft is replacing the familiar Windows API’s with WinRT, and this changes everything. Despite your opinions on JavaScript or .NET programming, they are now the preferred tools for developing on the Windows platform.



Creating a RemObjects SDK Client Widget for iBooks – Part 3

March 1, 2012 in Books, Data Abstract, iOS, JavaScript

This is the 3rd article in a 4 part series

  1. Using DashCode to create an interactive widget
  2. Creating an interactive widget without Dashcode
  3. Creating a RemObjects SDK client widget (this article)
  4. Creating a Data Abstract client widget

If you are new to creating widgets, take a look at the previous articles where I outline creating them with Dashcode and without. This article discusses using RemObjects SDK in both Dashcode widgets and in iBooks 2 on the iPad via iBooks Author.

When I first heard that iBooks Author supported interactive widgets powered by JavaScript, I immediately wondered if it would work with a widget that was a JavaScript client for a RemObjects SDK server. I started using Dashcode to create the widget, so that is where we will start in this article.

Read the rest of this entry →

Creating an Interactive Widget for iBooks without Dashcode – Part 2

February 21, 2012 in Data Abstract, iOS, JavaScript, Xcode

A quick update to my post from last week. Xcode became available as an App in the Mac App Store, and it no longer includes Dashcode by default. That means you need to download Dashcode separately, which requires an Apple Developer account. Apple gave the impression that Dashcode was included with iBooks Author, which doesn’t appear to be the case. If you don’t have Dashcode, don’t worry, you won’t need it for today.

This is part 2 of my series on Interactive Widgets for iBooks Author.

  1. Using DashCode to create an interactive widget
  2. Creating an interactive widget without Dashcode (This article)
  3. Creating a RemObjects SDK client widget
  4. Creating a Data Abstract client widget

If you already have an existing HTML5 & JavaScript “applet”, it is the best solution to use, since you can easily adapt it to work as an interactive widget for iBooks. Read the rest of this entry →