diff --git a/README.md b/README.md index 76f8921..812c571 100644 --- a/README.md +++ b/README.md @@ -67,6 +67,31 @@ Query $result = $crud->query($query); ``` +Get Next + +```bash + $query = 'SELECT Id,Name FROM ACCOUNT'; + + $crud = new \bjsmasth\Salesforce\CRUD(); + $result = $crud->query($query); + + $allRecords = []; + + while (isset($result) && !$result['done']) { + + if (isset($result['records'])) { + $allRecords = array_merge($allRecords, $result['records']); + } + + $result = $crud->getNext($result['nextRecordsUrl']); + } + + if (isset($result['records'])) { + $allRecords = array_merge($allRecords, $result['records']); + } + +``` + Create ```bash diff --git a/src/CRUD.php b/src/CRUD.php index 4665974..348a077 100644 --- a/src/CRUD.php +++ b/src/CRUD.php @@ -37,6 +37,20 @@ public function query($query) return json_decode($request->getBody(), true); } + public function getNext($url) + { + $url = "$this->instance_url.$url"; + + $client = new Client(); + $request = $client->request('GET', $url, [ + 'headers' => [ + 'Authorization' => "OAuth $this->access_token" + ] + ]); + + return json_decode($request->getBody(), true); + } + public function create($object, array $data) { $url = "{$this->instance_url}/services/data/v39.0/sobjects/{$object}/";