メインコンテンツまでスキップ
バージョン: 20 R7

VP EXPORT DOCUMENT

履歴
リリース内容
20 R2.sjsドキュメントをサポート

VP EXPORT DOCUMENT ( vpAreaName : Text ; filePath : Text {; paramObj : Object} )

引数説明
vpAreaNameText->4D View Pro フォームオブジェクト名
filePathText->ドキュメントのパス名
paramObjObject->書き出しのオプション

説明

VP EXPORT DOCUMENT コマンドは、vpAreaName で指定した 4D View Pro エリアに関連付けられている 4D View Pro オブジェクトを、filePathparamObj で指定したとおりにディスク上のドキュメントに書き出します。

vpAreaName には、4D View Pro エリアの名前を渡します。 存在しない名前を渡した場合、エラーが返されます。

filePath には書き出すドキュメントのパスとファイル名を渡します。 パスを指定しない場合、ドキュメントは Projectフォルダーと同階層に保存されます。

ドキュメント名に拡張子を付けることで、書き出すドキュメントの形式を指定することができます:

ファイル名に拡張子が含まれていなくても、paramObj 引数によって形式が指定されている場合、書き出されたファイルには形式に対応する拡張子がつけられます。 ただし CSV形式の場合には拡張子がつきません。

任意の paramObj 引数を渡すと、書き出される 4D View Pro オブジェクトの複数のプロパティに加えて、書き出しが完了した際に呼び出されるコールバックメソッド名を定義することができます。

