Smart View에서 실행되는 계산 스크립트의 런타임 대체 변수

Smart View에서 실행하도록 설계한 Essbase 계산 스크립트에서 런타임 대체 변수(RTSV)를 사용할 수 있습니다. RTSV를 사용하면 활성 그리드 컨텍스트(POV)에 따라 계산의 중점 영역이 동적일 수 있습니다.

Smart View에서 런타임 대체 변수를 포함하는 계산 스크립트를 사용하려면 SET RUNTIMESUBVARS 계산 명령의 런타임 대체 변수 선언에 <RTSV_HINT> 태그가 포함되어야 합니다. 또한 <RTSV_HINT> 태그에는 <svLaunch> 태그가 포함되어야 합니다. 일반적으로 <svLaunch> 태그에는 Smart View에서 계산 스크립트를 실행하기 위한 메타데이터를 제공하는 추가 XML 태그가 포함됩니다.

다음 구문을 사용하여 Smart View에서 사용할 런타임 대체 변수 정의를 정의합니다.

SET RUNTIMESUBVARS
{
   rtsvName = POV
   <RTSV_HINT>
      <svLaunch>
         <description>rtsv_description</description>
         <type>member | string | number</type>
         <dimension>dimName</dimension>
         <choice>single | multiple</choice>
         <allowMissing>true | false</allowMissing>
      </svLaunch>
   </RTSV_HINT>
};

위 정의에서 런타임 대체 변수 이름은 rtsvName이지만 임의의 이름을 사용할 수 있습니다. 스프레드시트 그리드에 있는 현재 데이터 조각만 계산되어야 함을 나타내려면 변수의 값을 POV로 설정해야 합니다.

또한 <RTSV_HINT> 요소는 변수 선언의 일부여야 합니다. 해당 내용은 다음과 같습니다.

  • <description>: Smart View 사용자가 멤버 선택을 이해하는 데 도움이 되는 기술자
  • <type>: 변수가 멤버, 문자열 또는 숫자에 대한 것인지 여부를 지정합니다.
  • <allowMissing>: 누락된 데이터가 포함되어야 하는 경우 true, 그렇지 않은 경우 false
  • <dimension>: 이 변수가 정보를 가져오는 차원의 이름입니다.
  • <choice>: 런타임 대체 변수에 하나의 선택만 전달할 수 있는 경우 single, 그렇지 않은 경우 multiple입니다.

위에 나열된 XML 태그에 대한 전체 설명은 XML 태그 참조 - Smart View에 대한 런타임 대체 변수가 있는 계산 스크립트를 참조하십시오.

Smart View에서 계산 스크립트 대화상자의 런타임 대체 변수를 포함하는 계산 스크립트를 선택하면 런타임 프롬프트 영역이 SET RUNTIMESUBVARS 계산 명령에서 런타임 대체 변수가 정의되는 방식에 따라 필드로 채워집니다. 정의된 대로 계산 스크립트를 실행하거나 런타임 프롬프트를 사용하여 데이터 유형에 따라 다른 변수 정보를 입력할 수 있습니다.

주:

Smart View에서 SET RUNTIMESUBVARS 명령에 <RTSV_HINT><svLaunch>...</svLaunch></RTSV_HINT> 태그가 포함되지 않은 경우 런타임 대체 변수가 포함된 계산 스크립트를 실행할 수 없습니다.

예: POV로 설정된 런타임 대체 변수

Essbase 계산 스크립트의 런타임 대체 변수를 Smart View POV(활성 그리드 컨텍스트)로 설정하려면 런타임 대체 변수의 값을 POV로 설정하고 데이터 유형을 member로 설정해야 합니다(이 예 참조).

기본적으로 Smart View 사용자가 런타임 프롬프트에서 다른 멤버를 지정하지 않는 한 계산 스크립트는 런타임 시 POV의 활성 멤버를 사용합니다.

이 예에서는 데이터베이스에 계정, 엔티티, 기간 및 시나리오 차원이 있다고 가정합니다. 세 가지 런타임 대체 변수가 정의되고(rtsvEntity, rtsvScenario 및 rtsvPeriod라고 함) 각 변수에 대한 값이 POV로 설정됩니다. 런타임 대체 변수는 FIX 문에서 &rtsvEntity, &rtsvScenario 및 &rtsvPeriod로 참조됩니다.

