Quantcast
Channel: TMS Software
Viewing all 1093 articles
Browse latest View live

My first TMS Training Days

$
0
0

Now that all the releases are out, I can finally tell you about how I have experienced the TMS Training Days in Düsseldorf on the 14th and 15th of November. These were my first TMS Training Days and I can say that the experience will remain with me throughout my life.

Before I start, I would like to thank all my colleagues for giving me a warm welcome and making me feel like I’ve been a part of the TMS family for far longer than I actually am. They answered all my questions, even the stupid ones. And they treat our customers with the same friendliness. Which isn’t that hard as the attending customers were also very kind to me.


TMS Business Masterclass


With great expectations I took a seat in the back of the meeting room, ready to listen to Wagner in the TMS Business Masterclass. He showed us the long road it took from his first product TMS Scripter to his latest TMS Echo. Another product of his is TMS Aurelius, on which John Kouraklis wrote a book: ‘Introducing Delphi ORM: Object Relational Mapping Using TMS Aurelius’. John elaborated on how and why he created this book and why he chose TMS Aurelius for the task. And as a gift there was a copy of the book for every attendee.

Wagner went on with some more in-depth explanation of his products and the newest and most important features. Thanks to the Q&A interaction of the sessions, the more advanced users could get their questions and problems answered by the creator as well. This gave a satisfied feeling for new and experienced customers.

TMS Dev Intensive

The second day was TMS dev Intensive. After a night of dreaming about the TMS Business Tools, I was ready for another packed day. Bruno welcomed everyone for what would be a day full of novelties. Which he immediately proved by showing us the new features in the TMS VCL UI Pack. Thanks to the implementations of SVG there will be no more hassle to get your applications running nice on high DPI. Now you can get your office styled application up to date with the implementation of Office 2019 style.

Ever wondered how to sign PDF files in a secure way? Marion shows us how easily this can be done with the TMS Cryptography Pack. In just a small set of commands we can ensure that the PDF file is from the author and hasn’t been tampered with.

After a small coffee break, I was amazed by Adrian’s session on TMS Flexcel 7.0. It’s hard to comprehend what is possible with this product, actually everything is possible with regard to Excel. His demos showed demonstrated that perfectly.

Then it was time for the marvelous revelation, which I assume you already heard a lot about since then. But we revealed TMS WEB Core for Visual Studio Code to the public. Not only revealed, but all the attendees got a link to personally test magnificent piece of work for some time. While José was showing an example after a small explanation of what TMS WEB Core for Visual Studio Code was, you could hear a pin drop. Everybody was holding their breath when the application was compiling and at the moment the page opened, a lot of people gasped. Even I did, and I already knew what would happen.

Roman Yankovsky put us back with our feet on the ground as he showed us that we do make mistakes while programming. Thank god there is TMS FixInsight, with this tool for static code analysis you will have a more robust and cleaner code. It even gives you optimization advice. To my opinion this tool should be used by every developer to get the best out of your code.

One session on TMS WEB Core wasn’t enough. We still had to explain all of the new features in the upcoming v1.3 Ferrara release. And I can tell you there were a lot. 22 bullet points were shown in the presentation. So much that it would have been to much to even put it in one blog post. (A second was needed.)

Last but not least, we’ve created an application with Holger where everything came together of what we had seen in the last two days. A great summary to let the big chunk of information into our brains. Holger showed us how to use TMS XData, TMS WEB Core, Google Maps, Google Charts and a multi-level treeview all in just one hour. This was the perfect example of how powerful our products are separately, but extraordinary when you combine them.

It was a great experience which made me realize that you can level up your application a lot with our products. The balance between demonstrations and upcoming ideas made it perfect to know what you already can do with the tools and what you will be able to do in the near future. You could think that if you read all of blogs that are linked, that you already know everything, but that isn’t true. There was a lot more covered in the sessions and because of the interaction, it was a personal presentation where the speakers had time for your questions.

If you are wondering if you should come the next time. Don’t hesitate!
And maybe I will be the one answering your questions next year.



macOS & Android 64 bit compile-ready support (update)

$
0
0

A while ago, we've posted a blog about macOS 64 bit support that has been added to our products. macOS 64 bit support has been added in RAD Studio Rio 10.3.2 and now with the 10.3.3 release, you can also target Android 64 bit. Unfortunately, there is no automatic installation for those 2 targets as there is no way for us to detect which version is installed and for which target(s) we need to compile. We aim for adding automatic installation support in RAD Studio 10.4. More information on how to add macOS and/or Android 64 bit support to your application is explained in the following blog post:

https://www.tmssoftware.com/site/blog.asp?post=571

TMS WEB Core v1.3 Ferrara release!

$
0
0


We are happy to announce the release of TMS WEB Core v1.3 Ferrara!
For months it has been tested & evaluated by our team, now it is available for all!

TMS WEB Core v1.3 brings the following new features:
  • Automatic minify/uglify when compiling in release mode from the IDE
  • Automatic JavaScript file versioning
  • Easy UI for HTML element binding at design-time
  • Visual form inheritance support
  • Frames support
  • Design-time editors for HTML template properties
  • Firestore support via TWebFirestoreClientDataSet
  • myCloudData.net support via TWebmyCloudDBClientDataset
  • SQLRestDBBridge support via TWebSQLRestClientDataset
  • Push notifications via TWebPushnotifications component
  • Web crypto API wrapper classes
  • Regular expression API wrapper class TRegEx
  • Local file access via TWebFilePicker, TWebFileUpload
  • TWebLookupComboBox, TWebDBLookupComboBox
  • Redesigned TWebMainMenu
  • New features for TWebGoogleMaps
  • New TWebImageZoomControl
  • Support for selecting the Electron version
  • Component attribute for JS & CSS lib dependencies
  • Update to latest pas2js compiler and pas2js RTL
  • Redesigned TWebMainMenu with responsive behavior / hamburger menu design for smart phone browsers

Version v1.3 has so many new features & improvements!
More details about the new features can be found on the following 2 blogs: part 1 and part 2.

Get started:

As mentioned previously, this version is available for TMS ALL-ACCESS users, TMS WEB Core registered users and TMS WEB Core trial users!

For TMS ALL-ACCESS users, simply use the TMS Subscription Manager and from there, you can download and install TMS WEB Core v1.3 Ferrara.

