TMS Software. All-Access

FNC empowers your FMX (FireMonkey) development

Intro The multi-device, true native app platform The FireMonkey® framework is the app development and runtime platform behind RAD Studio, Delphi and C++Builder. FireMonkey is designed for teams building multi-device, true native apps for Windows, OS X, Android and iOS, and getting them to app stores and enterprises fast. source: https://www.embarcadero.com/products/rad-studio/fm-application-platform FMX (FireMonkey) released in 2011 and shortly after we delivered a first set of components. Through the years we learned and evolved our FMX support and translated that knowledge into new major components: Grid Planner Treeview Chart Kanban Board Pickers & Selectors Rich Editor … All of these components fully adopted the FMX (FireMonkey) framework. In 2016 we even went a step further and introduced FNC. FNC boosts your FMX development and offers a single code base to re-use in other frameworks as well: VCL, WEB (TMS WEB Core) and LCL (Lazarus). To the point How FNC empowers your FMX development is nicely demonstrated and explained by Holger Flick in the following video. He explains the various components available for the FMX framework, how to use them and what they can do for your application. Get started! Get started exploring FMX and what FNC can mean for your FMX development: http://fnc.tmssoftware.com. Already using FNC? Let us know in the comments.

Read More

XMAS special just for YOU!

TMS is celebrating XMAS together with DelphiStyles! With great pleasure we announce a great collaboration with DelphiStyles!. Delphistyles provide high quality FireMonkey multiplatform style templates and VCL styles. DelphiStyles team is a compact development studio. They have an expertise in app development with Delphi since version #1 through all generations to the last release. Their mission is to let Delphi developers build Windows/macOS/iOS/Android applications with great and modern UI. Special offer for YOU! Get the free “DelphiStyles: Collection of FM Multiplatform and VCL style templates for Bitmap Style Designer”, when purchasing a new TMS ALL-ACCESS license! So don’t waste your time and order your TMS ALL-ACCESS license today and receive the DelphiStyles bundle for free. You get all current styles and all styles in the future for free and for life (to the value of 249 US dollars).

Read More

TMS WEB Core for Visual Studio Code 1.2beta introducing the pas2js v2.0RC compiler!

A bit more than a week ago, we made the first beta available of TMS WEB Core for Delphi v1.6beta Pesaro that introduces the new v2.0 pas2js compiler and extended RTL. For those who missed it, the new version v2.0 of the compiler is a quantum leap forward and its main new features are: Generics Attributes Class constructors Resource strings Async procedure decorator Await support JavaScript promises support Read all about pas2js v2.0 and TMS WEB Core for Delphi v1.6 beta in this blog article. As expected, we have now a first beta of TMS WEB Core for Visual Studio Code ready for TMS ALL-ACCESS and TMS WEB Core for Visual Studio Code customers. With TMS WEB Core for Visual Studio Code you can: Use the free IDE loved by web developers on Windows, macOS or Linux Use your favorite fully object-oriented, type-safe Object Pascal language Take advantage of a large eco-system of web developer friendly tools in the IDE Use a fast RAD component based development approach See your app in the IDE using live WYSIWYG web technology based form designer Create classic web client applications Develop installable PWA‘s on mobile devices as well as desktop Chromium based browser Build cross platform desktop applications with modern looking web based UIs on Windows, macOS & Linux via Electron Our team is looking forward to all your feedback, wishes and suggestions for improvements and future developments! Live data and live a bootstrap theme used in the form designer in Visual Studio CodeLive Google Maps in the form designer in Visual Studio CodeDebugging a TMS WEB Core application directly from the Visual Studio Code IDE

Read More

TMS FlexCel academic license