SET RUNTIMESUBVARS {
   rtsvEntity = POV
      <RTSV_HINT>
         <svLaunch>
            <description>Entities to Copy</description>
            <type>member</type>
            <dimension>Entity</dimension>
            <allowMissing>false</allowMissing>
            <choice>multiple</choice>
         </svLaunch>
      </RTSV_HINT>;
   rtsvScenario = POV
      <RTSV_HINT>
         <svLaunch>
            <description>Scenarios to Copy</description>
            <type>member</type> 
            <allowMissing>false</allowMissing>
            <dimension>Scenario</dimension>
            <choice>multiple</choice>
         </svLaunch>
      </RTSV_HINT>;
   rtsvPeriod   = POV
      <RTSV_HINT>
         <svLaunch>
            <description>Period to Copy</description>
            <type>member</type>
            <allowMissing>false</allowMissing>
            <dimension>Period</dimension>
            <choice>single</choice>
         </svLaunch>
      </RTSV_HINT>;
}
FIX(&rtsvEntity, &rtsvScenario, &rtsvPeriod)
"Opening Balance" (
@PREV("Closing Balance");
)

변수 선언 아래에는 계산의 중점 영역을 선택하고 기간의 기초 잔액을 설정하는 명령을 실행하는 FIX 블록이 있습니다. 런타임 대체 변수는 &varname 구문을 사용하여 FIX 블록으로 전달됩니다. 따라서 계산의 중점 영역은 Smart View의 POV에 따라 동적입니다.

주:

Essbase 작업 인터페이스, MaxL 계산 실행 명령문 또는 API(예: REST API 작업 실행 엔드포인트)를 사용하는 경우 POV로 설정된 런타임 대체 변수가 포함된 계산 스크립트를 실행할 수 없습니다. 이는 현재 Smart View 그리드 컨텍스트에 종속되므로 Smart View에서 실행해야 합니다.

XML 태그 참조 - Smart View에 대한 런타임 대체 변수가 있는 계산 스크립트

Smart View POV/그리드 컨텍스트를 기반으로 실행되도록 설계된 런타임 대체 변수로 Essbase 계산 스크립트를 설계하는 경우 여기에 설명된 일부 XML 태그를 사용해야 합니다.

  • <RTSV_HINT>

    Smart View에서 사용할 런타임 대체 변수를 정의하는 데 필요한 태그입니다.

  • <svLaunch>

    런타임 대체 변수가 Smart View에서 사용하도록 정의되었음을 나타내는 필수 태그입니다.

    이 태그는 <description>, <type>, <dimension>, <choice><allowMissing> 태그에 대한 상위 태그입니다.

  • <description>rtsv_description</description>

    rtsv_description는 런타임 대체 변수를 설명하는 문자열입니다. 문자열은 계산에 사용되지 않습니다.

  • <type>value</type>

    유효한 데이터 유형 값:

    • 멤버 - 런타임 대체 변수 값은 멤버(단일 멤버 이름 또는 쉼표로 구분된 멤버 이름 목록) 또는 POV로 정의되어야 합니다.

      주:

      멤버 이름은 따옴표로 묶어야 합니다(예: "New York"(단일 멤버) 또는 "New York","Florida"(콤마로 구분된 멤버 이름 목록).

      런타임 대체 변수 값이 POV로 설정된 경우 <type> 값은 멤버여야 합니다. <choice> 태그도 참조하십시오.

      Essbase 작업 또는 MaxL을 사용하면 POV로 설정된 런타임 대체 변수가 포함된 계산 스크립트를 실행할 수 없습니다. POV는 슬라이스를 결정하기 위해 현재 그리드 컨텍스트에 종속되므로 이러한 계산 스크립트는 Smart View에서 실행됩니다.

    • string - 런타임 대체 변수 값을 단일 멤버 이름, 쉼표로 구분된 멤버 이름 목록(예: "뉴욕","플로리다") 또는 날짜로 정의할 수 있습니다.

      문자열 데이터 유형을 사용하는 경우 멤버 선택 대화상자를 사용할 수 없으므로 Smart View 사용자는 올바른 구문을 사용해야 합니다(멤버 이름을 따옴표로 묶고 여러 멤버 이름을 콤마로 구분하거나 날짜에 대해 날짜 문자열의 형식을 계산 스크립트(mm-dd-yyyy 또는 dd-mm-yyyy)에 정의된 형식과 일치하도록 구분합니다.

    • number - 런타임 대체 변수 값을 숫자로 정의해야 합니다.

  • <dimension>dimName</dimension>

    차원의 이름입니다.

    주:

    이 XML 태그는 <type> 값이 멤버인 경우에만 지원됩니다.

  • <choice>value</choice>

    유효한 선택 값은 다음과 같습니다.

    • single:

      • 그리드 또는 POV에 단일 멤버가 있는 경우 해당 멤버가 사용됩니다.

      • POV에 차원이 있는 경우 활성 멤버가 사용됩니다.

      • 차원이 POV에 있고 멤버가 여러 개인 경우 오류가 발생합니다.

    • multiple - 그리드 또는 POV의 모든 차원 멤버가 사용됩니다.

    주:

    이 XML 태그는 <type> 값이 멤버인 경우에만 지원됩니다.

  • <allowMissing>boolean</allowMissing>

    데이터베이스에 데이터가 없는 데이터 셀을 허용할지 아니면 숨길지 지정합니다.

    적합한 값: true 및 false.