Код выглядит так:
$dataService = QuickbookConnection::createQBConnection();
$serviceType = IntuitServicesType::QBO;
$classObj = new IPPClass();
$classObj->Id = $classId;
try{
$resultingObj = $dataService->Delete($classObj);
} catch (Exception $e){
$e->getMessage();
}
Я пытался с обновлением класса API. Обновляет все поля, но не обновляет флаг Active. Что-то не так с кодом?
$dataService = QuickbookConnection::createQBConnection();
$serviceType = IntuitServicesType::QBO;
$classObj = new IPPClass();
// Build a query
$oneQuery = new QueryMessage();
$oneQuery->sql = "SELECT";
$oneQuery->entity = "Class";
$oneQuery->whereClause = array("Id='".$QbLocationID."'", );
// Run a query
$queryString = $oneQuery->getString();
$entities = $dataService->Query($queryString);
if ($entities)
{
foreach( $entities as $class )
{
if ( $class->Id == $QbLocationID )
{
$classObj = $class;
}
}
}
$classObj->Name = 'Mumbai'; // Name updating
$classObj->Active = false;
try{
$resultingObj = $dataService->Add($classObj);
} catch (Exception $e){
echo $e->getMessage();
}
В QBO вы можете сделать класс неактивным только с помощью операции обновления. Вы не можете удалить это.
Удалить работает только для транзакций.