0

Vfページに現在の四半期と前の11四半期を表示するオプションを含む選択ボックスを作成する必要があります。

値は新しい四半期で変更されるため、ハードコーディングしたくありません。これは常にデフォルトで現在の四半期になります。

任意のポインタが役立ちます

ありがとう

4

1 に答える 1

2

以下を表示するには、selectOptionsとともにapex:selectListを使用します。

<apex:selectList value="{!quarter}" multiselect="true">
    <apex:selectOptions value="{!listOfQuarters}"/>
</apex:selectList><p/>

コントローラは次のようになります。

public List<SelectOption> getListOfQuarters() {
    List<SelectOption> options = new List<SelectOption>();

    // non-dynamic code as an example

    options.add(new SelectOption('Q2 2012','Q2 2012'));
    options.add(new SelectOption('Q1 2012','Q1 2012'));
    options.add(new SelectOption('Q4 2011','Q4 2011'));

    return options;
}

オプション値を自動的に生成するには、Datetimeメソッドを使用します。now ()を使用して現在の日付を取得し、month()year()を使用して月と年を抽出し、Mapを使用して四半期を月ごとに検索するか、除算します。月の数を3増やし、ceil()を使用して現在の四半期を取得します。

前の11四半期を作成するには、ループ内で一度に3か月ずつ、負の値でaddMonths()を使用します。

myDatetime.addMonths(-3)

暦四半期を使用していない場合は、SOQLを使用してPeriodオブジェクトを照会できる場合があります。あなたは間違いなくあなたの会計年度の開始月を決定することができます:

SELECT FiscalYearStartMonth FROM Organization
于 2012-06-01T13:45:26.533 に答える