Recent Blog Posts

TFDConnectionオプション|ロック処理[JAPAN] FireDAC TFDConnectionのオプション部ロック処理について TFDUpdateOptions クラスは、FireDAC データセットと DApt レイヤ アダプタ インターフェイスが以下の処理をどう行うかを制御する、一連のプロパティを表します  データベース レコードのロックはLockMode、LockPoint、LockWaitです。       [ロックポイント(LockPoint)] データベース レコードがロックされるタイミングを制御します。 LockPoint を使用すると、変更されたデータベース レコードがデータベースでロックされ、内部データ ストレージでロック済みとしてマークされるタイミングを指定することができます。 デフォルト値は、lpDeferred です。 lpImmediate レコードを編集または削除を開始した直後に、レコードをロック。 lpDeferred 更新をデータベースに送信する直前に、レコードをロック。    ...
Приложения Delphi в Linux и доступ к базам данным MongoDB С выходом RAD Studio 10.2, включающей компилятор Delphi for Linux, появилась возможность создания на Delphi серверных нативных приложений для работы в среде Linux. Многие коммерческие и промышленные системы все чаще используют в качестве серверов вычислительные системы под управлением различных версий и редакций Linux - популярной, производительной и значительно более экономичной операционной системы широко распространенной на множестве облачных платформ и практически в любых центрах обработки данных.  Многие Web-сайты и многозвенные приложения работают на Linux-серверах и обеспечивают одновременный доступ множества пользователей к хранимой на сервере или в распределенных системах информации, которая, в подавляющем числе случаев, хранится под управлением какой-то СУБД. Библиотеки и компоненты Delphi для работы с базами данных позволяют быстро и в визуальном режиме создавать множество вариантов самостоятельных приложений, WEB- и REST-сервисов, встраиваемых модулей для промышленных WEB-серверов и серверов приложений, в том числе, Datasnap или RAD Server, активно работающие с любыми из обширного списка поддерживаемых СУБД. За последние годы документо-ориентированная NoSQL СУБД MongoDB добилась огромной популярности и получила широкое распространение именно на серверах под управлением Linux. В силу особенностей Linux здесь MongoDB работает производительнее, лучше настраивается и масштабируется.  На обзорных вебинарах и семинаре по RAD Studio 10.2 я уже показывал примеры реализации серверных приложений Linux, работающих с данными из MySQL. В самом простом случае нужно всего лишь добавить компонент TFDConnection, настроить его для связи с сервером БД, указав соответствующие параметры-свойства, а затем с помощью TFDQuery ввести нужный запрос и выполнить его. Остается только выдать\напечатать данные, полученные после выполнения запроса в нужной форме. Невероятно, но самым сложным является настройка драйверов доступа к СУБД, в данном случае MySQL. Теперь я бы хотел рассказать, как реализовать простейшую программу для Linux-сервера, обрабатывающую данные из MongoDB. Несмотря на очевидную простоту реализации, стоит обратить внимание на характерные особенности работы с MongoDB.
iOS/Androidの画面デザインをリアルタイムプレビューできるFireUIライブプレビューが動かないときに確認すること [JAPAN] FireUI ライブプレビューとは? Delphi/C++Builder/RADStudioでマルチプラットフォーム向けアプリ開発を行う場合に便利な機能の一つが FireUI ライブプレビューですね。 この機能は2016年にリリースされたバージョン 10.1 Berlin 以降でサポートされたものであり、IDE 上のデザインフォームで編集した画面デザインを実機上で即座に確認できるという、大変便利な機能です。 ただしこの記事の目的はこの機能の紹介ではありませんので、機能自体に興味がある方は以下のリンクをご覧頂くのがよいでしょう。 https://community.embarcadero.com/blogs/entry/fireuihttp://qiita.com/pik/items/e8f75f5df7238e5c0c73http://docwiki.embarcadero.com/RADStudio/Tokyo/ja/FireUI_%E3%83%A9%E3%82%A4%E3%83%96_%E3%83%97%E3%83%AC%E3%83%93%E3%83%A5%E3%83%BC Xamarin をご存知の方なら、Xamarin Live Player からアプリのデバッグや実行機能を除いたもの、と言えばイメージつきやすいかもしれません。(ただし、リリースの時期から言えば、Xamari Live Player は FireUI ライブプレビューよりも後にリリースされています。従って Xamarin Live Player は FireUI ライブプレビューの機能を参考にしつつ、さらに機能を追加したもの、と言うほうが適切かもしれません) しかし、FireUI ライブプレビューの機能は PC やネットワークの設定に不備があると期待したとおりに動作しないことがあります。この記事では正しく動作しない場合のトラブルシューティングについてご説明します。
FireMonkey グラデーションボタンの作り方コード編[JAPAN] FireMonkeyのスタイルについては http://edn.embarcadero.com/article/44759 もしくは、細川さんのスライド(下記URL)で詳しく説明があります。 https://www.slideshare.net/pik256/vcl-firemonkey-59356366 上記の方法を使ってコード実装する方法を試してみました。 新規プロジェクトで[マルチデバイス アプリジェーション C++Builder]を選択し メインフォームにはTButtonを1つ配置します。 FormCreateでTRectangleとTGradientAnimationを作成し Button1->FindStyleResource("background")->AddObject()に作成したTRectangleを設定します。 //--------------------------------------------------------------------------- void __fastcall TForm1::FormCre...