Even in this challenging times we want to make our contribution to the Delphi community and most importantly to the aspiring future Delphi developer and hereby encouraging next generations of enthusiast Delphi developers. In 2020 we have launched our TMS Academic Program and added so far 3 products. Today, we extend the TMS Academic Program with a 4th product : TMS FlexCel for VCL & FMX. With the Delphi Academic 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. FlexCel for VCL / FireMonkey is a suite of Delphi components allowing to manipulate Excel files or generate Excel template based reports. It includes an extensive API allowing to natively read/write Excel files. If you need to read or create complex spreadsheets, on Windows or macOS on machines without Excel installed, Flexcel can do the job. This academic license can be used with Delphi 10.4, just like our other 3 academic licenses! Supported frameworks: Visit the landing page and discover more about our TMS Academic Program. Getting started : Register for a free TMS FlexCel Academic license with a school or university email address Receive your credentials to login on our website via your student email address Login and download your free TMS FlexCel Academic installer Install the product for the Delphi Community Edition Enjoy being part of the TMS family with full access to our website, TMS support center, product updates for 1 year and develop great Delphi VCL applications Get started with TMS software today and secure your place for the future in the Delphi world! TMS FlexCel for VCL & FMX is out last addition to our Academic Program for 2020! Of course, we plan to extend this academic program in 2021. We are curious to know how the TMS Academic Program helped you so far in achieving exciting software development challenges and we are eager to learn what next TMS products you would wish to see in the academic program.

Read More

We welcome Abatic, consulting partner for Spanish TMS/Delphi users

We are proud to announce a new collaboration with the team from Abatic in Spain to assist users of Delphi in combination with TMS products. From today, Abatic is our consulting partner for Spanish speaking software developers and software development companies in Spain and Colombia. With our partners we aim to have experts nearby, in the same timezone and speaking the native language of our customers to help with consulting services. This can range from assisting with: designing software architectures choosing the best components for a task developing projects or parts of projects or adding resources to help with developing projects offering training in specific TMS products We are glad to start this partnership with Abatic as we are convinced their high expertise will offer excellent services for you. The team consists of 6 professionals including two Embarcadero MVP’s: Emilio Pérez and Jhonny Suárez. Emilio Pérez Jhonny Suárez Abatic is also an early adaptor of TMS WEB Core and in particular TMS WEB Core for Visual Studio Code and is even offering a training course and an ebook for it: Among the broad expertise of the Abatic team are: Delphi Developer Certified 2 Embarcadero MVP consultants in team WEB Core web applications VCL Windows applications FMX cross-platform applications Multi-tier database development XData REST server + Aurelius ORM On-site training / WEB Core training course MySQL developer Certified PostgreSQL DBA Certified RAD Server We are convinced this will strengthen the adoption of Delphi, of our components and will lead to better, richer and more sophisticated Delphi applications with TMS compoonents or web applications based on the TMS WEB Core framework. With the Abatic team closely in touch with Spanish speaking developers, our team will have the opportunity to closely listen to the feedback and wishes of the Spanish speaking community and steer our developments according to these needs. If you are not Spanish speaking, don’t worry, our consulting partner network is growing and feel free to have a look at the partner directory and get in touch and have a chat how they can help you. At the same time, we would like to take the opportunity to mention that we still wish to extend our consulting partner network, foremost in the Asia area, Australia, Canada, South Africa. If you are Delphi developer with TMS component expertise and offering consulting services, get in touch and we will be happy to discuss how we can move forward!

Read More

TMS FNC Maps: Small update with big improvements

