ヒント

4Dで継続的インテグレーションを導入する方法: ステップ・バイ・ステップ

ソフトウェア開発の世界では近年、”継続的インテグレーション” という新しい概念が登場しました。それについて、私たちがあちこちで見聞きする定義は、次のようなものです:

“CI とは、アプリケーションのコンパイル・テスト・リリースを自動化し、定期的かつ頻繁におこなうプロセスである”

興味深く有望なプロセスであることは理解できますが、4D に実装するためには何をすればいいのでしょうか? インターネットを検索すれば、多くの CIツールやフレームワークが見つりますが、これらの CIツールを使うには、いくつかの前提条件があります。

(最後に日本語の解説動画へのリンクもありますので、お見逃しなく!)

製品 blank

レコードを削除しても、4D はセレクションの一貫性を保ちます

データの削除には注意が必要です。問題を防ぐために、トランザクションを使用したり、バックアップやログに頼ったりすることができます。

4D 20 R4 では、セレクション内のレコードを削除した場合に一貫性を保ち、セレクションを安定させるために、いくつかの改善がなされました。

重要: これは、4D標準のQUERYコマンド と ORDA で扱われるデータの両方に適用されます。

どのようにあなたの4Dコードが安全なものになるのか、続きをぜひご一読ください。

製品 blank

データエクスプローラーで作成・更新・削除する

データエクスプローラーは、データを表示するための強力なツールです。その機能により、管理者はデータの一貫性を簡単に確保することができます。同時にデベロッパーも、専用フォームを新たに用意しなくても、データの作成・更新・削除用のコードを検証することができます。

そして 4D 20 R4 では、ユーザーもデータを表示するだけでなく、データエクスプローラーのインターフェース内で直接データを修正することができるようになりました。そうです、データエクスプローラーのインターフェースで直接、データの追加・修正・削除ができるのです!

ヒント blank

サブフォームを簡単に扱うためのクラス

4D フォーラムで、フォームの前景にメッセージ、砂時計、またはいくつかのインターフェース要素を表示し、背景をぼかすことについてのリクエスト、ヒント、または質問がいくつかありました。サブフォームや CALL FORM を使えば、そのようなインターフェースを作ることができます。複数ページのフォームを扱う場合、コードが複雑になることがあります。

そこで、複数ページのフォームに表示されるサブフォームの管理を簡単にするクラスを Vincent De Lachaux が用意いたしました。このクラスは、サブフォームを読み込んだり、ワーカーから制御したり、メインフォームのサイズが変更された場合にサブフォームの位置を変更したりします。このような仕組みを気にすることなく、ダイアログに集中することができます。

製品 blank

日付と時間のカスタマイズ

日付や時刻の操作には、4Dの内部リソースや OSの設定に基づいた、様々な表現のための専用フォーマットがたびたび必要になります。

通常は、規定のフォーマットで十分ですが、地理的に異なる場所や特殊な要件に対応するため、カスタムフォーマットが不可欠な場合もあります。4D 20 R4 では、このようなニーズに対応するために、大きな進歩がありました。

製品 blank

ノンブロッキング印刷

4D 20 R4 では、4D 内部の印刷ジョブの管理が大幅に改善されました。4D は、複数の印刷ジョブを並行して実行できるようになり、アプリケーションの反応性が格段に向上すると同時に、並行する印刷ジョブの管理が容易になりました。

詳しく説明しましょう!

製品 blank

4D View Pro: 4D 20 R4の新機能

リリースのたびに、4D View Pro の機能リストは拡大し続けています。今回のリリースも例外ではありません: 4D 20.2 と 4D 20 R4 には、SpreadJS の新バージョン v16.2 と、それに対応したリボンのアップデートが含まれています。

この最新バージョンで強化された機能を紹介していきましょう。

製品 blank

コードライブチェッカー導入: 4D開発におけるコード品質を向上

4D 20 R4 では、コンパイル、シンタックスチェック、そしてコードエディターでの入力時に使用される、コードライブチェッカーというアルゴリズムを導入しました。このブログ記事では、この機能の特性がどのように 4Dデベロッパーにとって便利なのかを紹介します。

製品 blank

エラー処理の新しい方法

最近、新しい throw()コマンドを使った新しいエラー処理メカニズムが導入されました。
これは、エラーを生成するコードに可能な限り近い場所に配置された、新しいエラー処理システムへの第一歩となりました。
4D 20 R4 では、式実行中のエラーをインターセプトできるように機能を拡張します。
その詳細を見ていきましょう。