プロパティ説明
formatテキスト(optional) When present, designates the exported file format: ".4vp" (default), ".csv", ".xlsx", ".pdf", or ".sjs". You can use the following constants:
  • vk 4D View Pro format
  • vk csv format
  • vk MS Excel format
  • vk pdf format
  • vk sjs format
  • 4D adds the appropriate extension to the file name if needed. If the format specified doesn't correspond with the extension in filePath, it will be added to the end of filePath. If a format is not specified and no extension is provided in filePath, the default file format is used.
    passwordテキストMicrosoft Excel のみ (任意) - MS Excel ドキュメントの保護に使用されるパスワード。
    formula4D.Function書き出しが完了した際に呼び出されるコールバックメソッド名。 書き出しが非同期でおこなわれる (PDF および Excel 形式での書き出しが該当します) 場合かつ、書き出し後にコードを実行したい場合には、コールバックメソッドが必要です。 The callback method must be passed with the Formula command. See Passing a callback method (formula).
    valuesOnlybooleanフォーミュラ (あれば) の値のみを書き出すかどうかを指定します。
    includeFormatInfobooleanフォーマット (書式) 情報を含めるには true、それ以外の場合には false (デフォルトは true)。 フォーマット情報は特定の場合 (例: SVGへの書き出しなど) において有用です。 On the other hand, setting this property to false allows reducing export time.
    includeBindingSourceboolean4DVP および Microsoft Excel のみ。 true (デフォルト) の場合、カレントデータコンテキストの値を、書き出したドキュメントのセルの値としてエクスポートします (データコンテキスト自体はエクスポートされません)。 それ以外は false。 セルバインドは常にエクスポートされます。 For data context and cell binding management, see VP SET DATA CONTEXT and VP SET BINDING PATH.
    sheetIndexnumberPDF のみ (任意) - 書き出すシートのインデックス (0 起点)。 -2=all visible sheets (default), -1=current sheet only
    pdfOptionsobjectPDFのみ (任意) - pdf 書き出しのオプション

    プロパティタイプ説明
    creatortext変換されたドキュメントの変換元を作成したアプリケーション名。
    titletextドキュメント名。
    authortextドキュメントの作成者の名前。
    keywordstextドキュメントに割り当てられたキーワード。
    subjecttextドキュメントの題名。

    csvOptionsobjectCSVのみ (任意) - csv 書き出しのオプション

    プロパティタイプ説明
    rangeobject複数セルのレンジオブジェクト
    rowDelimitertext行の区切り文字。 デフォルト: "\r\n"
    columnDelimitertextカラムの区切り文字。 デフォルト: ","

    sjsOptionsobjectSJSのみ (任意) - sjs 書き出しのオプション

    プロパティタイプ説明
    includeAutoMergedCellsboolean自動的に結合されたセルを含めるかどうか。デフォルトは false。
    includeBindingSourcebooleanバインドされたソースを含めるかどうか。デフォルトは true。
    includeCalcModelCacheboolean計算の追加データを含めるか。 追加データによって、ファイルを開くのが速くなる場合があります。デフォルトは false。
    includeEmptyRegionCellsboolean使用されるデータレンジの外側の空白セル (データがない、またはスタイルだけのセル) を含めるかどうか。デフォルトは true。
    includeFormulasbooleanフォーミュラを含めるかどうか。デフォルトは true。
    includeStylesbooleanスタイルを含めるかどうか。デフォルトは true。
    includeUnusedNamesboolean使用されていないカスタム名を含めるかどうか。デフォルトは true。
    saveAsViewboolean書き出される値にフォーマット文字列を適用するかどうか。デフォルトは false。

    \<customProperty>anyコールバックメソッドの $3 引数を通して利用可能な任意のプロパティ。

    Excel 形式についての注意:

    • 4D View Pro ドキュメントを Microsoft Excel 形式のファイルに書き出す場合、一部の設定が失われる可能性があります。 たとえば、4Dメソッドとフォーミュラは Excel ではサポートされません。 SpreadJS にある一覧 にて、その他の設定を確認することができます。
    • このフォーマットへの書き出しは非同期に実行されるため、書き出し後にコードを実行するには、paramObj 引数の formula プロパティを使用します。

    PDF 形式についての注意:

    • 4D View Pro ドキュメントを PDF 形式に書き出す場合、ドキュメントで使用されているフォントは自動的に PDF ファイルに埋め込まれます。 ただし、埋め込み可能なのは Unicode マップを持つ OpenType フォント (.OTF または .TTF ファイル) のみです。 フォントに対して有効なフォントファイルが見つからない場合、デフォルトのフォントが代用されます。
    • このフォーマットへの書き出しは非同期に実行されるため、書き出し後にコードを実行するには、paramObj 引数の formula プロパティを使用します。

    CSV 形式についての注意:

    • 4D View Pro ドキュメントを CSV 形式に書き出す場合、テキストと値のみが保存されるため、一部の設定が失われる可能性があります。
    • すべての値は二重引用符で括られた形で保存されます。 ユーザー定義区切りの値 (DSV) に関する詳細については、こちらの Wikipedia の記事 (英文) を参照ください。
    • このフォーマットへの書き出しは非同期に実行されるため、書き出し後にコードを実行するには、paramObj 引数の formula プロパティを使用します。

    SpreadJS ファイル形式についての注意:

    • SpreadJS ファイル は zipファイルです。
    • このフォーマットへの書き出しは非同期に実行されるため、書き出し後にコードを実行するには、paramObj 引数の formula プロパティを使用します。

    書き出し操作が完了すると、VP EXPORT DOCUMENT は自動的に、paramObj オブジェクトの formula プロパティに設定されたメソッドをトリガーします (設定されていれば)。

    コールバックメソッド (フォーミュラ) の渡し方

    コマンドに任意の paramObj 引数を渡す場合、Formula コマンドを使って、書き出し完了時に実行される 4Dメソッドを呼び出すことができます。 コールバックメソッドは、以下の値をローカルパラメーターに受け取ります:

    引数説明
    param1テキスト4D View Pro エリアのオブジェクト名
    param2テキスト書き出された 4D View Pro オブジェクトのファイルパス
    param3objectコマンドの paramObj 引数への参照
    param4objectメソッドから返されるステータスメッセージを格納したオブジェクト
    .successboolean書き出しに成功した場合は true 、それ以外の場合は false
    .errorCodeintegerエラーコード。
    .errorMessageテキストエラーメッセージ。

    例題 1

    "VPArea" エリアのコンテンツをディスク上の 4D View Pro ドキュメントに書き出します:

    var $docPath: Text

    $docPath:="C:\\Bases\\ViewProDocs\\MyExport.4VP"
    VP EXPORT DOCUMENT("VPArea";$docPath)
    // MyExport.4VP がディスク上に保存されます

    例題 2

    カレントシートを PDF に書き出します:

    var $params: Object
    $params:=New object
    $params.format:=vk pdf format
    $params.sheetIndex:=-1
    $params.pdfOptions:=New object("title";"Annual Report";"author";Current user)
    VP EXPORT DOCUMENT("VPArea";"report.pdf";$params)

    例題 3

    4D View Pro ドキュメントを ".xlsx" 形式に書き出して、書き出し完了後にそのドキュメントをMicrosoft Excel で開くメソッドを呼び出します:

     $params:=New object
    $params.formula:=Formula(AfterExport)
    $params.format:=vk MS Excel format //".xlsx"
    $params.valuesOnly:=True

    VP EXPORT DOCUMENT("ViewProArea";"c:\\tmp\\convertedfile";$params)

    AfterExport メソッド:

     #DECLARE($areaName : Text ; $filePath : Text ; $params : Object ; $status : Object )

    If($status.success=False)
    ALERT($status.errorMessage)
    Else
    LAUNCH EXTERNAL PROCESS("C:\\Program Files\\Microsoft Office\\Office15\\excel "+$filePath)
    End if

    例題 4

    カレントシートを、縦棒 (|) 区切りの .txt ファイルに書き出します:

    example-export-csv

    var $params : Object
    $params:=New object
    $params.range:=VP Cells("ViewProArea";0;0;2;5)
    $params.rowDelimiter:="\n"
    $params.columnDelimiter:="|"
    VP EXPORT DOCUMENT("ViewProArea";"c:\\tmp\\data.txt";New object("format";vk csv format;"csvOptions";$params))

    このようになります:

    example-export-csv

    参照

    VP Convert to picture
    VP Export to object
    VP IMPORT DOCUMENT
    VP Print