nexacro studioで提供される機能の中でファイル編集時の操作性を向上させる便利な機能を紹介します。
Assist
Copy Full Path
現在活性化されたファイルのパスをクリップボードにコピーします。もし、Project Explorerが活性化された状態で選択されたツリーアイテムがファイルである場合は、該当ファイルのパスをコピーします。
Open Containing Folder
現在活性化されたファイルが存在するディレクトリにOS(オペレーティング·システム)のデフォルトエクスプローラを実行して移動します。もし、Project Explorerが活性化された状態で選択されたツリーアイテムがファイルである場合は、該当ファイルのディレクトリパスを開きます。
Open File in Project
現在のプロジェクトにロードされたファイルのリストを表示します。
Search Stringに文字列入力時、プロジェクトファイル内のファイル名に該当文字列が含まれているリストをリアルタイムで更新します。ファイルリストから特定のファイルの項目をダブルクリックすると、該当ファイルの編集ビューが開かれます。
Open Service Folder / Open Folder
Project Explorerが有効の状態で、現在選択した項目がService、Directory(File type serviceのsub directory)の場合、該当パスを開きます。 Project ExplorerのPopup Menuで実行します。
コードスニペット(Code Snippet)
コードスニペットは、ユーザーが予め定義したコードの切れ端を意味します。頻繁に使用するコードをあらかじめ定義しておき、ファイルを編集する際に呼び出せる機能です。
コードスニペットの定義
リボンメニューの[Edit - Assist - Code Snippet]またはメニューの[Assist > Code Snippet]項目を選択した後、呼び出されたウィンドウでコードスニペットを定義することができます。
基本的なコードスニペットは、nexacro studioで提供し、必要な項目を追加することができます。
名前 | 説明 | |
---|---|---|
1 | Add Group | コードスニペットグループの追加 |
2 | Add Code Snippet | 新しいコードスニペットの追加 |
3 | Delete Code Snippet | 選択されたコードスニペットの削除 |
4 | Import Code Snippet | XMLファイルのコードスニペットを取り込んだり、xpackageファイルを選択してImport Wizardを実行します。 |
5 | Export Code Snippet | コードスニペットをXMLファイルとして保存します。 |
6 | Options | コードスニペットファイルのパスを設定します。 |
7 | Code Snippet List | コードスニペットリスト |
8 | Name | コードスニペット名の定義 |
9 | Shortcut | コードスニペットを呼び出すときに使用するショートカットリストの定義 (XCSSまたはScriptの編集ウィンドウで、Shortcutに指定されたフレーズの入力時にコードスニペットを反映) |
10 | Description | コードスニペットの説明定義 |
11 | Code Snippet Source | 適用されるコードスニペットのコード定義 |
コードスニペット予約語
コードスニペットのソース作成時に以下のような予約語を使用することができます。例えば、$DATE$ を入力すると、今日の日付を表記する文字列に変換して入力します。
reserved string | 説明 | |
---|---|---|
General | $end$ | コードスニペットを適用した後のカーソルの位置 |
$selected$ | 現在選択されて文字列。選択された項目がない場合には表示されません。 | |
$clipboard$ | クリップボードにコピーされた文字列 | |
$tab$ | タブ文字 | |
File | $FILE$ | ファイル名を含むファイルパス |
$FILE_EXT$ | ファイル拡張子 | |
$FILE_BASE$ | 拡張子が削除されたファイル名 | |
$FILE_PATH$ | ファイルパス | |
$FILE_EXT_UPPER$ | ファイル拡張子(大文字) | |
$FILE_BASE_UPPER$ | 拡張子が削除されたファイル名(大文字) | |
$FILE_PATH_UPPER$ | ファイルパス(大文字) | |
Date | $DATE$ | 年/月/日型 (yyyy/MM/dd) |
$DATE_REVERSE$ | ロケール形式により現在の日付を表記 | |
$DAY$ | 現在の日付を数字で表記 | |
$DAY_02$ | 現在の日付を「dd」形式で表記 | |
$DAYNAME$ | ロケール形式により現在の曜日を短く表記(Sun, Mon..) | |
$DAYLONGNAME$ | ロケール形式により現在の曜日を表記(Sunday, Monday..) | |
$MONTH$ | 現在の月を数字で表記 | |
$MONTH_02$ | 現在の月を "MM" 形式で表記 | |
$MONTHNAME$ | ロケール形式により現在の月を短く表記(Jan,Feb..) | |
$MONTHLONGNAME$ | ロケール形式により現在の月を表記(January,February..) | |
$YEAR$ | 現在の年を数字で表記 | |
$YEAR_02$ | 現在の年を "yy" 形式で表記 | |
Time | $HOUR$ | 現在の時間を数字で表記 |
$HOUR_02$ | 現在の時間を "HH" 形式で表記 | |
$MINUTE$ | 現在の時間を "mm" 形式で表記 | |
$SECOND$ | 現在の時間を "ss" 形式で表記 |
予約語は、Code Snippet編集ウィンドウのコンテキストメニュー項目の [Insert reserved string]項目を選択するか、'$'文字を入力すると表示されるリストから選択することができます。
コードスニペット活用
スクリプトまたはXCSS編集画面でコンテキストメニューを呼び出して[Code Snippet]を選択すると、コードスニペットソースウィンドウで作成したリストが表示されます。メニューから項目を選択すると、キーボードのカーソル位置にコードスニペットが挿入されます。
Script編集ウィンドウで表示
XCSS編集ウィンドウで表示
コードスニペットの定義リストで入力したショートカットを編集画面で入力すると、コードスニペットのリストが表示され、項目の選択時にコードスニペットを追加することができます。
コードスニペットは、現在のカーソルの位置に挿入されます。たとえば、タブキーを入力してタブだけ移動した状態で、コードスニペットを入力すると、入力されたコードスニペットは、すべてのタブだけ移動した位置に入力されます。
インテリセンス(Intellisense)
インテリセンスは、スクリプトやXCSS編集画面で文字列を入力するときに、使用できるコード(メンバー、関数、パラメータ、コードスニペット)リストを提供して、ユーザーが簡単かつ迅速にファイルを編集することができるように補助する機能です。インテリセンス機能を使用して文字列を入力して直接実行するには、Ctrl+Spaceキーを入力します。
include
スクリプトの編集時にincludeすることができるxjsファイルのリストを表示します。スクリプト画面でincludeを入力した後、引用符を入力すると、includeすることができるファイルのリストを表示します。
Script
スクリプトの編集位置を基準に、現在Scopeで使用できるメンバー、関数、パラメータ、コードスニペットのリストが表示されます。
コンポーネントやオブジェクトのプロパティ値を指定する場合には、プロパティ名の前に「set_」が追加された関数の形式で処理する必要があります。スクリプトウィンドウで入力時に「set_」で起動せずにプロパティ名をそのまま入力して「=」を追加しても、自動的に「set_」が付いた関数形式に変換します。
スクリプトウィンドウで表示されるリストは、アイコンに応じて別の項目を表示します。
XCSS
XCSS編集位置によって、使用可能なセレクタまたはセレクタのプロパティリストとコードスニペットのリストが一緒に表示されます。
XCSS編集ウィンドウで表示されるリストは、アイコンに応じて他の項目を表示します。
自動インデント(Auto Indent)
スクリプト編集ウィンドウで、ブロック設定した領域に自動インデントを適用します。
文字列置換(Rename)
プロジェクトで使用するファイルの中で特定の文字列を置換する機能です。スクリプトの編集画面で、特定の単語上でコンテキストメニューを呼び出すと、Renameを実行することができます。
Rename範囲は、プロジェクト、サービス、ファイル中に選択して変更することができます。コメントの内容までの文字列を検索するには、「Comments」をチェックします。通常の文字列までナビゲートするには、「Strings」をチェックします。
コードラインの編集
スクリプトまたはソース編集時キャレットがあるコードラインを切り取り、コピー、または削除することができます。コード編集ウィンドウで、マウス右ボタンをクリックして、コンテキストメニューから項目を選択します。
Auto Recover
Tools > OptionsメニューでAutoRecover機能の使用の設定と時間を設定すると、nexacro studioで編集するファイルを設定した時間単位で臨時ファイルに保存する機能を実行します。
ファイルの編集中にnexacro studioが正常に終了せず、編集中だったプロジェクトを開くと、臨時ファイルを確認して復旧させるかを問うメッセージがポップアップします。
AutoRecover Messagebox
AutoRecoverは復旧対象リストをリストとして表示し、該当のファイルを編集時に保存された臨時ファイルを使って復旧します。
AutoRecover
metadata
metadataサービスを通じて受信したデータをコンポーネント、オブジェクトのid、textプロパティ値に適用する機能をサポートします。
metadataサービスは、idやテキストのプロパティ値を設定する際に参考できるデータを提供する機能です。変更されたデータは自動的に反映されません。
例えば、Buttonコンポーネントのtextプロパティ値をmetadataで選択して「Submit」に設定した後、metadataの値が「OK」に変わったとしてもコンポーネントのtextプロパティ値は自動的に変更されません。
metadataサービス登録
1
Project Explorerで、「Type Definition > Services」メニューをダブルクリックするか、マウスの右クリックし、メニューから「Edit」項目を選択してポップアップウィンドウで編集ウィンドウを開きます。
2
metadataサービスを登録します。
type項目は「metadata」を選択し、サービスパスとServiceList、DatasetLayout、Search Column項目を入力します。Service List項目は、ドメイン、モデルが定義されたXML形式の戻り値を持ちます。DatasetLayout項目は、Datasetが定義されたXML形式の戻り値を持ちます。
ServiceList、DatasetLayout項目の指定時に下記の形式でパラメータを渡すことができます。
http://172.10.12.54:8080/serviceList/ serviceList.jsp ?filter=FILTER value &domain=DOMAIN value &model=MODEL value
filterパラメータを指定しない場合には、サービスの呼び出しに制限があることがあります。
3
正常にサービス登録されたら、すぐにmetadataサービスを呼び出します。
4
metadataサービスが呼び出されてデータを受信すると、Project Explorerに下記のような情報が表示されます。
metadataサービスで受信したデータをid、textプロパティ値として適用
1
メニューの「Options」を選択して、Optionsウィンドウを開きます。
2
Optionsウィンドウの「Project > Advanced > Metadata」項目から「Use user-defined metadata」の「使用する」にチェックを入れます。
「Use metadata with prefixID」項目を「使用する」にチェックを入れると、idプロパティ値が適用される際に「prefixID+Metadata」形式で idプロパティ値が設定されます。
3
コンポーネントやオブジェクトを選択して、idやtextプロパティ項目を選択すると、拡張ボタンを確認できます。 拡張ボタンをクリックしてください。
4
metadataの照会と選択ができるウィンドウが表示されます。
5
idやtextプロパティ値として反映する項目を確認して該当セルをクリックすると、idやtextプロパティ値に反映されます。
その他の機能
Refresh Filtered
filterパラメータ値を指定して、サービスでフィルタされたデータを渡すことができます。Project Explorerでサービス、もしくはモデルを選択した後、コンテキストメニューから「Refresh Filtered」項目を選択すると、フィルタするテキストを入力できるウィンドウが表示されます。
入力した値は、Service List、Dataset Layoutのfilterパラメータ値に渡されます。
[serviceURL + serviceList]?filter=sales [serviceURL + datasetLayout]?filter=sales &domain=[DOMAIN value]&model=[MODEL value]
Search Column
TypeDefinitionでSearch Column項目を指定すると、metadataを選択するウィンドウでテキストを検索時、検索対象カラムを指定することができます。値を指定しなかった場合にはすべてのカラムを対象に検索を処理します。
Display text
Project Explorerに表示されるmetadata情報の形式を指定することができます。デフォルト値は下記のとおりです。
選択した項目によってProject Explorerに表示されるmetadata情報の形式を変更できます。
プロジェクト開始時のmetadataロード
Optionsウィンドウの「Project > Startup」項目で「Load layout information of a business service/metadata on Stratup」の「使用する」にチェックを入れます。
プロジェクト開始時、metadataロードはプロジェクトフォルダに生成されたService.xdsファイルを使用します。データが変更された場合には、Project Explorerでサービスもしくはモデルを選択し、コンテキストメニューから「Refresh」や「Refresh Filtered」項目を選択する必要があります。
ServiceList、DatasetLayoutの仕様
ServiceList
ServiceListで、ColumnInfoの「DOMAIN」、「MODEL」項目は必須値であり、該当値は「metadata」に指定してください。
DatasetLayout
DatasetLayoutで、ColumnInfo項目のname、type項目は必須値であり、該当値は「metadata」、「dataset」に指定してください。 そして、「metadata」をidとして持つDatasetを定義し、実際に使用するデータを処理します。
External Applicationの開発
nexacro studioで開かれているプロジェクト情報を加工して確認したり出力する用途でExternal Applicationを作成して使えます。
External Application Projectテンプレートを使用して基本的な情報を確認したり出力することができます。テンプレートプロジェクトを修正することで、別の形式のExternal Applicationを作成することもできます。
External Application(nexacrostudioメソッドを含む)をExternal ApplicationウィンドウではないNRE、WREで実行する場合はスクリプトエラーが発生します。External ApplicationはExternal Applicationウィンドウでのみ動作するように設計されていて、該当のスクリプトエラーは正常な動作です。
ReferenceError: nexacrostudio is not defined
簡単なExternal Applicationを作成して連動する方法は、下記の通りです。
1
新しいプロジェクトを生成します。
2
画面にButton、TextAreaコンポーネントを配置します。
3
Buttonコンポーネントのonclickイベントハンドラ関数を下記のように作成します。
this.Button00_onclick = function(obj:nexacro.Button,e:nexacro.ClickEventInfo) { this.TextArea00.set_value(nexacrostudio.request(requesttype.all)); };
4
メニューの「View > External Application」を選択してExternal Applicationウィンドウを表示します。
5
External ApplicationウィンドウでOptionsボタンをクリックしてオプション設定ウィンドウを表示します。
6
「+」ボタンをクリックしてstart.jsonファイルを選択します。
ファイルエクスプローラでは、現在開いているプロジェクトのoutputフォルダの位置がデフォルト位置で開きます。
7
内容を確認して「OK」ボタンをクリックすると、External Applicationが登録されます。
8
ドロップダウンリストにて、External Applicationウィンドウで登録したアプリケーションを選択すると、画面が実行されて表示されます。
9
External Applicationウィンドウでボタンをクリックすると、情報が表示されます。
10
Disconnectボタンをクリックすると、接続が終了し、画面が表示されません。
「?」ボタンをクリックすると、nexacrostudioメソッド関連のヘルプを表示します。
実行環境によって、該当のヘルプの項目が正常に表示されない場合があります。
Appendix > nexacrostudio Interface > Methodをご参照ください。