ThingWorx の拡張性 > 拡張機能 > CSV パーサー
CSV パーサー
* 
PTC による ThingWorx の CSV パーサー拡張機能のサポートは終了し、この拡張機能は PTC のダウンロードポータルからダウンロードできなくなります。PTC パートナー Free ThingWorx Widgets | IQNOX がこの拡張機能のサポートと今後のメンテナンスリリースを提供します。詳細については、PTC のサポートアーティクルを参照してください。
コンマ区切り値 (CSV) ファイルには、表形式のデータ (数字とテキスト) がプレーンテキスト形式で格納されます。ThingWorx CSV パーサー拡張機能により、ThingWorx 内の CSV ファイルの解析および操作を行います。これによって、CSV データを ThingWorx にインポートして格納したり、単なるデータストアとして扱って CSV データからその他の値を抽出したりできます。CSV パーサー拡張機能を使用するには、CSVParser_Extensions.zip をダウンロードして ThingWorx にインポートします。パッケージにより、次のものが ThingWorx にインポートされます。
CSVParserFunctions リソース
CSV パーサー拡張機能の使用方法の詳細については、このアーティクルを参照してください。
* 
インポートファイルには UTF-8 エンコードの使用をお勧めします。
サービス
CSV パーサー機能は、サービスの「スニペット」タブにあり、以下のサービスを含みます。
GetCSVFile: このサービスは HTTP GET から CSV ファイルを解析します (出力結果は Infotable)。次の設定可能なパラメータがあります。
header (HTTP ヘッダー)
fieldDelimiter (フィールドの区切り記号)
ignoreSSLErrors (SSL 証明書のエラーを無視)
columnMappings (列マップ)
hasHeader (CSV ファイルにヘッダー行あり)
latitudeField (緯度フィールドインデックス)
password (URL パスワード)
url (URL)
longitudeField (経度フィールドインデックス)
username (URL のユーザー名)
stringDelimiter (文字列値の区切り記号)
dateFormat (日付/時刻形式)
dataShape (データシェイプ)
timeout (オプションタイムアウトの秒数)
GetOrderedFieldOutput: このサービスはデータのエクスポートのリストを返します (出力結果は Infotable)。次の設定可能なパラメータがあります。
orderedFieldList (ソースとして使用する Infotable)
inputInfotable (入力テーブルから返されるフィールドの順序付けられた CSV リスト)
ParseCSVFile:
このサービスは、テキストから CSV ファイルを解析します (出力結果は Infotable)。次の設定可能なパラメータがあります。
content (コンテンツ)
fieldDelimiter (フィールドの区切り記号)
columnMappings (列マップ)
hasHeader (ファイルにヘッダー行あり)
latitudeField (緯度フィールドインデックス)
longitudeField (経度フィールドインデックス)
stringDelimiter (文字列値の区切り記号)
dateFormat (日付/時刻形式)
dataShape (データシェイプ)
ReadCSVFile: このサービスはリポジトリから CSV ファイルを解析します(出力結果は Infotable)。次の設定可能なパラメータがあります。
path (ファイルのパス)
fieldDelimiter (フィールドの区切り記号)
columnMappings (列マップ)
hasHeader (ファイルにヘッダー行あり)
latitudeField (緯度フィールドインデックス)
longitudeField (経度フィールドインデックス)
stringDelimiter (文字列値の区切り記号)
dateFormat (日付/時刻形式)
dataShape (データシェイプ)
WriteCSVFile: このサービスはリポジトリに CSV ファイルを書き込みます。次の設定可能なパラメータがあります。
data (Infotable データ)
path (ファイルのパス)
fileRepository (ファイルリポジトリ名)
withHeader (列名にヘッダーを使用)
例: ReadCSV
次の例では、データシェイプが 2 つの文字列フィールドを持つ ds1 として定義されます。
var params = {
path: "test5.csv" /* STRING */,
columnMappings: undefined /* STRING */,
hasHeader: undefined /* BOOLEAN */,
longitudeField: undefined /* NUMBER */,
dateFormat: undefined /* STRING */,
fileRepository: "SystemRepository" /* THINGNAME */,
latitudeField: undefined /* NUMBER */,
fieldDelimiter: undefined /* STRING */,
stringDelimiter: undefined /* STRING */,
dataShape: "ds1" /* DATASHAPENAME */
};

// result: INFOTABLE
var result = Resources["CSVParserFunctions"].ReadCSVFile(params);
WriteCSV

var params = {
infoTableName : "InfoTable",
dataShapeName : "ds1"
};
// CreateInfoTableFromDataShape(infoTableName:STRING("InfoTable"), dataShapeName:STRING):INFOTABLE(ds1)
var result = Resources["InfoTableFunctions"].CreateInfoTableFromDataShape(params);
var newRow = new Object();
newRow.firstfield = "FirstFieldValue";
newRow.secondfield = "SecondFieldValue";
//infotable1Object.rows[0] = newRow;
result.AddRow(newRow);
var params2 = {
path: "test4.csv" /* STRING */,
data: result /* INFOTABLE */,
fileRepository: "SystemRepository" /* THINGNAME */,
withHeader: undefined /* BOOLEAN */
};
// no return
var result = Resources["CSVParserFunctions"].WriteCSVFile(params2);
これは役に立ちましたか?