Embarcadero: Firemonkey OOP
Embarcadero: Firemonkey C++
Brilliant Date format converter from dates in Text (almost any format) or timestamp numbers in Unix, Mac, Filetime or Microsoft (which is the same as Delphi TDateTime) format to any of these formats: Text Date: Date in human-readable text Wednesday, March 23, 2016 4:05:39pm RFC 822: RFC 822 formatted date Wed, 23 Mar 2016 16:05:39 +0000 ISO […] … Read More
When you start implementing cross-platform applications in Delphi’s FireMonkey framework, then you might consider reusing TDataMdoule instances from your existing VCL applications. If your code is clean enough, i.e. your DataModules are separated from any UI code, that is contain no references to WinApi, Forms, Controls or other UI relevant units,…Read MoreRead More
It is almost time for a new release! If you’d like to see what 3.07 will contain – or if you just want to test it before it is out – click here. [If you are a serious OTL user - and especially if you are using pre-Seattle Delphi - please test your program(s) with the beta release. Thanks!] I have started work on OTL 4.0 which will (fingers crossed) fully support cross-platorm work. Yup, it will work on all platforms that Delphi can compile for! Multiplatform support was implemented by Sean B. Durkin so if OTL/Mobile is something you were waiting for a long time, go to OmniThreadLibrary-For-Mobile Google+ community and express your gratitude. Read more »--- Published under the Creative Commons Attribution 3.0 licenseRead More
Nick and Jim discuss cool mobile apps built with FireMonkey. SoundJuke turns your smartphone into your personal jukebox at any public site. It uses a combination of these Embarcadero tools in building the app: Delphi for iOS and Android, Cloud API, Parallel Programming API, REST Client Library. If your customer likes what they hear, they’ll spend more time in your store. EarMaster turns your iPad into a private music training classroom. Powered by FireMonkey and TMS iCL plus it also uses SQLite, SSL, In-App purchases, XML and Indy components in the app. The IDE extensions CnPack and MMX were also very valuable. This video provides an excellent introduction. EarMaster is the Most Advanced App for Music Theory and Ear Training on iOS. Pocketslip will eliminate those pesky paper receipts once and for all. Pocketslip it is powered by Delphi for iOS and Android, Cloud API, Parallel Programming API, REST Client Library and FireDAC. Fast and secure point-of-sale, integrated digital receipts for you and your customers. These videos will provide insight into Pocketslip. Switchboard turns your iPhone into, well, a fully featured and networked phone system in the palm of your hand. It is for the iPhone only and uses Delphi for iOS, Cloud API, Parallel Programming API, and REST Client Library. This video will provide some details. Alpemix is a remote desktop for increasing your productivity wherever you might happen to be in the world. It is a multi-platform system compatible with iOS, Windows Mac OS X and Android so you can be productive under all circumstances and is built on the Delphi platform. More detail is available here. ValidIN is a mobile medical app that networks Croatian biomedical laboratories so that blood samples can be validated quickly and accurately. It is built on the Delphi platform for iOS and Android using FireDAC and DataSnap as well. MindGlow is a powerful meditation tool you can use to induce your mind into states of peace in those times when stress might just be a bit too much. It uses Embarcadero Delphi and FireMonkey but also Apple’s Core Audio and Google’s Android AudioTrack. More and more, the research is showing that meditation has physical health benefits. From reduced cortisol, to increase in HRV, meditation can and will improve your health. To gain the most of these physical benefits, Delta sessions is critical. Serious trainers and elite athletes know that recovery and rest is an essential component to pushing past physical limits and improving overall health. Delta meditation does this in spades! MindGlow is a fascinating app. Learn more here.Read More
We already provide help and documentation in several ways: PDF developer guides for most complex components, a page with component specific tips and FAQ, a monthly knowledge base alert, ? . our TMS Support Forum with almost 10.000 forum members also offers a big help to many users. And of course our first-class support directly from our developers here at the office.
But we listened to your feedback and it was clear that many of you also wanted in addition to this videos explaining the products and offering step by step demos. So, we made it an action point and commitment for 2017 to significantly increase our offerings in videos.
With our video’s we would like to show you step by step what great features our components are offering without the need to install trial versions or spend a lot of time reading through all our documentation. No hassle, just 1 click on the video and you can see our components in action, be it in VCL applications, cross-platform FMX applications, Cloud, Intraweb, …
To show our commitment, here are already the first 3 videos we created this year in January and more will be following shortly:
Video 1 about how you can effortlessly generate pdf files from a VCL DB grid.
Video 2 about how you can use the mycloudData service which is a cloud service for structured cloud storage for data.
Video 3 about responsive design in VCL applications with the TDBAdvResponsiveList.
So we kindly invite you to get subscribed to our YouTube channel
tmssoftwareTV and of course we wish you much fun in exploring our components and their possibilities!
More videos are coming in the near future.
Open: Delphi: rbTC1416 package cannot find the Graphics unit: ensure your DCC_Namespace is correctly
I had to add this to my DCC_Namespace in the rbTC1416.dproj file to make it build under Delphi XE8: Vcl;Vcl.Imaging;Vcl.Touch;Vcl.Samples;Vcl.Shell; The occurrence of this DCC_Namespace setting corresponds to the “Unit scope names” of the “All configurations – All Platforms” target in the project options. That got rid of this error mesage: [dcc32 Fatal Error] ppChrt.pas(17): F2613 Unit […] … Read More
With the 220.127.116.11 release of the TMS FNC UI Pack we have introduced a TMS FNC Core separation. This means the TMS FNC Core needs to be installed as a prerequisite in order to successfully install the TMS FNC UI Pack. Apart from this separation, the new core setup will not introduce breaking changes in your application, as the file names for both the TMS FNC Core and TMS FNC UI Pack have remained the same. The separation gives us the benefit of writing components that all rely on a single core, instead of duplicating units that offer exactly the same features in multiple component sets. All current and future TMS FNC products will build upon this common core. Custom Component Development for FNC Now the TMS FNC Core is released, you'll have a series of units available that can be used to write custom components yourself for our FNC framework. [FMX.][VCL.][LCL]TMSFNCBitmapContainer.pas [FMX.][VCL.][LCL]TMSFNCCustomComponent.pas [FMX.][VCL.][LCL]TMSFNCCustomControl.pas [FMX.][VCL.][LCL]TMSFNCCustomScrollControl.pas [FMX.][VCL.][LCL]TMSFNCGraphics.pas [FMX.][VCL.][LCL]TMSFNCGraphicsTypes.pas [FMX.][VCL.][LCL]TMSFNCHTMLEngine.pas [FMX.][VCL.][LCL]TMSFNCStyles.pas [FMX.][VCL.][LCL]TMSFNCTypes.pas [FMX.][VCL.][LCL]TMSFNCURLBitmapContainer.pas [FMX.][VCL.][LCL]TMSFNCUtils.pas Note that with this set of units, you are able to write a custom component from scratch. A tutorial on writing a custom component can be found in this blog post: http://www.tmssoftware.com/site/blog.asp?post=346Read More
Over the last months I met hundreds of customers. It is somewhat humbling to learn about the many powerful applications built with D6, D7, Delphi 2005/2006/2007, XE2/3 and newer RAD Studio versions. Especially astounding is the number of great applications that are still maintained and evolved with D7 or 2007 technology. One of the great things about these is that they keep working and working, so why modernize and invest now? Tech is changing faster than ever before, so unless your app looks and feels modern, unless your app architecture is flexible – it can be obsolete faster than you think. Also, Windows 10 is changing a lot of things - eventually some of these old versions may not run so well and we recently informed selected customers that may be impacted. Of course, we all benefit from your modernization! We can invest more and you have even better applications... You may be surprised how much of the new trends, such as micro-services, REST APIs, Cloud Hosting are supported with RAD Studio 10.1.2. Our new Webinar series and exciting education initiatives will keep us not only on par with the competition, but leapfrog them in many areas. Our support for IoT, for example, is pretty cool. I push the Product Team by constantly asking what is new and interesting that gets customers excited, and they gave me a nice bullet list that I thought to share… Windows 10 is a BIG Deal! Microsoft is reinventing itself and Windows 10 adoption is the highest ever (400M devices as of September). We support all the latest features of Windows operating systems (from complete Unicode support to newer capabilities, such as push notifications). UX is more critical than ever before and Windows 10 brings amazing modern look and feel; you get better performing native apps with 64-bit support; 10.1.2 enables Windows App Store Deployment even before Visual Studio! Not only will your apps be better looking and have more options with the latest VCL, but they will be much more stable and “future-proofed”. You need to be mobile! Many consider mobile as a nice to have, but there are few better ways to demonstrate the value of your tool than to create a nice looking mobile app (and do it fast). FMX is production ready with lots of improvements in the latest versions and continues to evolve as the best native framework available. You can be a winner and you can start small with app tethering or build an awesome full scale app. You should just check-out some of our recent Cool Apps for great examples. You can improve app connectivity to the latest major databases with the powerful new FireDAC data access framework. This increases your flexibility making easier future infrastructure or vendors changes. You can use your code to enable new web clients and capabilities by updating your application architecture with DataSnap and RAD Server. Don’t get left behind with other teams speaking about N-Tier architectures - you can have modern middle-tier application servers or REST-based microservices with RAD Studio today. You can also build modern REST-based thin Windows clients using the new REST VCL Client support. You will also greatly enhance your development productivity with huge increases in IDE functionality. Whether it is through code editor enhancements or improvements to the form designer, you can develop faster than ever with the latest RAD Studio IDE. You get the power of the latest Delphi language features such as anonymous methods, parameterized types (generics), and more. They are more powerful and more useful than you expect! C++ leverages the latest C++ libraries and language features while taking advantage of the power of RAD through the VCL -- an unprecedented combination. There is no other framework for GUI development that is more efficient – we compare very well against Qt and FMX makes cross-platform development with C++ much easier. If you care about IoT (and you should) RAD Studio allows you to build applications that work with all the latest gadgets, devices, and sensors. We hold IoT awards for most innovative products! LINUX support, planned for 10.2 will get you further savings and another platform! And YES, new migration tools get you to the future faster. We can sell Delphi and even C++ Builder better. We tend to be too shy about what we bring to the table. The analysts have not been especially kind, as they look for the next new thing. I think that what we bring is incredibly relevant to the market. Fast and efficient development does not get old and we do it better than anyone else. Our team put together a really nice summary of Embarcadero for developers, "We Are Embarcadero" that I encourage you to download and share!Read More
Another review of announcements, news, blog post, webinars, and anything else related to Delphi that I feel important to share. Embarcadero News Embarcadero competition, Delphi 10.2 T-Shirt Graphic Contest: Read more at https://community.embarcadero.com/competitions/11-delphi-10-2-t-shirt-challenge Rebooting the Podcast with Nick Hodges at https://community.embarcadero.com/blogs/entry/rebooting-the-podcast-with-nick-hodges Events and Webinars An Internet of Things (IoT) BootCamp 2017 by Embarcadero is scheduled for next week, see https://community.embarcadero.com/blogs/entry/iot-bootcamp-2017. This is a 4 days event, with webinars each day, covering a set of diverse topics, from interfacing with IoT devices to communicating with Arduino boards, from creating federated IoT systems to collecting data in a central database, from creating custom Arduino boards to using Visuino for programming them. The subtitle "Build a RESTful Network of IoT Devices with Arduino and RAD Server" gives a technical overview of what will be included. Dates are February 6th to 9th. The webinar "Migrating Delphi - Case Studies" is scheduled for tomorrow, January 31st. Register at https://attendee.gotowebinar.com/rt/6553483306659174913 Notable Blog Posts Windows Media Player in Delphi by Craig at http://chapmanworld.com/windows-media-player-in-delphi/ DprojNormalizer by Uwe at http://www.uweraabe.de/Blog/2017/01/24/dprojnormalizer-for-xe7-and-xe8/ Using Facebook SDK native framework for iOS and Android for Social Login and more (Part 1), a long and extremely interesting blog post from a technical point of view by Allen Drennan at https://blog.grijjy.com/2017/01/23/using-facebook-sdk-native-framework-for-ios-and-android-for-social-login-and-more-part-1/ And by the same author, Using the Google Cloud Platform APIs at https://blog.grijjy.com/2017/01/13/using-the-google-cloud-platform-apis/ And on a similar tone, FireBase Cloud Messaging with Delphi 10.1 Berlin update 2 by Jordi at http://thundaxsoftware.blogspot.it/2017/01/firebase-cloud-messaging-with-delphi.html Delphi Code Monkey: One month after Diving Back into Delphi... http://delphicodemonkey.blogspot.it/2017/01/one-month-after-diving-back-into-delphi.html Podcast Streaming - FireMonkey Demo by Sarina at https://community.embarcadero.com/blogs/entry/streaming-your-podcast-firemonkey-demo TCalendarView Custom Painting by Pawel at https://community.embarcadero.com/blogs/entry/tcalendarview-custom-painting 50 Posts in This "Weekly" Series Even if I'm not keeping this with a weekly schedule, the series of post has been ongoing with some regularity (every 2 or 3 weeks) and I got to the 50th installment. I plan continuing, as I think the fast paced flow of social media is hard ot keep up with, and all of us end up missing notable news like those I summarize here. Let me know what's your take.Read More
A comprehensive step by step guide, covering everything you need to know to receive push notifications to your Android device using Firebase Cloud Messaging and the latest Delphi 10.1 Berlin update 2.Push notifications let your application notify … … Read More
Getting Started with RAD Server
What is RAD Server?
RAD Server is a turn-key application foundation for rapidly building and deploying services based applications. RAD Server enables developers to quickly build new application back-ends or migrate existing Delphi or C++ client/server business logic to a modern services based architecture that is open, stateless, secure and scalable. RAD Server is easy to develop, deploy and operate making it ideally suited for ISVs and OEMs building re-deployable solutions. RAD Server allows you to take your existing code and convert it to REST API endpoints.
RAD Server offers many great features:
Multi-Tier Development made easy: Integrations provide out of the box connectivity with external servers, applications and services
Quickly Build your UX Forms for Desktop and Mobile platforms in RAD Studio, Delphi or C++Builder
Manage your APIs and users, and analyze utilization and API activity via the built-in RAD Server Application Management Portal
Host your RAD Server on an a private “on prem” Windows server or cloud host on Amazon, Rackspace or Azure Clouds
Deploy your server-side Delphi and C++ code to RAD Server, creating automatic REST/JSON API endpoints for your clients
Connect RAD Server to your Enterprise Databases, Cloud Services and IoT Devices to extend your application
A collection of ready to use key built-in services to power your application
Includes core functions such as user directory services and user management, push notifications, user location tracking, and built-in data storage
Configure user groups and add users via the RAD Server portal or import from LDAP. Assign API access rights to control what functionality different user groups have access to
For a full list of features, visit the RAD Server product page.
How does RAD Server compare to DataSnap?
Before RAD Server, developers custom built back-end Delphi and C++Builder application servers using server toolkits like DataSnap which provided a few basic server building blocks for multi-tier, but left the vast majority of the development to the developer. Enter RAD Server. With RAD Server, developers can now simply load Delphi and C++ business logic methods into RAD Server, add some users, and go.
What technologies does RAD Server include?
The developer features for RAD Server included in 10.1 Berlin for developing REST endpoints, Location Tracking and IoT Edgeware are Enterprise Mobility Services, BeaconFence, ThingPoint and ThingConnect.
Easy REST API Endpoint Creation, Publishing and Management
RAD Server makes it fast and easy to build flexible back-end servers for your multi-tier application solution. Developers simply load Delphi and C++ business logic into the server, and managed REST/JSON API endpoints are generated.
To develop REST endpoints for RAD Server, developers use the Enterprise Mobility Services (“EMS”) components listed in the IDE on the Tool Palette under the “Enterprise Mobility Services” category.
IoT Enterprise Access Points
IoT Edgeware extends the functionality of REST Endpoint Publishing and provides an enterprise access point between remote gadgets and devices. IoT Edgeware allows you to locally store, filter, and compute vast amounts of IoT data collected at the edge while ensuring only critical data is synced with the central repository.
To develop IoT Edgeware for RAD Server, developers use ThingPoint which is an extension to EMS and represented with TEMSEdgeService in the “Enterprise Mobility Services” category in the Tool Palette in the IDE.
Indoor and Outdoor Location/Proximity Solution
Track user movement both indoors and outdoors, and respond to proximity events when users enter or exit custom beacon zones or approach designated beacon points.
To develop Location Tracking, developers use the BeaconFence components available as a download through the GetIt Package Manager (via Tools > GetIt Package Manager > Internet of Things).
Smart Device IoT Connectivity Framework
RAD Server makes it easy to connect a wide array of wireless smart devices and sensors into your application solution, even in remote and difficult to access locations. Developers have access to over 50 pre-built components for many popular healthcare, fitness and home automation Bluetooth LE and Z-Wave IoT devices.
To connect IoT devices to clients or RAD Server ThingPoint Edgeware, developers use ThingConnect IoT device components which are available as a download through the GetIt Package Manager (via Tools > GetIt Package Manager > Internet of Things).
How is RAD Server licensed?
RAD Server is licensed and priced affordably and with a no nonsense license. You can either purchase the number of end users required for an application, or purchase a single or multi-site license covering unlimited users for an application. For RAD Server pricing, please click here.
How do I start building a RAD Server solution?
RAD Server requires an Enterprise or Architect edition of RAD Studio, Delphi or C++Builder 10.1 Berlin. A trial edition of 10.1 Berlin also allows users to evaluate developing services for RAD Server and will include a 5 user RAD Server development trial. This 5 user trial can be used for developing your solution and performing test deployments.
Once you are ready to deploy your RAD Server solution in a production environment, you will then follow the steps outlined in the next section and use your paid RAD Server site license. For RAD Server pricing, please click here.
There is no separate RAD Server trial as the technologies are available in 10.1 Berlin. Please see the top of this article for additional information.
How do I deploy RAD Server in a production environment?
We have a great tutorial on our docwiki that provides the steps for deploying RAD Server in a production environment.
Step 5 shows a screenshot of where you will need to enter your paid RAD Server site license.
For custom resources, you can use a tool like http://www.dependencywalker.com to determine the bpl dependencies of the custom resource.
Where can I access Getting Started resources?
We invite you to watch our RAD Server Deep Dive webinar replay which is broken down into individual chapters for easy viewing: https://www.youtube.com/playlist?list=PLwUPJvR9mZHgccq4EfTcsCngRqpTmm_wn
Replay slides and demo projects shown in the webinar can be downloaded here.
You can also find tutorials on the different technologies that are part of RAD Server by following the docwiki links above.
For more Getting Started videos, please visit our YouTube Channel.
REST Endpoint Publishing
ThingConnect IoT Device Components
For each IoT component pack installed through the GetIt Package Manager, you can find sample projects by navigating to: C:UsersPublicDocumentsEmbarcaderoStudio18.0SamplesInternet of ThingsObject PascalThing Connect
After installing the BeaconFence component pack through the GetIt Package Manager, you can find sample projects by navigating to: C:UsersPublicDocumentsEmbarcaderoStudio18.0SamplesInternet of ThingsObject PascalBeacon Fence
Where can I view the RAD Server Eula?
You can view the RAD Server Eula here.
Embarcadero is promoting a contest for applications that leverage OpenData, in particular the NASA API. Given the large amount of data available, there is room for building many different applications. … Read More