단일 레코드 생성
SObject의 API Name과 필드정보를 바탕으로 하나의 레코드를 생성합니다.
-
Database 모듈에 아래의 메소드를 추가합니다
HttpPost 메소드를 사용합니다.
def createRecord(connInfo, objectName, data): result = None try: headers = { 'Content-Type' : 'application/json', 'Authorization' : 'Bearer %s' % connInfo.get('accessToken') } serviceEndpoint = "/services/data/v58.0/sobjects/%s/" % objectName url = "%s%s" % (connInfo.get('instanceUrl'), serviceEndpoint) req = requests.Request('POST', url, data=data, headers=headers) prepped = req.prepare() result = call(prepped) except Exception as e: print('Exception -> ', e) return result -
sample.py 모듈에 아래의 메소드를 추가합니다.
def createRecord(ConnectionInfo connectionInfo): try: objectName = "Account" recordBody = { "Name" : "Dev Test Company", "NumberOfEmployees" : 100 } result = Database.createRecord(connInfo, objectName, json.dumps(recordBody)) print(json.dumps(result, indent=2)) except Exception as e: print('Exception -> ', e)recordBody는 JsonObject로 만들어서 String 형태로 변환하여 사용해도 됩니다. -
sample.py 모듈의
main메소드에 아래의 내용을 추가합니다.# Data function block begin # querySample(connInfo) # batchSample(connInfo) # querySingle(connInfo) createRecord(connInfo) # Data function block end -
터미널에서
python sample.py이라고 명령을 실행해 봅니다.아래와 같은 형식의 데이터가 표시되면 정상적으로 레코드가 생성이 된것입니다.
{ "id": "001*****************", "success": true, "errors": [] }여기서 만들어진 레코드를 사용하여 레코드 업데이트 및 삭제를 진행해 보도록 하겠습니다.