Node-RED에서 Salesforce 데이터를 Treasure Data로 보내는 방법
15209 단어 SalesforceTreasureDatanode-red
소개
갔다
이 기사에서는 Node-RED를 사용하여 Salesforce에 포함 된 정보를 Treasure Data 데이터베이스로 보내는 방법에 대해 설명합니다. 이번에는 예로서 Salesforce에 포함된 계정(거래처) 정보 중 계정 이름과 계정 ID를 Treasure Data로 보냈습니다.
환경
Mac OSX Yosemite Version 10.10.5
Node-RED Version v0.11.0
Node.js 버전 v0.12.7
완성형
포인트
1. TD 노드의 인증에는 Write-Only API keys를 사용
TD 노드를 인증하면 Account와 Writekey를 묻습니다.
이 Writekey를 검색해야하므로 오른쪽 상단에서 My profile을 선택합니다.
오른쪽에 API Keys를 얻기 위한 비밀번호를 입력하는 곳이 있으므로 입력합니다.
API Keys가 표시되므로 Write-Only API keys를 복사하여 TD 노드에 입력합니다.
2. Splitter로 레코드 분리
Force 노드에 전달하는 쿼리는 다음과 같습니다.
이 쿼리를 전달하면 다음과 같은 출력을 얻을 수 있습니다.
이것을 Splitter 노드 에서 records 를 키로 설정해 나누면, 다음과 같은 레코드로 헤어집니다.
3. 중첩 제거
TD 노드에는 중첩된 데이터가 포함되지 않으므로 중첩된 속성 키를 제거합니다.
function 노드에 다음을 입력하여 attributes 키를 제거할 수 있습니다.
delete msg.payload['attributes'];
return msg;
제거한 형태가 여기.
이 개체를 Treasure Data로 보내면 Treasure Data 테이블에 데이터가 들어갑니다.
코드
force-TD[{
"id": "a16083e8.2530c",
"type": "force",
"username": "Username",
"loginurl": "https://login.salesforce.com",
"logintype": "Username-Password"
}, {
"id": "d2c6ac93.938608",
"type": "td",
"account": "Username"
}, {
"id": "2bca0383.da718c",
"type": "td out",
"td": "d2c6ac93.938608",
"name": "",
"database": "db_test",
"table": "table1",
"x": 703,
"y": 206,
"z": "b5890722.4a76f8",
"wires": []
}, {
"id": "7d9f5468.e69e94",
"type": "inject",
"name": "",
"topic": "",
"payload": "select ID,Name from Account",
"payloadType": "string",
"repeat": "",
"crontab": "",
"once": false,
"x": 122,
"y": 94,
"z": "b5890722.4a76f8",
"wires": [
["d63a4417.6ea9f"]
]
}, {
"id": "d63a4417.6ea9f",
"type": "force in",
"force": "a16083e8.2530c",
"operation": "query",
"sobject": "",
"extname": "",
"name": "",
"x": 215,
"y": 206,
"z": "b5890722.4a76f8",
"wires": [
["4f9d4190.0da758"]
]
}, {
"id": "dcd71ed2.c1acf8",
"type": "function",
"name": "Delete \"attributes\"",
"func": "delete msg.payload['attributes'];\nreturn msg;\n",
"outputs": 1,
"noerr": 0,
"x": 468,
"y": 193,
"z": "b5890722.4a76f8",
"wires": [
["2bca0383.da718c"]
]
}, {
"id": "4f9d4190.0da758",
"type": "splitter",
"name": "",
"property": "payload.records",
"x": 353,
"y": 79,
"z": "b5890722.4a76f8",
"wires": [
["dcd71ed2.c1acf8"]
]
}]
Reference
이 문제에 관하여(Node-RED에서 Salesforce 데이터를 Treasure Data로 보내는 방법), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/junkonakajima/items/03ac53addcfa6b7931fb
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
1. TD 노드의 인증에는 Write-Only API keys를 사용
TD 노드를 인증하면 Account와 Writekey를 묻습니다.
이 Writekey를 검색해야하므로 오른쪽 상단에서 My profile을 선택합니다.
오른쪽에 API Keys를 얻기 위한 비밀번호를 입력하는 곳이 있으므로 입력합니다.
API Keys가 표시되므로 Write-Only API keys를 복사하여 TD 노드에 입력합니다.
2. Splitter로 레코드 분리
Force 노드에 전달하는 쿼리는 다음과 같습니다.
이 쿼리를 전달하면 다음과 같은 출력을 얻을 수 있습니다.
이것을 Splitter 노드 에서 records 를 키로 설정해 나누면, 다음과 같은 레코드로 헤어집니다.
3. 중첩 제거
TD 노드에는 중첩된 데이터가 포함되지 않으므로 중첩된 속성 키를 제거합니다.
function 노드에 다음을 입력하여 attributes 키를 제거할 수 있습니다.
delete msg.payload['attributes'];
return msg;
제거한 형태가 여기.
이 개체를 Treasure Data로 보내면 Treasure Data 테이블에 데이터가 들어갑니다.
코드
force-TD[{
"id": "a16083e8.2530c",
"type": "force",
"username": "Username",
"loginurl": "https://login.salesforce.com",
"logintype": "Username-Password"
}, {
"id": "d2c6ac93.938608",
"type": "td",
"account": "Username"
}, {
"id": "2bca0383.da718c",
"type": "td out",
"td": "d2c6ac93.938608",
"name": "",
"database": "db_test",
"table": "table1",
"x": 703,
"y": 206,
"z": "b5890722.4a76f8",
"wires": []
}, {
"id": "7d9f5468.e69e94",
"type": "inject",
"name": "",
"topic": "",
"payload": "select ID,Name from Account",
"payloadType": "string",
"repeat": "",
"crontab": "",
"once": false,
"x": 122,
"y": 94,
"z": "b5890722.4a76f8",
"wires": [
["d63a4417.6ea9f"]
]
}, {
"id": "d63a4417.6ea9f",
"type": "force in",
"force": "a16083e8.2530c",
"operation": "query",
"sobject": "",
"extname": "",
"name": "",
"x": 215,
"y": 206,
"z": "b5890722.4a76f8",
"wires": [
["4f9d4190.0da758"]
]
}, {
"id": "dcd71ed2.c1acf8",
"type": "function",
"name": "Delete \"attributes\"",
"func": "delete msg.payload['attributes'];\nreturn msg;\n",
"outputs": 1,
"noerr": 0,
"x": 468,
"y": 193,
"z": "b5890722.4a76f8",
"wires": [
["2bca0383.da718c"]
]
}, {
"id": "4f9d4190.0da758",
"type": "splitter",
"name": "",
"property": "payload.records",
"x": 353,
"y": 79,
"z": "b5890722.4a76f8",
"wires": [
["dcd71ed2.c1acf8"]
]
}]
Reference
이 문제에 관하여(Node-RED에서 Salesforce 데이터를 Treasure Data로 보내는 방법), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/junkonakajima/items/03ac53addcfa6b7931fb
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
[{
"id": "a16083e8.2530c",
"type": "force",
"username": "Username",
"loginurl": "https://login.salesforce.com",
"logintype": "Username-Password"
}, {
"id": "d2c6ac93.938608",
"type": "td",
"account": "Username"
}, {
"id": "2bca0383.da718c",
"type": "td out",
"td": "d2c6ac93.938608",
"name": "",
"database": "db_test",
"table": "table1",
"x": 703,
"y": 206,
"z": "b5890722.4a76f8",
"wires": []
}, {
"id": "7d9f5468.e69e94",
"type": "inject",
"name": "",
"topic": "",
"payload": "select ID,Name from Account",
"payloadType": "string",
"repeat": "",
"crontab": "",
"once": false,
"x": 122,
"y": 94,
"z": "b5890722.4a76f8",
"wires": [
["d63a4417.6ea9f"]
]
}, {
"id": "d63a4417.6ea9f",
"type": "force in",
"force": "a16083e8.2530c",
"operation": "query",
"sobject": "",
"extname": "",
"name": "",
"x": 215,
"y": 206,
"z": "b5890722.4a76f8",
"wires": [
["4f9d4190.0da758"]
]
}, {
"id": "dcd71ed2.c1acf8",
"type": "function",
"name": "Delete \"attributes\"",
"func": "delete msg.payload['attributes'];\nreturn msg;\n",
"outputs": 1,
"noerr": 0,
"x": 468,
"y": 193,
"z": "b5890722.4a76f8",
"wires": [
["2bca0383.da718c"]
]
}, {
"id": "4f9d4190.0da758",
"type": "splitter",
"name": "",
"property": "payload.records",
"x": 353,
"y": 79,
"z": "b5890722.4a76f8",
"wires": [
["dcd71ed2.c1acf8"]
]
}]
Reference
이 문제에 관하여(Node-RED에서 Salesforce 데이터를 Treasure Data로 보내는 방법), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/junkonakajima/items/03ac53addcfa6b7931fb텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)