function testBatchFile() { global $client; $batchID = 0; $uploadedFilePath = ""; //BatchSave $batch = new Batch(); $batch->setBatchStatusId("Waiting"); $batch->setBatchTypeId("ItemImport"); $batch->setCompanyId(31115); $batch->setName("ItemImportTest.xls"); $batch->setOptions("Add File"); $batchFile = new BatchFile(); $batchFile->setName("ItemImportTest.xls"); $filename = "c:\\Batch\\ItemImportTest.xls"; $contents = $this->ReadContents($filename); $batchFile->setFilePath($filename); $batchFile->setSize(strlen($contents)); $batchFile->setContent($contents); $batchFiles = array($batchFile); $batch->setFiles($batchFiles); $batchSaveResult = $client->BatchSave($batch); $this->assertEqual(SeverityLevel::$Success, $batchSaveResult->getResultCode()); $batchID = $batchSaveResult->getBatchId(); //BatchFileSave- save BatchFile in that BAtchFile only $file = new BatchFile(); //Set BatchId for recently stored batch $file->setBatchId($batchID); $file->setName("Error.xls"); $file->setSize(100); $file->setContentType("content type"); $filename = "c:\\Batch\\Errors.xls"; $contents = $this->ReadContents($filename); $file->setContent($contents); $fileSaveResult = $client->BatchFileSave($file); $this->assertEqual(SeverityLevel::$Success, $fileSaveResult->getResultCode()); //BatchFileFetch $fetchRequest = new FetchRequest(); $fetchRequest->setFields("*,Content"); $fetchRequest->setFilters("BatchFileId=" . $fileSaveResult->getBatchFileId()); $batchFileFetchResult = $client->BatchFileFetch($fetchRequest); $this->assertEqual(SeverityLevel::$Success, $batchFileFetchResult->getResultCode()); foreach ($batchFileFetchResult->getBatchFiles() as $batchFile) { $this->assertEqual("Error.xls", $batchFile->getName()); } //BatchFile delete $delRequest = new DeleteRequest(); $delRequest->setFilters("BatchFileId=" . $fileSaveResult->getBatchFileId()); $delRequest->setMaxCount(1); $delResult = $client->BatchFileDelete($delRequest); $this->assertEqual(SeverityLevel::$Success, $delResult->getResultCode()); //Batch Delete $delRequest = new DeleteRequest(); $delRequest->setFilters("BatchId=" . $batchID); $delResult = $client->BatchDelete($delRequest); $this->assertEqual(SeverityLevel::$Success, $delResult->getResultCode()); }