4D v18

変換の原則

ホーム

 
4D v18
変換の原則

変換の原則    


 

  • 変換を行うためには、データベースの "インタープリター" 版 (ストラクチャーのxxxx.4DB ファイル、データのxxxx.4DD ファイル)と、Designerのパスワードが必要になります。
  • 4D v18 で直接変換できるデータベースは4D v11 以降のものに限られます。お使いのアプリケーションがそれよりも古い場合、途中のバージョン(4D v11から4D v17の間のバージョン、その際データとストラクチャーの検証/修復も場合によって必要)を経由し、その後v18 へと変換する必要があります。古いバージョンの"変換"のドキュメントを参照してください。
  • シンタックスチェックを実行します。データベースをコンパイルしない場合も、このチェックによって起こり得るエラーを検知することができます。
  • 変換の前に、必ずデータベースのコピー (バックアップ) を作成してください
  • Maintenance and Security Center (MSC) を使用してストラクチャーとデータの検査と修復を行ってください。
  • QuickTime はサポートされていません。
    • 古いフォーマットの画像(PICT)を変換するためには、32-bit 版のv17 を使用する必要があり、GET PICTURE FORMATS コマンドを使用してPICT が使用されているかどうかを検知し、あった場合には CONVERT PICTURE コマンドを使用してそれらを変換します。
    • 4D v14 以降、デフォルトでQuitckTime コーデックはサポートされていません。
    • 参考までに、互換性のために古い32-bit 版においては、SET DATABASE PARAMETER コマンドとQuickTime Support セレクターを使用することでデータベースにおいてこれらの設定を再有効化することができます。しかしながら、QuickTime サポートは将来の4D のバージョンにおいて恒久的に削除されるという点に注意してください。古いフォーマットの画像の変換については、Conversion of picture type を参照してください。
  • (任意)データのジャーナリングが必要な場合、プライマリーキー (v14以降実装) を実装することができます(デザインリファレンス マニュアルの 主キーを設定、削除する を参照ください)。プライマリーキーを設定することは強く推奨されていますが、これは変換の後でも設定することが可能です。
  • v13.5以降のデータベースにおいて、重複不可属性を持つフィールドはインデックスが必須となりました。今後はインデックスがついてない重複不可属性のフィールド内では一切レコードを作成/編集することはできなくなります。レコードを保存しようとすると、エラーが生成されます (-9998 重複不可のレコードが存在します・1088 インデックスが無効または未設定です)。
    • 存在しないインデックスの作成方法、またはインデックスがなされていないフィールドをすべてまとめたディスクファイルの生成方法については、To create missing indexesを参照してください。
 
 
 
 

v17 の4D または4D Server (v11 からv16 も同様) を使用して作成されたデータベースは 4D v18 において互換性があります (ストラクチャーとデータファイル)。どんなインタープリター版のストラクチャーファイルも変換することができます。変換するためには、4D v18 を起動し、そのストラクチャーファイル (xxx.4DB ファイル) をインタープリターモードで開くだけです。

  • ストラクチャーファイルの変換(.4DB)

ストラクチャーファイルが変換されることを警告するダイアログが表示され、バージョンによってはデータファイルの変換のダイアログも表示されます:

ストラクチャーファイルは4D v18 へと変換され、それより前のバージョンでは開くことはできなくなります。

  • データファイルの変換(.4DD)

4D v11 からv14 のデータファイルの場合には、二つ目のダイアログが表示されます:

データファイルはv18 へと変換されますが、4D v15 、4D v16 、4D v17では引き続き開くことができます。

4D v15 、4D v16 および4D v17のデータベースではデータを変換する必要はありません。

  • ログファイル設定ダイアログ

プライマリーキーが設定されていない場合、4D は以下のダイアログを表示して設定を促します:

プライマリーキーは、(バックアップのために)ログを必要とするテーブルに対して設定する("ウィザードを使用"ボタンを押す)ことが望ましいですが、これは後ほど設定する("続ける"ボタンを押す)こともできます。詳細な情報については、プライマリーキー管理 の章を参照して下さい。

  • 一時的Unicode ダイアログ

アプリケーションを64-bit 版の4D v17 で開き、そのアプリケーションがUnicodeモードでない場合、4D はデータベースを一時的にUnicode に切り替えるかどうかを聞いてきます。

