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

VP IMPORT DOCUMENT

履歴
リリース内容
20 R9カスタムの関数が完了した後のコールバック関数のトリガー
20 R2.sjsドキュメントをサポート

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

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

説明

VP IMPORT DOCUMENT コマンドは、vpAreaName で指定した 4D View Pro エリアに、filePath 引数のドキュメントを読み込んで表示させます。 エリア内に挿入されていたデータがあれば、それらは読み込んだドキュメントによって置換されます。

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

filePath には読み込むドキュメントのパスとファイル名を渡します。 以下のフォーマットがサポートされています :

  • 4D View Pro ドキュメント (拡張子 ".4vp")
  • Microsoft Excel 形式 (拡張子 ".xlsx")
  • テキスト形式のドキュメント (拡張子 ".txt", ".csv", ドキュメントは UTF-8 形式である必要あり)
  • SpreadJS ドキュメント (拡張子 ".sjs")

ドキュメントの拡張子が認識される拡張子 (.4vp.xlsx など) ではなかった場合、ドキュメントはテキスト形式であると見なされます。 ドキュメントが Project フォルダーと同階層に置かれている場合を除き、フルパスを渡す必要があります (同階層に置かれている場合にはファイル名のみを渡すことができます)。

filePath 引数が無効だった場合や、対象ファイルが存在しなかったり、壊れたりしている場合には、エラーが返されます。

任意の paramObj 引数を渡すことで、読み込まれるドキュメントのプロパティを定義することができます:

引数説明
formula4D.Function読み込み終了時に実行させるコールバックメソッド。 Formula コマンドの戻り値フォーミュラを使用する必要があります。 コールバックメソッド (フォーミュラ) の渡し方 を参照ください。
passwordtextMicrosoft Excel のみ (任意) - MS Excel ドキュメントの保護に使用されているパスワード。
csvOptionsobjectCSV読み込みのオプション
rangeobject書き出されるデータの、最初のセルを格納しているセルレンジ。 指定されたレンジがセルレンジではない場合、レンジの最初のセルが使用されます。
rowDelimitertext行の区切り文字。 渡されなかった場合、区切り文字は 4D によって自動的に定義されます。
columnDelimitertextカラムの区切り文字。 デフォルト: ","
sjsOptionsobjectsjs 読み込みのオプション
calcOnDemandboolean要求されたときにだけフォーミュラを計算するかどうか。デフォルトは false。
dynamicReferencesboolean動的参照を含む関数を計算するかどうか。デフォルトは true。
fullRecalcbooleanjsonデータを読み込んだ後に計算するかどうか。デフォルトは false。
includeFormulasboolean読み込み時にフォーミュラを含めるかどうか。デフォルトは true。
includeStylesboolean読み込み時にスタイルを含めるかどうか。デフォルトは true。
includeUnusedStylesbooleanexcel xml を json に変換する際、使用されていないカスタム名を含めるかどうか。デフォルトは true。
openModeinteger
  • 0 (normal): 通常のオープンモード、レイジーなし、インクリメンタルなし。 ファイルを開くと、特定の時点で UI と UIイベントが更新され、応答します。
  • 1 (lazy): レイジー (遅延) オープンモード。 ファイルを開くと、アクティブなシートだけが直接読み込まれます。 ファイルを開くと、アクティブなシートだけが直接読み込まれます。 他のシートは使用された場合にのみ読み込まれます。
  • 2 (incremental): インクリメンタル (増分) オープンモード。 ファイルを開くと、データ読み込み中に UI と UIイベントが更新され、即座に応答します。
  • excelOptionsobjectExcel のみ (任意) - Excel 書き出しのオプション
    includeStylesboolean読み込み時にスタイルを含めるかどうか。デフォルトは true。
    includeFormulasboolean読み込み時にフォーミュラを含めるかどうか。デフォルトは true。
    frozenColumnsAsRowHeadersboolean読み込み時に固定された列を行ヘッダーとして扱うかどうか。デフォルトはfalse。
    frozenRowsAsColumnHeadersboolean読み込み時に固定された行を列ヘッダーとして扱うかどうか。デフォルトはfalse。
    fullRecalcbooleanjsonデータを読み込んだ後に計算するかどうか。デフォルトは false。
    dynamicReferencesboolean動的参照を含む関数を計算するかどうか。デフォルトは true。
    calcOnDemandboolean要求されたときにだけフォーミュラを計算するかどうか。デフォルトは false。
    includeUnusedStylesbooleanexcel xml を json に変換する際、使用されていないカスタム名を含めるかどうか。デフォルトは true。
    passwordtextワークブックを開くためのパスワード。
    openModetext開くモード(ノーマル、レイジー、インクリメンタル)。 デフォルトはノーマル。
    注記
    • .xslx、.csv、.sjs 形式のファイルの読み込みは、非同期 でおこなわれます。 これらの形式で、ドキュメント処理の最後にアクションを実行したい場合には、formula プロパティを使用する必要があります。
    • Microsoft Excel 形式のファイルを 4D View Pro ドキュメントに読み込む場合、一部の設定が失われる可能性があります。 SpreadJS にある一覧 にて、設定を確認することができます。
    • CSV形式およびユーザー定義区切りの値 (DSV) に関する詳細については、こちらの Wikipedia の記事 (英文) を参照ください。
    • ".xlsx" フォーマットを読み込む際にはexcelOptions オブジェクトの使用が推奨されています。 潜在的な問題を避けるため、このオブジェクトを旧式の第一レベルプロパティの password と混在させないように注意して下さい。
    • 属性で指定されたコールバック関数は、読み込まれたコンテンツ内の全ての4D カスタムファンクション がその計算を終えた後にトリガーされます。 これにより、ドキュメントの変更や書き出しなどの依存処理は、全てのフォーミュラベースの計算が完全に解決した後に初めて実行されることが保証されます。

    例題 1

    フォームが開かれたときに、ディスク上に保存されているデフォルトの 4D View Pro ドキュメントを読み込みます:

    var $docPath : text
    If(Form event code=On VP Ready) //4D View Pro エリアがロードされ準備ができた
    $docPath:="C:\\Bases\\ViewProDocs\\MyExport.4VP"
    VP IMPORT DOCUMENT("VPArea";$docPath)
    End if

    例題 2

    パスワードで保護されている Microsoft Excel ドキュメントを 4D View Pro エリアに読み込みます:

    	//読み込みコード
    var $o:={}
    $o.formula:=Formula(myImport)
    $excelOptions:={includeStyles:false;includeFormulas:true;password:"excel123"}
    $o.excelOptions:=$excelOptions

    VP IMPORT DOCUMENT("ViewProArea";"c:\\tmp\\excelfile.xlsx";$o)
    	// myImport コールバックメソッド
    #DECLARE($area : Text; $filePath : Text; $param : Object; $status : Object)

    If ($status.success)
    ALERT("読み込みに成功しました。")
    Else
    ALERT("エラー: "+$status.errorMessage)
    End if

    例題 3

    カンマ (",") を区切り文字として使用している .txt ファイルを読み込みます:

    example-import-csv

    var $params:={}
    $params.range:=VP Cells("ViewProArea";0;0;2;5)
    VP IMPORT DOCUMENT("ViewProArea";"c:\\import\\my-file.txt";New object("csvOptions";$params))

    このようになります: example-import-csv

    参照

    VP EXPORT DOCUMENT
    VP NEW DOCUMENT
    4D View Pro: Excel import/export update (blog post)