Intro With the release of TMS WEB Core v1.6 beta yesterday (https://tmssoftware.com/site/blog.asp?post=717), we bring a whole set of new and exciting compiler features such as generics, attributes and many more. Please read the blog and start exploring the new features. The beta of TMS WEB Core v1.6 is available as a download on the My Products page. Today, we released all of our FNC products with some core improvements, ready to be used in combination with TMS WEB Core v1.6. On top of that, TMS FNC Maps has been released with 3 new features. Tile Layers TTMSFNCOpenLayers now supports adding tile layers in the XYZ format. To demonstrate this, we generated a free API key from the following service: https://www.thunderforest.com. This service offers a great set of high quality layers that can be used in combination with our TTMSFNCOpenLayers implementation. To add a layer we used the following code: procedure TForm1.AddLayer; begin TMSFNCOpenLayers1.AddTileLayer(‘https://{a-c}.tile.thunderforest.com/cycle/{z}/{x}/{y}.png?apikey=[INSERT API KEY]’); end; With the following result: Save coordinate data to GPX The update also brings a way to save your coordinate data to a GPX file. To implement this, use one of the following overloads procedure SaveToGPXStream(ACoordinates: TTMSFNCMapsCoordinateRecArray; AStream: TStream); procedure SaveToGPXStream(ACoordinates: TTMSFNCMapsCoordinateRecArray; AStream: TStream; AMetaData: TTMSFNCMapsGPXMetaData); procedure SaveToGPXFile(ACoordinates: TTMSFNCMapsCoordinateRecArray; AFileName: string); procedure SaveToGPXFile(ACoordinates: TTMSFNCMapsCoordinateRecArray; AFileName: string; AMetaData: TTMSFNCMapsGPXMetaData); function SaveToGPXText(ACoordinates: TTMSFNCMapsCoordinateRecArray): string; function SaveToGPXText(ACoordinates: TTMSFNCMapsCoordinateRecArray; AMetaData: TTMSFNCMapsGPXMetaData): string;; The TTMSFNCMapsGPXMetaData record currently allows specifying the following GPX attributes AuthorName AuthorLink TrackName TrackType Plus Codes Plus Codes are like street addresses for people or places that don’t have one. Instead of addresses with street names and numbers, Plus Codes are based on latitude and longitude, and displayed as numbers and letters. With a Plus Code, people can receive deliveries, access emergency and social services, or just help other people find them. source: https://maps.google.com/pluscodes/ TMS FNC Maps supports Plus Codes encoding & decoding with the TTMSFNCMapsPlusCode class (available in the *.TMSFNCMapsCommonTypes unit). To get started, and convert an existing coordinate to a Plus Code, use the following code: procedure TForm1.EncodeCoordinate; var p: string; begin p := TTMSFNCMapsPlusCode.Encode(CreateCoordinate(40.689188, -74.044562)); //p = ’87G7MXQ4+M5′ end; To decode a Plus Code to a coordinate bounds, which defines the area corresponding to the code, the Decode function can be used: procedure TForm1.DecodePlusCode; var c: TTMSFNCMapsBoundsRec; begin c := TTMSFNCMapsPlusCode.Decode(’87G7MXQ4+M5′); end; Update Now! Update now to get all the latest and greatest FNC updates and get started exploring the new features of TMS WEB Core 1.6!

Read More

TMS WEB Core v1.6 beta in a nutshell (video)

Yesterday we announced the beta release for TMS WEB Core v1.6 Pesaro. Before moving to a final release of TMS WEB Core v1.6.0.0, we want to give our registered TMS ALL-ACCESS and TMS WEB Core users sufficient time to test the new version. Registered users can find the beta download now on the “My Products” page on our website. This beta version can be used from Delphi XE7 to Delphi 10.4 Sydney as well as Lazarus 2.0.10. At the same time our team is also working on bringing the pas2js v2.0 compiler to TMS WEB Core for Visual Studio Code. The stunning new pas2js v2.0 features are not only coming in Delphi but also in Visual Studio Code. Watch our colleague Holger Flick show the use of generics in a TMS WEB Core application in an internal beta of TMS WEB Core for Visual Studio Code that will soon also be coming to you. Dali’s words: “Have no fear of perfection, you will never reach it” are the motivating force and inspiration behind everything we do. So, here we literally follow up the video about generics in TMS WEB Core with code improvement suggestions that bring it one step closer to perfection: enumerators. Stay tuned for more updates!

Read More

TMS WEB Core v1.6 beta brings the pas2js v2.0 quantum leap

The past couple of months and especially weeks have been a nerve-racking ride! Nerve-racking because the scope of introducing the new pas2js v2.0 compiler in TMS WEB Core is huge. Our code library that works with TMS WEB Core and the pas2js compiler meanwhile got huge, so there is a lot of testing and polishing involved to ensure everything continues to work smoothly with the new compiler. But also nerve-racking because the new compiler offers so many exciting features we are eager to take advantage of.But well, we think we have reached the level of stability where we can offer a beta release for our TMS WEB Core users that should work smooth out of the box and ready to take advantage of the new amazing features! The new pas2js v2.0 compiler is nothing short of amazing and a quantum leap forward for Object Pascal developers to tackle the most challenging rich web client application developments! And it is not just the compiler itself, it is of course also the supporting RTL for features such as generics. What an honor and experience to work so closely together with the two masterminds of the project Mattias Gaertner and Michael Van Canneyt to bring TMS WEB Core with pas2js v2.0 to life. The list of new features in the pas2js v2.0 compiler is long and can be consulted in detail here but let me highlight the major new capabilities: Generics Attributes Class constructors Resource strings Async procedure decorator Await support JavaScript promises support Best of all, we expect the introduction of this huge step forward to be smooth. All our demos for example continue to work without changing any line of code. Unless you did perhaps very specific things directly with underlying JavaScript objects or event handlers, the new version should be fully backwards compatible. Before moving to a final release of TMS WEB Core v1.6.0.0, we want to give you, users of TMS ALL-ACCESS or TMS WEB Core sufficient time to test the new version, give your feedback, address issues in case these would arise. You can find the beta download now on the “My Products” page on your account on our website. This beta version can be used from Delphi XE7 to Delphi 10.4 Sydney as well as Lazarus 2.0.10. At the same time our team is feverishly working on bringing the pas2js v2.0 compiler also to TMS WEB Core for Visual Studio Code. The challenge is even bigger here as we need to test and validate everything on 3 different operating systems as you can use TMS WEB Core for Visual Studio Code directly on Windows, macOS and Linux to build Object Pascal based web client applications. Expect also here that a beta will follow shortly! Oh, and by the way, TMS WEB Core v1.6 will be get the name Pesaro. Pesaro is the town along the legendary Mille Miglia 1955 race after Rimini that was the name of version v1.5. So, our race with TMS WEB Core enjoys the beautiful scenery of Pesaro.

Read More

FlexCel .NET, .NET5, Blazor and WebAssembly – Part 2

This is the second part of a two-part series where we explore using FlexCel.NET and Blazor. The first part was about running FlexCel in the browser, and now we will explore running it in the server. Generating a “server-side” Blazor app While blazor WebAssembly is the most exciting thing going on right now, we didn’t want to forget that most use cases for FlexCel are server-side. You access a database in your server, generate an Excel/PDF/HTML report with the data, and send it to the client. So for this second part, we wanted to do something not as exciting as a WebAssembly app, but probably more useful. We won’t go into a boring “create an Excel file from a database in the server and send it to the client”, because server-side this is just FlexCel (the full FlexCel, without WebAssembly limitations), so you can use any existing FlexCel example as-is. Then you can find thousands of tutorials on the web about how to send the file you created in the server to the browser for the user to download. What we will do now is adding an SVG chart to the existing “fetching data” example that is created when you create a new Blazor app. We will write the data into an Excel file, use the data to generate a chart, and render the chart in the client. The video is below:

Read More

TMS priority support

“The quality of the question determines the quality of the answer. Ask the right questions and you will get the right answers.” TMS software is committed to always provide you with the best possible priority support. It is therefore important that you send us the correct information. The more complete your question is, the faster we can help you. Our team tries to make the manuals as complete as possible. And additional information is available via demo projects, videos, blog articles and FAQs on the product pages. Do you want to be helped quickly? Follow our guides and information sources: documentation / Manuals Videos Website / TMS Support Center Priority support For user with an active license, priority support is given to questions and issues at the TMS Support Center! Check out our TMS Support Center, maybe your question has already been answered. You can easily find an answer by using keywords / phrases. Private support If there is a reason your question cannot be asked in our public support center, contact us via email and do include following information always with your questions: Registration email / code Product / component Version IDE Screenshots / sample source project + steps Stay up to date:

Read More