주요 콘텐츠

이 페이지는 기계 번역을 사용하여 번역되었습니다. 최신 내용을 영문으로 보려면 여기를 클릭하십시오.

프로그래밍 방식으로 안전성 분석 관리자 스프레드시트 만들기 및 구성

안전성 분석 관리자 스프레드시트를 프로그래밍 방식으로 만들고 업데이트할 수 있습니다. 안전성 분석 관리자 스프레드시트를 만드는 방법에 대한 자세한 내용은 안전성 분석 관리자에서 스프레드시트 만들기 항목을 참조하십시오. 이 예제에서는 새 스프레드시트를 만들고, 행과 열을 추가하고, 열 유형을 정의하고, 열 수식을 정의하고, 셀에 내용을 추가합니다.

새 스프레드시트 만들기 및 보기

구성할 새 빈 스프레드시트를 만들려면 safetyAnalysisMgr.newSpreadsheet 함수를 사용하고 Spreadsheet 객체를 가져옵니다.

mySpreadsheet = safetyAnalysisMgr.newSpreadsheet;

안전성 분석 관리자를 열려면 safetyAnalysisMgr.openManager 함수를 사용합니다.

safetyAnalysisMgr.openManager
새로운 스프레드시트에는 행이 하나, 열이 하나 있습니다.

A new spreadsheet in the Safety Analysis Manager. The spreadsheet has one row and one column.

행과 열 추가

addRowaddColumn 함수를 사용하여 행과 열을 추가합니다. 이 예에서는 3개의 행과 7개의 열을 추가합니다. 처음 여섯 개의 열을 텍스트 상자 열로 만들고 마지막 열을 도출되는 열로 만듭니다.

addRow(mySpreadsheet,Count=3)
addColumn(mySpreadsheet,Count=6)
addColumn(mySpreadsheet,Type="derived")

열 유형을 업데이트하려면 그래픽 인터페이스를 사용해야 합니다. 열 유형 지정 항목을 참조하십시오.

이제 스프레드시트에는 4개의 행과 8개의 열이 있습니다. 열과 행의 개수를 확인하려면 Spreadsheet 객체의 ColumnsRows 속성에 액세스하면 됩니다. 행이나 열을 너무 많이 추가한 경우 deleteRowdeleteColumn 함수를 사용합니다.

현재 열은 디폴트 레이블을 사용하고 있습니다. setColumnLabel 함수를 사용하여 열 레이블을 설정합니다.

myLabels = ["Failure Mode", ...
"Effect","Severity","Potential Failure Cause", ...
"Failure Probability","Detection Method", ...
"Detection Rating","Info Check"]; 

for n = 1:length(myLabels)
    setColumnLabel(mySpreadsheet,n,myLabels(n))
end

도출되는 열의 수식 정의

Info Check 열에는 수식이 없습니다. 수식을 정의하려면 setColumnFormula 함수를 사용합니다. 이 예제에서는 행의 셀 중 하나라도 비어 있으면 not enough data 메시지를 출력하고, 행의 모든 셀에 데이터가 있으면 data filled를 출력하도록 수식을 설정합니다. 수식을 정의하기 위해 코드를 문자열로 작성합니다.

script = ...
"labels = string(keys(sfa_columnValue));" + newline + ...
"for n = 1:length(labels)" + newline + ...
"    if isempty(sfa_columnValue(labels(n)))" + newline + ...
"        sfa_derivedValue = ""not enough data"";" + newline + ...
"    else" + newline + ...
"        sfa_derivedValue = ""data filled"";" + newline + ...
"    end" + newline + ...
"end";

setColumnFormula(mySpreadsheet,"Info Check",script)

셀에 내용 추가

셀에 내용을 추가하기 위해 getCell 함수를 사용하여 스프레드시트에서 SpreadsheetCell 객체를 가져옵니다. 이 예제에서는 Effect 열의 스프레드시트 셀에 값을 추가합니다. 각 SpreadsheetCell 객체의 Value 속성을 수정하여 각 셀 값을 문자형 벡터 또는 string형 스칼라로 지정합니다.

values = ["2", "5", "6", "9"];

for n = 1:length(values)
    cell = getCell(mySpreadsheet,n,"Effect");
    cell.Value = values(n);
end

string형 배열을 사용하여 각 열에 대해 이 방법을 반복할 수 있습니다.

스프레드시트 저장

스프레드시트를 작업 디렉터리에 newSpreadsheet라는 이름의 파일로 저장합니다.

save(mySpreadsheet,"newSpreadsheet.mldatx")

링크 생성하기

Requirements Toolbox™가 있으면 스프레드시트를 저장한 후 다른 모델 아티팩트에서 스프레드시트 셀과 행에 대한 링크를 만들 수 있습니다. 자세한 내용은 Link Safety Analysis Manager Spreadsheet Cells and Rows to Linkable Items 항목을 참조하십시오.

참고 항목

도움말 항목