Unicode ではスピードが速くなるため、ここ最近のバージョンにおいては切り替えることが推奨されてきました。また、日本語のサポートのためにはUnicode を使用することが必須となります。まだ切り替えていない場合には、ただちに切り替えましょう。詳細な情報については、互換性ページ の章を参照して下さい。

 
 
 
 

Maintenance and Security Center(MSC) を再度使用してストラクチャーとデータの検査と修復を行ってください。

ストラクチャーにおける留意点は以下の通りです:

  • オーファンメソッド (__Orphan__xxxxx) は MSC のログファイルに警告として記録されます。オーファンメソッドのコードが不要であることを確認したあと、これらはエクスプローラーを使って削除することができます。
  • フォーム内でのオブジェクト名の重複(現在は不可): これらはMSC のログファイルに警告として報告されます。データベースの修復を実行し、これらの名前を変更して下さい(このとき、オブジェクト名のプログラミングに注意するようにして下さい)。
  • 廃止予定の画像(PICT フォーマット)の検知。MSC の章のアプリケーションの検証 を使用して下さい。
    廃止予定または削除済み機能の一覧マニュアル内のPICT フォーマットのピクチャー の段落を参照して下さい。これらの警告はスタティックな画像と、画像ライブラリあるいはフォームオブジェクトに保存された画像に影響する可能性があります。

    注:
    これらの画像の変換には、Conversion of picture type を参照して下さい。
  • 名前の中の不適切な文字  (".", "[", および "]")
    4D v16 R4 以降、以下の要素においてピリオド(.) および大カッコ([ ]) を使用することは推奨されていません:
    • 変数名
    • テーブル名
    • フィールド名
    • プロジェクトメソッド名

    デベロッパーが、アプリケーションをこれらの規則を遵守させるのを容易にするために、アプリケーションの検証 アクションを使用すると、変数名、テーブル名、フィールド名、メソッド名の中にあるこれらの不適切な文字の存在を自動的に検知します。これらの文字が検知された場合、MSC によって"禁則文"が報告され、ログファイルには適切な警告が含まれます:



    こういった場合、アプリケーション内のこれらの要素を改名することが強く推奨されます。

 

データ情報について:

  • 重複不可フィールドでの重複の検知:

    追加の情報が提供されます: MSC、あるいはVERIFY DATA FILE のようなコマンドを使用した場合、ログファイルには関係するテーブル名とフィールド名にくわえて、重複している値も含まれます。
    : データ入力時、"キー重複"エラーダイアログには関係するテーブル名とフィールド名、それから重複した値が含まれます。またGET LAST ERROR STACK コマンドも可能性のある重複についての詳細な情報を含むようになりました。
    4D がデータファイルを開く際、インデックスを構築(あるいは再構築)する必要がある場合、割り当てられた宣言されたフィールド内での値の重複は自動的に検知されるようになりました。この場合、データベースを開く前に特定の警告ダイアログボックスが開かれ、重複を見つけて削除するための情報をユーザーに提供します:

 
 

Unicode ライブラリのアップデート(4D v17 R5 以降ICU バージョンは63.1です)の結果、4D v17 からv18 への変換ではテキストとキーワードのデータベースインデックスの再構築が必要となります。これはデータベースが最初に開かれた際に自動的に行われます(警告: この処理にはかなりの時間を要する場合があります)。

注: 4D v16 以降データベースデータ全体の再インデックスのアルゴリズムが大幅に最適化されました。プロセス全体を見直すことで、最大で2倍の速さを達成しました。全体再インデックスは、例えばデータベース修復後や.4dindxファイルが削除された後などでは必須です。

 
 
 
 

4D vX.x で作成されたデータベースをX Rx で開くことや、その逆も可能です(例えば、v17 Rx のデータベースはv17.x で開くことができます)。ただし新機能を使用したコードはもちろん動きませんので無効化する必要があります。

しかしながら、4D vX に変換したデータベースを4D v(X-1) で開くことはできません。例えば、4D v18 へと変換したデータベースは4D v17.x で開くことはできなくなります。

 
 

 
プロパティ 

プロダクト: 4D
テーマ: 変換の原則

 
履歴 

 
ARTICLE USAGE

4D v18への変換 ( 4D v18)