The v1.3 full version for registered users, can be download after login on our website under "Account / My Products / TMS WEB Core".

For trial users, the v1.3 trial can be downloaded from: https://www.tmssoftware.com/site/tmswebcore.asp

Note: first manually uninstall previous version!

More information:

There is so much to tell about TMS WEB Core, so we kindly invite you to visit our landing page: http://web.tmssoftware.com where more information is provided, including online demos, video tutorials and more.

We're sure you'll be excited to get started exploring these new features. Our team has been long & hard at work on this. Explore TMS WEB Core v1.3 Ferrara and share your experiences and your comments with us.

Learn all about TMS WEB Core v1.3 in a 10 minute video!

$
0
0

There is a lot to discover in TMS WEB Core v1.3 Ferrara. Our colleague Holger Flick made it is easy & fast for you to discover what is new with a video covering the details. In about 10 minutes, you will know all about the new release. Holger made the video in English as well as German language.

This is the English video:


This is the German video:


Get started:

The new v1.3 Ferrara version is available now for TMS ALL-ACCESS users, TMS WEB Core registered users and TMS WEB Core trial users!

For TMS ALL-ACCESS users, simply use the TMS Subscription Manager and from there, you can download and install TMS WEB Core v1.3 Ferrara.

The v1.3 full version for registered users, can be download after login on our website under "Account / My Products / TMS WEB Core".

For trial users, the v1.3 trial can be downloaded from: https://www.tmssoftware.com/site/tmswebcore.asp

Note: first perform an uninstall of the previous version!

More information:

There is so much more to tell about TMS WEB Core, so we kindly invite you to visit our landing page: http://web.tmssoftware.com where more information is provided, including online demos, video tutorials and more.

We're sure you'll be excited to get started exploring these new features. Our team has been long & hard at work on this. Discover TMS WEB Core v1.3 Ferrara and share your experiences and your comments with us.

TMS FNC Blox for the WEB!

$
0
0

Intro

A while back, we brought FNC to the WEB, except TMS FNC Blox was missing due to some deep technical limitations. We can now proudly announce that TMS FNC Blox supports TMS WEB Core!

Features

Below is a list of features that are supported in TMS FNC Blox.

  • High-quality (anti-aliasing) drawing of blocks and lines
  • Open architecture for building custom blocks and lines inherited from base classes
  • Ready-to-use flowchart, arrow and electric blocks
  • Linking system allow customizable link points and information retrieval of connected blocks
  • Block gradient, shadow and bitmap
  • Full block customization: pen, brush, color, selection color, minimum width and height
  • Block text customization: horizontal and vertical alignment, font, word wrap, clipping
  • Customizable link points in blocks
  • Full line (link) customization: pen, source arrow shape, target arrow shape
  • Arc & bezier lines, polygon objects
  • Block rotation supported (including text, bitmap and gradient)
  • Separate TTMSFNCBloxToolBar component for easy diagram editing with no line of code (needs TMS FNC UI Pack)
  • Diagram snap grid
  • Diagram rulers
  • Saving/Loading diagram to/from file and stream
  • Diagram zoom in/out
  • Panning
  • Helper classes TTMSFNCBloxBlockDrawer for easy custom drawing on custom blocks
  • Object deletion and inserting, zooming, and more.

Compatibility

With FNC we aim for reusable code and when bringing TMS FNC Blox to the WEB we wanted to maintain compatibility with FMX, LCL and VCL as much as possible. By rewriting the persistence part of TMS FNC Blox and integrating it into TMS FNC Core it is possible to load blox files that have been saved in a VCL, LCL or FMX application into a TMS WEB Core client application. The code for creating and registering custom blocks in VCL, LCL or FMX is also compatible with TMS WEB Core.

Getting Started

