Получите навигацию URL для источника ссылки или места назначения, требования, теста или элемента модели Simulink
возвращает навигацию URL в источник ссылки или место назначения, требование, тест или Simulink® элемент модели указан navURL
= slreq.getExternalURL(myDesignItem
)myDesignItem
.
Примечание
MATLAB® встроенный веб-сервер должен работать на порте HTTP 31415, чтобы создать URL навигации. Если ваш сеанс работы с MATLAB не сконфигурирован для этого Номера порта HTTP, ошибка происходит, когда вы пытаетесь создать ссылку. Используйте connector.port
проверять номер настроенного порта. Если connector.port
возвращает 0
, используйте rmipref('UnsecureHttpRequests',true)
включить встроенный сервер HTTP. Если connector.port
возвращает номер, который не является 31415
, закройте все экземпляры MATLAB и вновь откройте один экземпляр.
[
также возвращает внешнюю метку навигации, navURL
,navLabel
] = slreq.getExternalURL(myDesignItem
)navLabel
.
Откройте Определение Требований для проекта Модели Круиз-контроля. Загрузите crs_req
требование установлено.
slreqCCProjectStart;
slreq.load('crs_req');
Найдите crs_req
ссылка установлена. Найдите ссылку с описанием #9: Enable Switch Detection
.
myLinkSet = slreq.find('Type','LinkSet','Name','crs_req'); myLink = find(myLinkSet,'Description','#9: Enable Switch Detection')
myLink = Link with properties: Type: 'Derive' Description: '#9: Enable Switch Detection' Keywords: {} Rationale: '' CreatedOn: 20-May-2017 13:14:10 CreatedBy: 'itoy' ModifiedOn: 02-Feb-2018 14:28:04 ModifiedBy: 'itoy' Revision: 4 SID: 1 Comments: [0×0 struct]
Получите навигацию URL к источнику ссылки.
navURL1 = slreq.getExternalURL(myLink.source)
navURL1 = 'http://localhost:31415/matlab/feval/rmi.navigate?arguments=[%22linktype_rmi_slreq%22,%22crs_req.slreqx%22,%2210%22,%22%22]'
Получите навигацию URL месту назначения ссылки.
navURL2 = slreq.getExternalURL(myLink.destination)
navURL2 = 'http://localhost:31415/matlab/feval/rmi.navigate?arguments=[%22linktype_rmi_slreq%22,%22crs_req_func_spec.slreqx%22,%229%22,%22%22]'
Очистка
Очистите загруженные наборы требования и наборы ссылки.
slreq.clear;
Откройте Определение Требований для проекта Модели Круиз-контроля. Загрузите crs_req_func_spec
набор требования и открытый это в Редакторе Требований.
slreqCCProjectStart;
rs = slreq.open('crs_req_func_spec');
В редакторе требований, в crs_req_func_spec
набор требования, выберите требование с ID #1
. Получите объект API для требования с помощью slreq.getCurrentObject
. Затем получите внешнюю навигацию URL для требования и метка для URL.
req = slreq.getCurrentObject
req = Requirement with properties: Type: 'Functional' Id: '#1' Summary: 'Driver Switch Request Handling' Description: '<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">↵<html><head><meta name="qrichtext" content="1" /><style type="text/css">↵p, li { white-space: pre-wrap; }↵</style></head><body style=" font-family:'MS Shell Dlg 2'; font-size:10pt; font-weight:400; font-style:normal;">↵<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Handle switch operations by the driver to determine the command for the cruise control system to operate upon.</p>↵<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Sans Serif';"><br /></p></body></html>' Keywords: {} Rationale: '' CreatedOn: 27-Feb-2017 10:15:38 CreatedBy: 'itoy' ModifiedBy: 'asriram' SID: 1 FileRevision: 46 ModifiedOn: 02-Aug-2017 13:49:40 Dirty: 0 Comments: [0×0 struct] Index: '1'
[navURL1,navLabel1] = slreq.getExternalURL(req)
navURL1 = 'http://localhost:31415/matlab/feval/rmi.navigate?arguments=[%22linktype_rmi_slreq%22,%22crs_req_func_spec.slreqx%22,%221%22,%22%22]'
navLabel1 = 'Driver Switch Request Handling'
Найдите выравнивание в наборе требования с ID #72
. Получите внешнюю навигацию URL URL для выравнивания и метка для URL.
jt = find(rs,'Type','Justification','ID','#72')
jt = Justification with properties: Id: '#72' Summary: 'Non-functional requirement' Description: '<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">↵<html><head><meta name="qrichtext" content="1" /><style type="text/css">↵p, li { white-space: pre-wrap; }↵</style></head><body style=" font-family:'Helvetica'; font-size:8pt; font-weight:400; font-style:normal;">↵<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'MS Shell Dlg 2'; font-size:10pt;">A non-functional requirement that cannot be associated with a model element.</span></p></body></html>' Keywords: {} Rationale: '' CreatedOn: 27-Feb-2017 10:34:22 CreatedBy: 'itoy' ModifiedBy: 'asriram' SID: 72 FileRevision: 1 ModifiedOn: 03-Aug-2017 17:14:44 Dirty: 0 Comments: [0×0 struct] Index: '5.1'
[navURL2,navLabel2] = slreq.getExternalURL(jt)
navURL2 = 'http://localhost:31415/matlab/feval/rmi.navigate?arguments=[%22linktype_rmi_slreq%22,%22crs_req_func_spec.slreqx%22,%2272%22,%22%22]'
navLabel2 = 'Non-functional requirement'
Найдите все загруженные требования, на которые ссылаются. Получите внешнюю навигацию URL для третьего требования, на которое ссылаются, и метка для URL.
refs = slreq.find('Type','Reference'); ref = refs(3)
ref = Reference with properties: Id: 'System overview' CustomId: 'System overview' Artifact: 'crs_req.docx' ArtifactId: '?System overview' Domain: 'linktype_rmi_word' UpdatedOn: 02-Feb-2018 13:23:13 CreatedOn: NaT CreatedBy: '' ModifiedBy: '' IsLocked: 1 Summary: 'System overview' Description: '<div class=WordSection1>↵↵<div style='border:none;border-bottom:solid #595959 1.0pt;padding:0in 0in 1.0pt 0in'>↵↵<h1 style='margin-left:0in;text-indent:0in'>System overview</h1>↵↵</div>↵↵</div>' Rationale: '' Keywords: {} Type: 'Functional' SID: 3 FileRevision: 1 ModifiedOn: 03-Aug-2017 17:34:56 Dirty: 0 Comments: [0×0 struct] Index: '2'
[navURL3,navLabel3] = slreq.getExternalURL(ref)
navURL3 = 'http://localhost:31415/matlab/feval/rmi.navigate?arguments=[%22linktype_rmi_slreq%22,%22crs_req.slreqx%22,%223%22,%22%22]'
navLabel3 = 'System overview'
Очистка
Очистите загруженные наборы требования и наборы ссылки. Закройте Редактор Требований.
slreq.clear;
Откройте Определение Требований для проекта Модели Круиз-контроля. Откройте crs_plant
модель.
slreqCCProjectStart;
open_system('crs_plant');
Выберите Transmission
подсистема и использование gcb
или gcbh
получить путь или указатель на подсистему. Затем получите внешнюю навигацию URL к подсистеме и метке для URL.
subsys = gcb
subsys = 'crs_plant/Transmission'
[navURL1,navLabel1] = slreq.getExternalURL(subsys)
navURL1 = 'http://localhost:31415/matlab/feval/rmiobjnavigate?arguments=[%22crs_plant.slx%22,%22:414%22]'
navLabel1 = 'Transmission'
Посмотрите в shift_logic
маска путем нажатия на значок. Выберите first
Состояние Stateflow® и использование sfgco
получить указатель на состояние. Затем получите внешнюю навигацию URL к состоянию и метке для URL.
firstState = sfgco
firstState = Path: 'crs_plant/shift_logic/gear_state' Id: 462 Machine: [1×1 Stateflow.Machine] SSIdNumber: 6 Name: 'first' Description: '' LabelString: 'first↵' FontSize: 10 ArrowSize: 9.2240 TestPoint: 0 Chart: [1×1 Stateflow.Chart] BadIntersection: 0 Subviewer: [1×1 Stateflow.Chart] Document: '' Tag: [] RequirementInfo: '' ExecutionOrder: 0 ContentPreviewEnabled: 0 Position: [1×4 double] Decomposition: 'EXCLUSIVE_OR' Type: 'OR' IsSubchart: 0 IsGrouped: 0 Debug: [1×1 Stateflow.StateDebug] InlineOption: 'Auto' LoggingInfo: [1×1 Stateflow.SigLoggingInfo] HasOutputData: 0 OutputData: [] OutputMonitoringMode: 'SelfActivity' IsExplicitlyCommented: 0 IsImplicitlyCommented: 0 CommentText: ''
[navURL2,navLabel2] = slreq.getExternalURL(firstState)
navURL2 = 'http://localhost:31415/matlab/feval/rmiobjnavigate?arguments=[%22crs_plant.slx%22,%22:413:6%22]'
navLabel2 = 'first'
Очистка
Очистите загруженные наборы требования и наборы ссылки. Закройте все открытые модели.
slreq.clear;
bdclose('all');
Откройте Определение Требований для проекта Модели Круиз-контроля. Загрузите DriverSwRequest_Tests
тестовый файл.
slreqCCProjectStart;
tf = sltest.testmanager.load('DriverSwRequest_Tests.mldatx');
Получите тестовый набор в тестовом файле.
suite = getTestSuites(tf);
Получите тесты в тестовом наборе. Получите внешнюю навигацию URL для первого теста и получите метку для навигации URL.
cases = getTestCases(suite)
cases=1×8 object
1×8 TestCase array with properties:
Name
TestFile
TestPath
TestType
RunOnTarget
Parent
Requirements
Description
Enabled
ReasonForDisabling
Tags
case1 = cases(1)
case1 = TestCase with properties: Name: 'Enable button' TestFile: [1×1 sltest.testmanager.TestFile] TestPath: 'DriverSwRequest_Tests > Unit test for DriverSwRequest > Enable button' TestType: 'simulation' RunOnTarget: {[0]} Parent: [1×1 sltest.testmanager.TestSuite] Requirements: [1×1 struct] Description: '' Enabled: 1 Tags: [0×0 string]
[navURL,navLabel] = slreq.getExternalURL(case1)
navURL = 'http://localhost:31415/matlab/feval/rmitmnavigate?arguments=[%22DriverSwRequest_Tests.mldatx%22,%223b7651c7-826b-431c-928b-f1f80a674351%22]'
navLabel = 'Enable button'
Очистка
Очистите загруженные наборы требования и наборы ссылки. Очистите загруженные тестовые файлы.
slreq.clear; sltest.testmanager.clear;
myDesignItem
— Соедините источник или место назначения, требование, тест или элемент моделиslreq.link
источник или целевая структура | объект Simulink Requirements™ | путь или указатель на элемент модели | объект Simulink Test™Элемент в MATLAB или Simulink в виде:
slreq.Link
источник или целевая структура
Объект Simulink Requirements:
Путь или указатель на:
Система Simulink или блок
Stateflow® график, субдиаграмма, состояние или переход
Модель System Composer™ или компонент
Объект Simulink Test:
sltest.testmanager.TestFile
(Simulink Test)
sltest.testmanager.TestSuite
(Simulink Test)
sltest.testmanager.TestCase
(Simulink Test)
sltest.testmanager.TestIteration
(Simulink Test)
navURL
— Внешняя навигация URLВнешняя навигация URL, возвращенный как символьный массив.
navLabel
— Внешняя метка URL навигацииВнешняя метка URL навигации, возвращенная как символьный массив.
Можно скопировать внешнюю навигацию URL в буфер обмена для a:
Требование Simulink Requirements, требование, на которое ссылаются или выравнивание
Simulink, Stateflow или элемент модели System Composer
Запись в словаре данных Simulink
Щелкните правой кнопкой по одному из этих элементов в Редакторе Требований или Редакторе Simulink и выберите Copy URL to Clipboard или выберите Requirements> Copy URL to Clipboard.
slreq.getCurrentObject
| gcb
| gcbh
| sfgco
(Stateflow) | sltest.testmanager.getTestFiles
(Simulink Test)
У вас есть модифицированная версия этого примера. Вы хотите открыть этот пример со своими редактированиями?
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.