Posted by on in Blogs
RAD Studio no TDC São Paulo! Este ano a Embarcadero terá uma trilha Delphi e C++ Builder no TDC São Paulo, e nós estamos muito entusiasmados em poder mostrar todo o poder do RAD para Windows, Android, iOS, macOS e Linux! Você que é fera em Delphi ou C++ Builder, e gostaria de palestrar no evento, este é o link para submissões (somente até o dia 30/05): http://thedevconf.com.br/tdc/2017/saopaulo/call4papers Desde já convidamos toda a comunidade a se inscrever e participar conosco no evento. A Embarcadero terá também um box o...
35 Free Delphi Examples for Windows and Android from WinSoft The following is a list of free Delphi libraries, utilities and examples with full source code available from WinSoft. Many are Windows specific, but there are some Android specific ones too. A lot of really useful code here. Thanks to Erik Salaj. .NET Framework Detect - Shows versions of .NET Frameworks installed on your computer. Available free with full source code. AutoRun - Suppresses AutoRun programmatically AWE - Address Windowing Extensions (AWE) for Delphi ...

Posted by on in Blogs
Delphi 10.2 in Lillestrøm, Norway The weather started to rock. Last week was great and today in Norway, really up North, is beautiful sunny day and I'm wearing shorts waiting form my flight back home from Oslo. Norway is really nice. They have this nice balance between North and South European countries and people are relaxed. I like the fact that the floor in the whole airport is wooden. Nice feeling. Today I have been continuing my RAD Studio 10.2 tour with the morning presentation in the culture centre of Lillestrø...
Quick tip: Delphi and C++Builder keyboard shortcuts in Parallels I run Delphi and C++Builder on a Mac, and I do this through Parallels, after switching from VMWare Fusion a few years ago. I've read requests before asking for instructions for how to run RAD Studio in a virtual machine, but it's pretty simple, something along the lines of: Install Windows; (Optionally) Put the VM into full-screen mode. The latter I prefer - both Fusion and Parallels have modes that try remove the Windows desktop and show app windows floating "integrated" into ...
FireMonkey Native and Custom Styles in Action - Video This video shows building a profile screen for your multi-device application using the FireMonkey framework with both native UI support and custom styling. Highlighted in the video are custom multi-device styles included in Embarcadero's premium style bonus pack and custom styles from DelphiStyles.com.   ...
Создание InterBase UDF на Delphi для Linux Тема для этого поста была подсказана вопросами пользователей, которые интересовались, можно ли создавать UDF для СУБД InterBase в Delphi 10.2. Вместе с ведущим экспертом по InterBase Дмитрием Кузьменко, мы решили выяснить детали этого и составить рекомендации для наших пользователей. Популярная реляционная СУБД Embarcadero InterBase имеет ограниченное число встроенных функций для использования в SQL-запросах, однако с самых первых версий отличалась наличием возможности у пользователей создавать двоичные модули, загружать их на сервер и применять содержащиеся в них функции в точности, как "родные" из поставки InterBase. Пользователи имеют возможность реализовывать функции, выполняющие нужную им обработку данных в соответствии с необходимой логикой любой изощренной сложности и переносить эту обработку непосредственно на центральный сервер БД - упрощая управление и администрирование таких функций и обеспечивая максимально возможное быстродействие в условиях одновременной работы множества клиентов. До появления Delphi 10.2 код UDF можно было писать на Delphi только для платформ Windows, на Linux-сервера (наиболее часто используемые в реальной работе) приходилось писать UDF на языке C. В этой статье мы рассмотрим процесс создания UDF для InterBase 2017 на платформах Linux (64 бит) и Windows 64 с помощью Delphi 10.2 Tokyo – проверим, как передаются и возвращаются параметры, и рассмотрим некоторые особенности компиляции и переноса модулей на сервер. Это критически важно для успешного одновременного использования UDF многими пользователями. Здесь я воспользовался примерами Д.Кузьменко из статьи  "Правила написания thread-safe UDF" с этого же сайта.  Подробная документация и руководство по написанию UDF (на английском языке) содержится в Embarcadro docwiki. Мы выполняли тестирование на основе несколько устаревшей, но зато простой и понятной статьи "Как научиться писать UDF на Delphi за 21 минуту?" с сайта iBase.ru, где также приведены отличия для создания UDF для СУБД Firebird. Итак, приступим!

Check out more tips and tricks in this development video: