Связывает сведения о результатах с объектом проверки
setResultDetails(ElementResults)
В функции обратного вызова проверки используйте setResultDetails( связаться ElementResults)ElementResults с проверкой (CheckObj).
ElementResults является коллекцией экземпляров ModelAdvisor.ResultDetail класс.
ElementResults | Сбор данных |
В этом примере показаны подробные данные результата, соответствующие выполнению проверки Проверьте, отображаются ли имена блоков под блоками в AdvisorCustomizationExample модель. В конце кода, CheckObj.setResultDetails(ElementResults); связывает результаты с объектом проверки. Дополнительные сведения см. в разделе Создание и развертывание пользовательской конфигурации Model Advisor.
% ----------------------------- % This callback function uses the DetailStyle CallbackStyle type. % ----------------------------- function DetailStyleCallback(system, CheckObj) mdladvObj = Simulink.ModelAdvisor.getModelAdvisor(system); % get object % Find all blocks whose name does not appear below blocks violationBlks = find_system(system, 'Type','block',... 'NamePlacement','alternate',... 'ShowName', 'on'); if isempty(violationBlks) ElementResults = ModelAdvisor.ResultDetail; ElementResults.IsInformer = true; ElementResults.Description = 'Identify blocks where the name is not displayed below the block.'; ElementResults.Status = 'All blocks have names displayed below the block.'; mdladvObj.setCheckResultStatus(true); else ElementResults(1,numel(violationBlks))=ModelAdvisor.ResultDetail; for i=1:numel(ElementResults) ElementResults(i).setData(violationBlks{i}); ElementResults(i).Description = 'Identify blocks where the name is not displayed below the block.'; ElementResults(i).Status = 'The following blocks have names that do not display below the blocks:'; ElementResults(i).RecAction = 'Change the location such that the block name is below the block.'; end mdladvObj.setCheckResultStatus(false); mdladvObj.setActionEnable(true); end CheckObj.setResultDetails(ElementResults); end