Install the latest version of TMS WEB Core, TMS FNC Core and TMS FNC Blox The demo (also included in the TMS WEB Core demonstrates the uses of the TTMSFNCBloxToolBar, TTMSFNCBloxSelector and how to add, configure and manipulate blox elements.
Demo: http://www.tmssoftware.biz/tmsweb/demos/TMSWEB_FNCBlox/



TMS certified consulting partner: FlixEngineering LLC

$
0
0

Company history:

Since 1996, Dr. Holger Flick has been using Delphi as his primary development platform and has been an active member of the community. He studied computer science at Dortmund University and later wrote his dissertation at the Ruhr University in Bochum in the field of telemedicine. For his passion for and knowledge of Delphi he was awarded the "Delphi MVP" moniker in 2016. In 2018, Holger moved to the United States of America (USA) and established his new company FlixEngineering LLC. The company focuses on consulting, training and software development using object-oriented programming languages like Delphi, C#, Swift, and Objective-C. Holger is part of the TMS Software family providing his expertise as Evangelist and QA Engineer.


Expertise:

  • VCL UI Pack
  • Business Suite Products (XData, Remote DB, Sparkle)
  • Web Core
  • FNC Framework solutions
  • On-Site Training


Primary involvement in TMS products:

  • Trainings
  • Recording tutorial videos
  • Speaking at conferences (in-person or virtual)


What's next?

Currently, Dr. Holger Flick is hard at work to self-publish a book for TMS Web Core in German language.


TMS Partnership:

Even though FlixEngineering has just been founded in 2019, the relationship and cooperation with TMS Software and its owner, Bruno Fierens, has existed since the early 2000s. Holger Flick, owner of FlixEngineering, met Bruno Fierens in person at a developer event in the Netherlands in 2004, and ever since Holger has been a fan and supporter of TMS components. Back in the day, Holger was still a college student, but his focus was already on posting on the web about interesting Delphi component sets and practices. Holger was one of the first Delphi Bloggers, his blog was called "Holger's Thoughts on Delphi". Borland (remember, this was a long time ago.) recognized that he had a talent to find bugs in software rather sooner than later, which led to Holger becoming part of the Delphi QA team.


The involvement with TMS only grew stronger through the years as TMS was a close partner of Borland, and Holger also started testing component sets for TMS Software. Further, he had the guts to make suggestions how to extend and improve certain components. After finishing his studies and deciding that he loved teaching people about Delphi and associated technologies, Holger became part of the TMS Team in 2017. In 2018, he moved to the United States of America, founded FlixEngineering, and promotes TMS products on that continent in person and world-wide online.
Thus, FlixEngineering is your partner for trainings and software development.


Finally:

Working with us means counting on decades of experience in Delphi and facilitate the power of the TMS Consulting Partner Network.

Using EurekaLog with TMS Logging

$
0
0

TMS Logging is a compact cross-platform logging framework offering informative log output to a flexible number of targets with a minimum amount of code. EurekaLog is a first-class exception logging tool for Delphi. We have recently joined forces and worked together to allow you to integrate both in an easy way.

So, if you are using TMS Logging in your application - it may be useful to get TMS Logging output as part of your EurekaLog's crash reports, so you will get a better understanding of execution flow of your application before crash.

TMS Logging supports custom output handlers, so you may simply redirect all logging from TMS Logging to EurekaLog by:

uses
  TMSLoggingEurekaLogOutputHandler;

TMSLoggingEurekaLogOutputHandler unit can be found in SourceExtras folder of your EurekaLog installation. You can activate this output handler by using the usual construct:

TMSLogger.RegisterOutputHandlerClass(TEurekaLogOutputHandler);

This will create EurekaLog log file according to default rules. If you wish to specify file name or location - use ELogOpen function to open log file before registering output handler. In any case - EurekaLog log file will be automatically appended to crash report:

>

Additionally, you may make a local copy (e.g. copy file to project) of TMSLoggingEurekaLogOutputHandler unit if you want to make modifications.

This approach is recommended over the alternative (see below), because it sends log in a formalized format, allowing for client-side manipulations in viewer tool.

TMS Logging to EurekaLog (alternative)

You may attach TMS Logging output as file directly (without converting to EurekaLog's logging).

Note: TMS Logging only provide saving to text formats (text, HTML, CSV). That is why we recommend to use above mentioned method instead (when possible).

You can attach the log file from TMS Logging with the following code example:
Important Note: example below will add a new file with log output from TMS Logging. The new file will be added inside EurekaLog's bug report that is being send to developers. E.g. you have to set up sending to receive this file. The local EurekaLog's report do not store any additional files. If you wish to capture .elp file locally for testing purposes - see this example.
uses

  VCL.TMSLogging,  // for TMS Logging routines
  // You can also use TMSLoggingHTMLOutputHandler
  // Please, refer to TMS Logging documentation 
  TMSLoggingTextOutputHandler,
  EException,      // for TEurekaExceptionInfo

  ESysInfo,        // for GetFolderTemp
  EEvents;         // for RegisterEventZippedFilesRequest
 
var
  // File name for TMS log file
  GTMSLogFileName: String;
 
// Initialize TMS Logging to save log to text file
// This is just an example
// You may replace/customize it
// Please, refer to TMS Logging documentation
procedure InitTMSLogging;
begin
  GTMSLogFileName := GetFolderTemp +
    ChangeFileExt(ExtractFileName(ParamStr(0)), '.txt'); 

 
  TMSLogger.RegisterOutputHandlerClass(TTMSLoggerTextOutputHandler, [GTMSLogFileName]);
end;
 
// Will be called when EurekaLog wants to 
// add additional files to packed bug report file (.elp)
procedure PackLogFile(const ACustom: Pointer; 
  AExceptionInfo: TEurekaExceptionInfo; 
  const ATempFolder: String; 
  AAttachedFiles: TStrings; 
  var ACallNextHandler: Boolean);
var
  LFileName: String;
begin
  // Get a temporary filename 
  LFileName := ATempFolder + ExtractFileName(GTMSLogFileName);
 
  // Copy the log file 
  CopyFile(PChar(GTMSLogFileName), PChar(LFileName), False);
 
  // Pack the file to EurekaLog's crash report 
  AAttachedFiles.Add(LFileName);
end;
 
initialization
  // Initialize TMS Logging to save log to text file
  InitTMSLogging;
 
  // Ask EurekaLog to add more files to .elp reports
  RegisterEventZippedFilesRequest(nil, PackLogFile);
end.

When you receive crash report from EurekaLog - the TMS Logging log will be shown as file attach:



EurekaLog to TMS Logging
Alternatively, you may want to set up a reverse integration. E.g. you may want to have EurekaLog's crash information inside your TMS Logging log files. Use example below:
 uses

  VCL.TMSLogging,  // for TMS Logging routines

  EException,      // for TEurekaExceptionInfo

  EEvents;         // for RegisterEventExceptionNotify
 

// Tell EurekaLog to log crash info with TMS Logging
procedure LogExceptionToTMS(const ACustom: Pointer;
  AExceptionInfo: TEurekaExceptionInfo;
  var AHandle: Boolean;
  var ACallNextHandler: Boolean);
begin
  // Log exception 
  TMSLogger.Error(Format('[%s] %s',
    [AExceptionInfo.ExceptionClass,

     AExceptionInfo.ExceptionMessage]));
 
  // Log exception's call stack
  TMSLogger.Info(AExceptionInfo.CallStack.ToString);
 
  // You may also log other properties of AExceptionInfo
  // Or you can use routines from ESysInfo to log process and environment info
  // Of you can use BuildBugReport function to compose bug report text
end;
 
initialization

  // Tell EurekaLog to log crash info with TMS Logging
  RegisterEventExceptionNotify(nil, LogExceptionToTMS);
end.


Curious about our new technologies, new challenges & new products for 2020?

$
0
0

It's fascinating how everything evolves so incredibly fast in the software world!
So our team is also trying really hard to keep up with the latest developments. And to give our customers access to all our latest developments we have created our no-nonsense subscription TMS ALL-ACCESS! Because we want our customers to be able to use all our products with no restrictions or limitations.
And when we say ALL we really mean ALL our products we offer now and also all new products we'll release in the year of the subscription. Moreover, our all-access users are the first to receive the previews and betas of our non-released products!

Here is a small overview of the new products we added in 2019:
  • April 2019:
    TMS FNC Cloud Pack: Seamless access to cloud services from Windows, cross-platform and the web. Included in the TMS FNC Cloud Pack is the ability to create/implement your own REST service client(s).
  • June 2019:
    TMS WEB Core Padua: New additions on many levels: Object Pascal to JavaScript compiler improvements, new web frameworks & controls support, new UI components, improved IDE integration.
  • July 2019:
    TMS VCL UI PACK: TMS Component Pack became TMS VCL UI Pack! All components were revised for high DPI & VCL Styles support and internally the TMS Component Pack completely moved to a new build platform that was already in use for our cross-platform FMX & FNC products.
  • November 2019:
    Introduction of a new groundbreaking product: "TMS WEB Core for Visual Studio Code"
    At the TMS Training Days in Düsseldorf, Germany as well as at the Be-Delphi conference in Belgium, José León Serna (creator of Delphi for PHP & former Embarcadero IDE lead architect) presentated the preview of TMS WEB Core for Visual Studio Code. After more than a year of hard work & intensive collaboration with the TMS team, this technology preview, with an almost complete feature set for the first release, was presented to the audiences.
  • December 2019:
    TMS WEB Core Ferrara: 20 new features were added to TMS WEB Core v1.3.
  • December 2019:
    TMS FNC Blox: With FNC we aim for reusable code and when bringing TMS FNC Blox to the WEB we wanted to maintain compatibility with FMX, LCL and VCL as much as possible. By rewriting the persistence part of TMS FNC Blox and integrating it into TMS FNC Core it is possible to load blox files that have been saved in a VCL, LCL or FMX application into a TMS WEB Core client application. The code for creating and registering custom blocks in VCL, LCL or FMX is also compatible with TMS WEB Core.
  • January 2020:
    Coming up in January 2020: TMS WEB Core for Visual Studio Code BETA will be available for TMS ALL-ACCESS users!
And we have a long list of new component and new product ideas for 2020!

One of our many commitments for 2020: make user experience more pleasant!

Use the TMS Subscription Manager with a single login to get instant access to all products in your TMS ALL-ACCESS subscription.
  • TMS Subscription Manager categorizes the products per technology : VCL, WEB, FMX, BIZ, FNC, DEV, .NET, IntraWeb and LCL.
  • Per product, you get a description, link to the product webpage, info on latest available version and release date, info on your last download version and download date and info on your last product install version and date.
  • You can mark specific TMS products as your favourite products.
  • It allows you to start multiple downloads.
  • Behind the scenes, TMS Subscription Manager keeps a backup of any product versions you have downloaded. Right-click on the downloaded version number cell per product and from the context menu you can see all available versions (if there are any) and activate another version for install.
  • The TMS Subscription Manager keeps you always informed about the validity of your subscription and will guide you to the renewal order upon expiry.
  • From the TMS Subscription Manager there is a comprehensive list of links to interact with us, via email, social media, forums, RSS, Youtube videos ...
So cover 2020 now with your TMS ALL-ACCESS license and you don't have to do anything else for the rest of the year!
BTW did you know that the renewal price after 1 year is just 495 EUR ?!
Find out more about our products included in TMS ALL-ACCESS.


Online training courses for TMS WEB Core at reduced price!

$
0
0

With great pleasure we announce another great collaboration with Wagner Landgraf, architect TMS Business tools. Wagner Landgraf is now organizing online training courses for TMS WEB Core! If you work with Delphi and haven't lived in a cave in the last two years, you certainly know what we are talking about!

TMS Web Core revolutionized web development with Delphi. It is the first Delphi framework to be able to produce a truly 100% WEB HTML/JS application, without the need for binaries, executables, where you can deploy the application to any hosting server.

This new paradigm introduces a number of new concepts for the traditional Delphi programmer. This course covers all of these concepts from both general web applications and TMS Web Core specifics.

You will learn concepts from the beginning: what is a web application, how does it work, what are single page application (SPA) and multiple page application (MPA), what is HTML, JavaScript, CSS, Bootstrap, AJAX.

From this foundation, you will learn how to develop Web applications with Delphi and TMS Web Core, learn about the structure of the Web Core application, language aspects, integration with JavaScript, how to use the visual framework, up to using backend databases, whether using TMS XData or other server framework of your choice, creating screens for CRUD functions.

The course has a conceptual introduction, but from there it becomes extremely practical, hands-on, with virtually every source-code lesson available for you to execute, modify, debug, and learn!





Who is this course for?

Developers looking to build WEB applications using Delphi, following modern Single-Page-Application architecture.

What will you learn?

  • Web Application Concepts: HTML, JavaScript, CSS, AJAX, Bootstrap.
  • Web Application Architecture: History, MPA, SPA.
  • Create a default directory structure and use Build Configuration TMS Web Core: Project installation, configuration, and structure.
  • Pascal / JavaScript Compiler: Language integration with JS, RTL, basic types, closures, asm, RTTI, etc.
  • TMS Web Core Visual Component Library - Creating the UI.
  • Working with data via backend: AJAX, ClientDataset, XData.

Prerequisites

  • Know the Delphi language
  • Knowing how to use Delphi / RAD Studio IDE
  • Delphi XE7 or later installed
  • TMS WEB Core (free trial or registered version) if you want to run the examples

Do you find it difficult to understand spoken English?

No problem, in all videos of this training course you have the options to turn on subtitles, and they were not auto-translated. All subtitles were written manually to make sense and with technical terms spelled correctly.

Full source code for examples

Each lecture of this course that uses a sample project has an associated downloadable file which includes the full source code of the example.

Special offer for YOU!

If all this made sense to you, then I have excellent news for you. You can now take advantage of this online training course at reduced price!

Register today and use the following coupon code WEBCOREPROMO60 to get 60 USD (around 30%) discount for the “Introduction to TMS Web Core” training course.

So don't waste your time and be one of the first to secure your place in the TMS WEB Core online course with Wagner Landgraf.

A Blog about the Blog

$
0
0

To our own surprise, over the last years, we have written almost 450 blog articles. That is an amazing amount and most of these blog articles contain valuable technical information and tips about our products. At the same time, we noticed that older blog articles were rarely read and we found ourselves time and time again pointing to older blog articles when giving our users guidelines in response to support communication.

In a nutshell, a reorganization of how our blog articles can be viewed and more importantly how to navigate in these blog articles was overdue.

So we decided to revamp our blog page to make it easier to recover older blog posts for everyone.

The following new options are available now:

  • Featured post: An important post can remain on top of the page to make it stand out
  • A text search on keywords
  • Voting on blog posts to indicate what is relevant and liked by you
  • Filter posts by technical (framework) category
  • Filter posts by product name
  • Filter posts by author
  • Sort posts by popularity based on the number of votes
  • Sort posts on the number of pageviews

With all these new options, anyone should be able now to find interesting blog posts much faster and easier.

Fast discoverability of relevant information for you is crucial and we are convinced this is another big step towards achieving that goal. This big step forward is by no means a final step. Further fine-tuning to maximize your user-experience is on our agenda. We therefore also count on your feedback and inputs to help steering these efforts! The blog comments section is an ideal place to start this interaction.

Next generation cross-platform components

$
0
0

Our team is very hard at work to continue to extend and improve our products, extend the documentation and make new demos. We do this on a daily basis to make sure we offer you the best solution for your projects!

In 2019 we focused primarily on our FNC framework. Not only improving our existing components, but also adding new products, such as the TMS FNC Cloud Pack, TMS FNC Dashboard Pack, ...
And that because we truly believe that FNC is the next generation cross-platform framework!

Our FNC development originated from our vast experience and deep technical expertise developing FMX components since it first appeared in Delphi in 2011 and as it became available in TMS FMX UI Pack, TMS FMX Chart and TMS FMX Cloud Pack. We developed it because with our experience, we thought there was a better way to create cross-platform UI controls.

The most important differences between FMX and FNC are:

  • Architecture based on orginal FireMonkey classes
     
  • Not easy to extend/customize
     
  • Performance is hard to achieve when complex UI controls involve many objects
  • Basic design-time integration
  • Supports the FMX framework only
  • New independent architecture built-up from scratch
  • Easily extendible with many customization options/events
  • Faster performance, high quality graphics
  • Enhanced design-time integration
  • Supports multiple frameworks (FMX, VCL, LCL and WEB)
  • High level of compatibility with older FMX code


TMS FNC components can be simultaneously used on these 4 frameworks:

TMS FNC components can be simultaneously used on different operating systems and browsers:


Unique advantages of FNC

  • an easy maintainable single-source cross-framework/cross-platform code base
  • seamless integration in new and existing applications, can be mixed with other regular FMX or VCL controls
  • high performance and high quality graphics
  • intuitive & consistent property layout to smoothen the learning curve
  • only 1 license & only 1 learning curve to create applications for VCL, FMX, LCL and WEB

Large range of FNC controls available

  • TMS FNC Blox: Add diagram and flowchart capabilities to your application.
  • TMS FNC Chart: Fully cross-platform chart for business, statistical, financial & scientific data
  • TMS FNC UI Pack: Powerful, feature-rich UI controls for 4 frameworks and 5+ operating systems
  • TMS FNC Dashboard Pack: Create dashboard applications for Windows, cross-platform and the web
  • TMS FNC Cloud Pack: Seamless access to cloud services from Windows, cross-platform and the web
  • TMS FNC Component Studio: Our time & cost saving bundle of all FNC components


Looking for components to enhance your cross-platform project? We invite you to visit the TMS FNC landing page where more information is provided, including key features, demos and more...

Upgrade your license to TMS FNC components and take advantage of the different possibilities to develop extraordinary projects.

Eager to try out our FNC components?

Contact sales@tmssoftware.com for the best discount upgrade offer depending on your currently purchased products.

TMS WEB Core for Visual Studio Code: Videos

$
0
0

At the end of 2019 we made a big announcement about at TMS WEB Core for Visual Studio Code. In collaboration with José León Serna (creator of Delphi for PHP & former Embarcadero IDE lead architect) and the TMS team, we presented a preview with an almost complete feature set for the first release.

Visual Studio Code



Visual Studio Code is a free, open-source, extensible and cross-platform IDE. This means that the Visual Studio Code IDE works exactly the same on Windows, macOS and Linux and this also with full high-DPI support. Visual Studio Code is an initiative from Microsoft and focuses on being open & extensible.

José León Serna has created many useful videos about Visual Studio Code. The videos are available on our social media. Below is a list of the existing videos and many more will follow!


Or watch all the videos in this playlist.



What's next

Our TMS ALL-ACCESS users will be the first to receive a beta for this product. We will send out notifications when this is ready.

Our team already has ideas for further developments in several directions. But we would also love to hear from you what extra features, future directions you would like to see for this project. Leave a comment below!

On Valentine's Day we celebrate 25 years Delphi!

$
0
0


25 years Delphi!

2020 is a very exciting year for all Delphi lovers! Delphi 1.0 was released 25 years ago and celebrates its 25th birthday this year.


In 1995 we were totally excited writing our first VCL UI control for a 16bit Windows 95 application in Delphi 1. 25 years later Delphi is the powerhouse that permits building native VCL Win 64 per monitor high-DPI enabled Windows applications, cross-platform FMX apps running on Windows, macOS, iOS, Android, Linux using a TMS Aurelius ORM and/or a TMS XData REST backend to abstract database access. A world of difference between 1995 and 2020 but still using a highly backwards compatible and familiar RAD component based development approach.
Celebrate 25 years Delphi with us and win prizes!
To share the passion and celebrate, in February we have a special Valentine challenge for you.
  1. Take a screenshot of your coolest project you created with Delphi using TMS components.
     
  2. Share this screenshot with a comment what TMS components are involved on social media.
     
  3. Tag @TMSsoftwareNews & use following hashtags:
    #TMS , #delphi and #embarcadero on

     
  4. Tag @tmssoftware & use following hashtags:
    #tmssoftware , #delphi and #embarcadero on

Prizes!
You are in control who wins. Simple! We count the number of likes + shares + comments. The top 3 participants with the highest count win one of these awesome prizes:
Are you one of our winners and you already have this license? Then you will receive a FREE LICENSE RENEWAL.

That is not all! Our top 3 winners will also receive this limited edition TMS mug, we give away the very last 3 pieces of this limited series we created:
TMS has a wide range of products, including:
TMS WEB Core
TMS WEB Core enables to build modern web client applications following the single-page architecture that also other modern frameworks like Angular, vue.js, React employ.. TMS WEB Core is offered at 395 EUR. But this month you get 20% extra discount, so for 316 EUR only.
TMS FNC Component Studio
With this bundle you have the freedom to create powerful apps of your choice. Separate purchase of the products will cost you 460 EUR. This bundle is offered at 295 EUR, but this month you can get this for discount price 236 EUR.
TMS VCL UI Pack
Create modern-looking & feature-rich Windows applications faster with over 600 components in one money and time saving bundle for Delphi & C++Builder. Regular bundle price is 295 EUR, but only this month you get extra 20% discount on this bundle, so this is 236 EUR only!
TMS Business Subscription
TMS Business Subscription is our bundle framework that includes: TMS Aurelius, TMS XData, TMS Scripter, TMS Data Modeler, TMS RemoteDB, TMS Echo, TMS Diagram Studio and TMS Workflow Studio. You can purchase your license for regular price 395 EUR. But this month you can get your license for 316 EUR only!
TMS ALL-ACCESS
TMS ALL-ACCESS is our no-nonsense bundle, where you get all our components for just 1695 EUR, instead of 5870 EUR. And yes on top of that you get 20% extra discount this month! So you can get all our components for 1356 EUR.

Note: This discount offer is valid until February 29, 2020.

Ready, set, go...
The registrations are open from February 1 until February 13. The winners will be announced on February 14 on our social media and blog page!



All the best!

Ready for the new Microsoft Edge Chromium browser!

$
0
0

Unless you have been living under a rock, you will know that Microsoft has been busy transforming their Edge browser to be based on Google Chromium. This means Edge ditches the EdgeHTML rendering engine as well as its JavaScript engine ChakraCore. Now Edge will use the Blink rendering engine and the V8 JavaScript engine. Some consider this excellent news, especially for browser compatibility for your websites (one less rendering engine to check against), others are sceptical that this reduces competition in the browser world. As always, it is hard to please everyone.

Now, for Delphi developers this is fantastic news! With adopting Chromium, Microsoft also did the necessary effort to provide the ability to host the browser in your native Win32 or Win64 applications! And yes, I hear your relief. Finally, after all those years, developers can finally get rid of the dependency on the Internet Explorer activeX with all its rendering and security issues and less and less website compatibility every day.
As Microsoft will roll-out Edge Chromium to Windows 10 machines (their only actively supported Windows operating system these days). This means that the solution eventually will require no extra deployments with your Delphi executables (as opposed to using the standalone CEF4 Chromium engine that requires a myriad of DLLs and other files to deploy).

Being very excited about this, we decided to already prepare for this and develop a browser component for Delphi (and in the process also for Lazarus) that is based on the new Microsoft Edge Chromium. While working on this, we thought we could as well create it for VCL Delphi applications as for FMX (FireMonkey) Windows applications (and LCL Lazarus applications).

Oh wait, I said one component that can be used in 3 different frameworks? Yes, for 4 years already we have our FNC technology (Framework Neutral Components) that allows us to do this.

So, in a nutshell, in an upcoming TMS FNC Core update, expect the new web browser to be included that uses Edge Chromium out of the box. As an extra cherry on the cake, this browser will offer live preview of pages at design-time.

Here is Delphi 10.3 Rio showing a VCL application with a live Edge Chromium based browser component:


Here is Lazarus 2.0.6 showing an LCL application with a live Edge Chromium based browser component:

Microsoft is doing a staged rollout of their new Edge Chromium since Jan 15, 2020, but if your Windows 10 was not yet updated with it, you can download it here.

Get started with our FNC components for VCL applications, FMX applications, LCL applications and TMS WEB Core clients today. Shortly, we will release the TMS FNC Core update with the new Edge Chromium support. Stay tuned also for more extremely exciting new developments brewing in our labs and coming to FNC soon!

TMS FixInsight v2020.2 is here

$
0
0

Our Delphi static code analysis tool just got updated. TMS FixInsight is your indispensable tool to enhance your Delphi code quality and make it less prone to errors than your Delphi compiler warns for.
TMS FixInsight catches numerous classic patterns of mistakes in code and with the new version v2020.2, three new rules have been added:

C11
Exception class name should start with 'E'
This is an obvious rule. TMS FixInsight will now just produce a hint that exception class name should start with E so your code remains as consistent as possible.

W535
Enumerated constant(s) missing in case statement
In the code below, etThree is missing from the case structure and will trigger a warning.

Example:

type
   TEnumType = (etOne, etTwo, etThree);

var
   EnumType: TEnumType;
begin
   case EnumType of // <= W535
     etOne: ;
     etTwo: ;
   end;
end;
It's not always an error, but worth taking a look. Maybe add else statement.

W536
New class instance passed as const interface parameter
This issue is addressed here: https://stackoverflow.com/questions/4509015/should-the-compiler-hint-warn-when-passing-object-instances-directly-as-const-int
and here
https://pascal.today/2016/12/16/take-care-of-const-and-interface-parameters/

Example (see comments in code):
type
   ISomeInterface = interface
   ['{AAAAAAAA-AAAA-AAAA-AAAA-AAAAAAAAAAAA}']
   end;

   TSomeClass = class(TInterfacedObject, ISomeInterface)
   end;

procedure DoSomethingWithSomeInterface(const SomeInterface: ISomeInterface); begin
   // ...
end;

procedure DoSomethingWithSomeClass;
begin
   // ...
   // After this call TSomeClass instance will not be released.
   // There is a potential memory leak.
   DoSomethingWithSomeInterface(TSomeClass.Create); // <= W536
   // ...
end;

The update v2020.2 of TMS FixInsight is available now. All active registered users can get this update after login on our website.


Happy Anniversay Delphi!

$
0
0



Reflecting back on the past 25 years, it was nothing short but an exciting Fantastic Voyage. Without Delphi, my life would have been radically different and TMS software would not be what it is today. Here is a short timeline of what were milestones for us in these 25 years:

1995: Delphi 1 release. I literally couldn't wait till the Delphi 1 box landed in the software store in Belgium. I drove about 100km to the distribution center to pick up my Delphi 1 box the day the shipment of boxes arrived from the airplane in the depot. Being a self-employed software consultant, I instantly switched my development projects from Turbo Pascal for Windows to Delphi

1996: Delphi 2 release. The move from 16bit to 32bit Delphi applications instantly gave our programs a huge headroom and increased stability.

1998: TMS software is recognized as Borland Technology Partner. I was especially proud to become part of the Borland inner circle of partners and being involved in product betas and travel numerous times to Scotts Valley to learn about new developments.

1998: I started a collaboration with Wagner Landgraf. Wagner is living & working in Brazil and also doing Delphi component development. Now, 22 years later, there is not only a strong collaboration but also a strong friendship and Wagner Landgraf is instrumental in key TMS products and helps steering the direction of the company.

1999: Borland launched Kylix. "Living la vida Linux" was the tagline of Delphi developers these days. Although it was a bumpy road, we also offered CLX components that could be used to create native Linux applications from Kylix, the Linux cousin of Delphi.

2000: The company tmssoftware.com bvba was officially established. I made the move from registered single & self employed software consultant doing mainly component development to work as owner of the established company tmssoftware.com bvba. Yes, in October this year we have 20 years of the official company establishment to celebrate!



2000: I started a collaboration with Adrian Gallero. Adrian is working out of Uruguay on the Flexcel Delphi product. This year we have 20 years of collaboration and friendship to celebrate! Together with Wagner Landgraf, we still regularly brainstorm on every new step the company makes.

2001: TMS launches IntraWeb components. Atozed created a game-changer with IntraWeb, enabling RAD component based web development from our beloved Delphi IDE. Delphi developers were no longer confined to developing Windows applications but could embrace the web from now on.

2003: In the Belgian office our first colleague Bart Holvoet joins the TMS family. Bart is initially dedicated to IntraWeb development. Up till today, Bart is still working at TMS as expert mainly in Delphi and web development.

2004: Borland brings Delphi 8 for .NET. Since Microsoft introduced the .NET framework, it has taken the development world by a storm and Borland judged it couldn't stay behind and introduced a compiler to generate .NET code from Delphi. This was based on the VCL.NET framework, a variant of the Win32 VCL framework. As customers expected and demanded to move their applications to .NET, we did all the hard work to make our VCL components VCL.NET compatible.

2007: The Belgian team grows with Pieter Scheldeman joining. After so many years, Pieter oversees all cross-platform and especially the FNC framework among many other things.

2009: Codegear brings Unicode to Delphi. Having been stuck in the ANSI zone for so long, an equally liberating move was the introduction of Unicode out of the box as default string type.

2011: Delphi XE2 brings Win64bit development to Delphi developers. The 32bit compiler that served from 1996 till today got a big brother DCC64 to brings our Delphi applications to the 64bit memory space.

2011: Delphi XE2 kicks-off the cross-platform era. Delphi XE2 is the landmark of a major new direction Delphi is taking with bringing cross platform development, initially for iOS for Apple's new iPhone. The FireMonkey framework (FMX) is the cross-platform counterpart of what VCL is for Windows specific development. Excited with this new world opening for Delphi developers, we get started developing FMX components right-away.

2012: Delphi XE3 brings the Delphi compiler to iOS and OS-X. As in Delphi XE2 it was still using the FPC compiler to compile applications to iOS, now Embarcadero offers its own compilers for iOS and OS-X

2013: Delphi XE5 brings Android support to Delphi. The cross-platform family extends and now spans Win32,Win64,iOS,macOS and Android. TMS ensures our family of FMX components are compatible for all these platforms

2017: Delphi 10.2 Tokyo adds Linux support. Delphi extends the range of supported platforms once again with support to build Linux applications. After the first feet in the Linux territory with Kylix in 1999, Delphi is back generating Linux applications but this time from a Windows IDE.

2018: TMS Launches TMS WEB Core. Based on Pascal to JavaScript compiler, TMS WEB Core empowers Delphi developers to develop rich web client applications in RAD component based way just like Delphi 1 introduced with the VCL and based on the Object Pascal language.



2020: TMS Launches its Academic License program. Realizing how important it is to nurture the next generation of enthusiast and passionate Delphi developers, we want to contribute in our way to empower young aspiring developers to discover the power of Delphi. Read more about the TMS Academic Program here.


It is now Feb 14, 2020. 25 years after the Delphi 1 in 1995 and I am extremely thankful for being blessed with living my passion for all these years. I am very happy, honored and respectful to be part now of TMS family of 17 bright, intelligent, passionate and creative Delphi developers. I am proud and humble at the same time for the trust of so many customers world-wide creating great Delphi applications with our components. I am filled with gratitude for the many friends I learned to know all around the world sharing the passion of software development and Delphi. I am ready for the next 25 years of passion and adventure. Are you?

As Delphi turns 25, TMS launches the TMS Academic Program

$
0
0


February 14th is a very special date!

  • Everyone celebrates Valentine’s Day.
  • Delphi developers celebrate Delphi’s birthday.
  • And today TMS sets another milestone with the launch of the TMS Academic Program!

2020 is a very exciting year for all Delphi lovers! Delphi 1.0 was released 25 years ago and celebrates its 25th birthday this year.

This is definitely not only a milestone but marks also the time for getting a new generation up to speed. Many friends Delphi developers I learned to know in these 25 years have meanwhile kids that grew to young adults and many of them also have a passion for IT. Embarcadero did a fantastic move introducing the Delphi Community Edition for students a couple of years ago. We decided to make our contribution as well for students aspiring to become equally passionate Delphi developers as we are. With the Delphi Community Edition students already have an extremely powerful tool in their hands and we want to enrich this with offering our most popular products also free to students with the TMS Academic Program.

From today, we can proudly announce that our TMS VCL UI Pack is the first product in the TMS Academic Program. Our TMS VCL UI Pack is not only one of our most popular products, it is also the product with the longest history and accompanied Delphi since Delphi 1. With TMS VCL UI Pack, students can extend their software development toolbox with a huge range of UI controls to create feature-rich and modern looking user interfaces.



Move over to our TMS Academic Program landing page where you can discover what TMS has to offer to students.



Registration is very easy:

  1. Register for a free TMS VCL UI Pack Academic license with a school or university email address

  2. Receive your credentials to login on our website via your student email address

  3. Login and download your free TMS VCL UI Pack Academic installer

  4. Install the product for the Delphi Community Edition

  5. Enjoy being part of the TMS family with full access to our website, forums, product updates for 1 year and develop great Delphi VCL applications


Stay tuned for more free academic licensed products from TMS being added in our TMS Academic Program in the coming months!

Delphi Valentine challenge

$
0
0

Begin this month we announced a special Valentine challenge to all Delphi users.

Everyone could simple share a screenshot of their project, created with Delphi using TMS components and win free licenses.

We counted the number of likes, shares and comments on Facebook and Twitter. And our top 3 with the highest counts are:

1. Anderson Da Campo


2. Yashar Nahar


3. Alex Schmitt


the winners can contact our team to receive their free license.
All other participants will receive 20% discount on a TMS license of their choice. They can contact our team at info@tmssoftware.com with a reference to their post.

Fun facts & nostalgia

TMS certified consulting partner: Kassebaum

$
0
0


Roman Kassebaum started to work with Delphi in 1996 after he graduated with a Master degree from the University of Paderborn. Since 2001 he is working as a freelancer. He is a Delphi MVP and an Embarcadero Technology Partner. During the last years he became a member of the great TMS team and is also a certified TMS Consulting Partner. He is a specialist in all kinds of Delphi projects including TMS Business components TMS Web Core library for which he created the Delphi IDE integration.


Company history

  • Started in 1996 with Delphi and in 2001 as a freelancer.
  • Kassebaum is located in Bünde / Germany.
  • Kassebaum is a family business: Roman is supported by his wife and sons. The older one already studies Maths and Information Technology. The younger one currently builds web sites.



Rapid-fire with Roman...


  • Your main work?
    I'm converting components from older Delphi versions to the recent ones. People know me for the Turbo Pack components.

  • An example of your work?
    An example of my work is the IDE integration of TMS Web Core.

  • Which TMS components do you mainly use?
    I'm using TMS BIZ (XData, Sparkle, Aurelius and BCL), TMS Web Core, TMS IntraWeb and TMS PassKit.

  • Which operating systems do you use?
    I'm using the platforms Windows, macOS, Linux, iOS and Android.


TMS Partnership:



Roman started with 1 small project in collaboration with Wagner Landgraf. Seeing his great work and enthusiasm he was later involved in the TMS PassKit project.
And before he knew, he was a valuable part of TMS team and the IDE integration for TMS WEB Core was trusted to him!
Roman is not only a certified TMS Consulting Partner, but also a regular speaker at the TMS training Days.

Join our network

In May 2019, we've started our network of TMS certified consulting partners to make development easier for you. These are partner companies we know, have a long term relationship with and that we know have deep and expert level knowledge in Delphi and our TMS software component products.

We plan for extending our network of consulting partners in the coming months and years. If your organisation is interested in becoming such partner, feel free to reach out & discuss.
Visit the partners landing page for more information and details!

TMS Business Masterclass: Online

$
0
0

On November 14th, 2019, in Düsseldorf, Germany, another day of TMS Training Days 2019 took place - the biggest TMS Software event so far. During the TMS Training Days, TMS team members from nine different countries have spoken about Delphi development, TMS libraries and components, in sessions that targeted from the beginner developer to the advance one.



Specifically on November 14th, TMS Business Masterclass took place. Attendants got in-depth training day on TMS Business tools, with Wagner Landgraf, architect of TMS Business Tools.

This training course is the replay of the full TMS Business Masterclass day. If you missed the event for any reason, here is now the opportunity to watch it!

You will feel like attending the event: the content includes the replay of the slides and as well the video recording of the instructor. Interaction with the audience is also included: content also includes questions from attendants and most of the discussion and debates that happened in the event, including subtitles for parts of the audio that cannot be cleared heard.



Who is this course for?

Delphi developers looking to learn more about ORM, REST/JSON development, multi-tier applications and also some background about TMS Business tools, with code examples.

What are the sessions content?

  • Session 1: The TMS Business World
    A journey into the world of TMS Business bundle. We will learn about the solutions provided by TMS Business: the components included, the libraries, the use cases, all in the historical context and the motivations behind it. Products covered: TMS Scripter, TMS Diagram Studio, TMS Workflow Studio, TMS Data Modeler, TMS Aurelius, TMS Sparkle, TMS RemoteDB, TMS XData, TMS Echo, TMS Logging.
    *BIZ level: Beginner
  • Session 2: The Joy of Databases
    A talk about new ways to deal with databases. What is an ORM (Object-Relational Mapping) framework, and are the most recent news and features about it. What you can use to help you out in modeling your databases, easily use existing databases with the new paradigm, and advanced techniques on ORM and database modeling. Products covered: TMS Aurelius, TMS Data Modeler
    *BIZ level: Intermediate
  • Session 3: Your App Everywhere: REST API
    Multitier, cloud, REST, HTTP, SSL: What, Why, When, and mainly, How? Learn what a REST API server means, why you will benefit from moving your app to the cloud, and learn how to do it in a very RAD way. The latest features will be covered, even for the experienced users. Products covered: TMS XData, TMS Sparkle
    *BIZ level: Intermediate
  • Session 4: The Unsung Heroes
    A deeper look into three awesome TMS Business libraries that bring you solutions for problems you never thought you had. User-customized application, modifying business rules at runtime, offline data synchronization, and moving your app to the cloud in a couple of days. Products covered: TMS Scripter, TMS Echo, TMS RemoteDB
    *BIZ level: Beginner
  • Session 5: Getting serious in the Cloud
    Advanced techniques and concepts when building REST API servers: Security, background processing and deep analysis of real-world source code. Products covered: TMS XData, TMS Sparkle
    *BIZ level: Advanced
  • Session 6: All Together Now
    A very interactive session where all the current ideas from the TMS team for the future of TMS Business will be presented. We will discuss the existing roadmap, brainstorming about all the possibilities, have all questions answered and summarize the whole day.

A Q&A session where all the current ideas from the TMS team for the future of TMS Business will be presented. Discussion about existing roadmap and brainstorming about all the future possibilities.

What is the language spoken in the course?

Everything is spoken in English, even though the instructor is a native Portuguese speaker. Questions from the audience are mostly subtitled in English.

Full source code for examples

Each lecture of this course that uses a sample project has an associated downloadable file which includes the full source code of the example.

Your Instructor



Wagner Landgraf

Wagner is founder of landgraf.dev, a place for Delphi developers to find information and courses about Delphi. Even though being a Master of Science in Engineering, he's a developer at heart. Having worked with Delphi since its very first version in 1995, and being partner of TMS Software (a renowned company that provides solutions for Delphi), Wagner is the main developer behind popular Delphi frameworks like TMS Aurelius, TMS XData and TMS Scripter, among others.

Discover more online courses on Landgraf.dev.

Viewing all 1093 articles
Browse latest View live


<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>