4D v14.3システムドキュメント |
||||||||||||||
|
4D v14.3
システムドキュメント
|
エスケープシーケンス | 置き換え文字 |
\n | LF (New line) |
\t | HT (Horizontal tab) |
\r | CR (Carriage return) |
\\ | \ (Backslash) |
\" | " (Quotes) |
ドキュメントやフォルダーを管理する4Dコマンドは多くの場合相対パスと絶対パスの両方をサポートします:
コマンドに渡されるパス名が相対・絶対どちらで解釈されるべきかを決定するため、4Dは各プラットフォームごとに特定のアルゴリズムを適用します。
絶対パスと解釈されるケース
その他のケースはすべて相対パスと解釈されます。
CREATE FOLDERコマンドの例題:
CREATE FOLDER("Monday") // 相対パス
CREATE FOLDER("\Monday") // 相対パス
CREATE FOLDER("\Monday\Tuesday") // 相対パス
CREATE FOLDER("c:") // 絶対パス
CREATE FOLDER("d:\Monday") // 絶対パス
CREATE FOLDER("\\srv-Internal\temp") // 絶対パス
相対パスと解釈されるケース
それ以外のケースはすべて絶対パスです。
CREATE FOLDERコマンドの例題:
CREATE FOLDER("Monday") // 相対パス
CREATE FOLDER("macintosh hd:") // 絶対パス
CREATE FOLDER("Monday:Tuesday") // 絶対パス (Mondayがボリューム名)
CREATE FOLDER(":Monday:Tuesday") // 相対パス
プラットフォームの仕様上の違いに基づく複数のコーディングを避けるために、4DはMAP FILE TYPESのようなコマンドを提供していますが、ディスク上のドキュメントを処理するような低レベルで作業を開始するときは (例えば、プログラミングでパス名を取得するなど) 、MacintoshまたはWindowsのプラットフォームのどちらで起動しているかを知る必要があります。
次のOn Windowsプロジェクトメソッドは、データベースがWindows上で起動しているかどうかをテストします。
// On windows プロジェクトメソッド
// On windows -> ブール
// On windows -> WindowsであればTrue
C_BOOLEAN($0)
$0:=(Folder separator="\\")
Windowsではディレクトリレベルをバックスラッシュ(\) によって表します (日本語フォント環境では円マーク)。Macintoshはフォルダレベルをコロン(:) によって表します。どちらのプラットフォームで起動しているかに基づいて、次のDirectory symbolプロジェクトメソッドは、正確なディレクトリ記号(文字) のコードを返します。
// Directory symbol プロジェクトメソッド
// Directory symbol -> 整数
// Directory symbol -> "\" (Windows) または ":" (Mac OS)のコード
C_LONGINT($0)
If(On Windows)
$0:=Character code("\\")
Else
$0:=Character code(":")
End if
長いドキュメント名を取得してしまうと(パス名+ファイル名) 、その長い名前からドキュメントのファイル名を抽出しなければならないことがあります。例えば、ウィンドウのタイトルにその名前を表示する場合などです。Long name to file name プロジェクトメソッドは、WindowsとMacintoshの両方でこれを実行します。
` Long name to file name プロジェクトメソッド
` Long name to file name ( 文字列 ) -> 文字列
` Long name to file name ( Long file name ) -> file name
C_STRING(255;$1;$0)
C_INTEGER($viLen;$viPos;$viChar;$viDirSymbol)
$viDirSymbol:=Directory symbol
$viLen:=Length($1)
$viPos:=0
For($viChar;$viLen;1;-1)
If(Character code($1[[$viChar]])=$viDirSymbol)
$viPos:=$viChar
$viChar:=0
End if
End for
If($viPos>0)
$0:=Substring($1;$viPos+1)
Else
$0:=$1
End if
If(<>vbDebugOn) `On Startupデータベースメソッドで、変数をTrueまたはFalseで設定する。
If($0="")
TRACE
End if
End if
長いドキュメント名を取得してしまうと(パス名+ファイル名) 、その長い名前からドキュメントが置かれているディレクトリのパス名を抽出しなければならないことがあります。例えば、同じ場所にドキュメントを追加して保存したい場合などです。Long name to file name プロジェクトメソッドは、WindowsとMacintoshの両方でこれを実行します。
` Long name to path name プロジェクトメソッド
` Long name to path name ( 文字列 ) -> 文字列
` Long name to path name ( Long file name ) -> Path name
C_STRING(255;$1;$0)
C_INTEGER($viLen;$viPos;$viChar;$viDirSymbol)
$viDirSymbol:=Directory symbol
$viLen:=Length($1)
$viPos:=0
For($viChar;$viLen;1;-1)
If(Character code($1[[$viChar]])=$viDirSymbol)
$viPos:=$viChar
$viChar:=0
End if
End for
If($viPos>0)
$0:=Substring($1;1;$viPos)
Else
$0:=$1
End if
If(<>vbDebugOn) `On Startupデータベースメソッドで、変数をTrueまたはFalseで設定する。
If($0="")
TRACE
End if
End if
プロダクト: 4D
テーマ: システムドキュメント
Append document
CLOSE DOCUMENT
COPY DOCUMENT
Create document
CREATE FOLDER
DELETE DOCUMENT
Document creator
DOCUMENT LIST
Document type
FOLDER LIST
Get document position
GET DOCUMENT PROPERTIES
Get document size
MAP FILE TYPES
MOVE DOCUMENT
Open document
Select document
SET DOCUMENT CREATOR
SET DOCUMENT POSITION
SET DOCUMENT PROPERTIES
SET DOCUMENT SIZE
SET DOCUMENT TYPE
System Documents
Test path name
VOLUME ATTRIBUTES
VOLUME LIST
ランゲージリファレンス ( 4D v12.4)
ランゲージリファレンス ( 4D v14 R3)
ランゲージリファレンス ( 4D v14 R2)
ランゲージリファレンス ( 4D v13.5)
ランゲージリファレンス ( 4D v14.3)
ランゲージリファレンス ( 4D v14 R4)
Inherited from : システムドキュメント ( 4D v11 SQL Release 6)