各四半期の売上データは、データソースの行に含まれています。四半期ごとのレコードのデータを1行に表示
アカウント1の売上データの4/4は、アカウント名、四半期番号、購入アイテム数を含む4つの別々のレコードになります。
レポートには、各詳細行に、表示される必要があります。アカウント名、Q1回数、Q2の数、Q3数、Q4数、合計年間数を。
私はクリスタルを初めて使っていますが、これは簡単であるようです。どうすればいい?
各四半期の売上データは、データソースの行に含まれています。四半期ごとのレコードのデータを1行に表示
アカウント1の売上データの4/4は、アカウント名、四半期番号、購入アイテム数を含む4つの別々のレコードになります。
レポートには、各詳細行に、表示される必要があります。アカウント名、Q1回数、Q2の数、Q3数、Q4数、合計年間数を。
私はクリスタルを初めて使っていますが、これは簡単であるようです。どうすればいい?
多少複雑なSQLを使用して結果リストを作成し、Crystalレポートに表示するだけですが、これをCrystal内で完全に実行したい場合は、http://aspalliance.com/1041_Creating_a_Crosstab_Report_in_Visual_Studio_2005_Using_Crystal_Reports.allをご覧ください。ここで
は、データ・ソースがそれに販売日を持っている(と私はそれがだろうと仮定した場合)、あなたは@SalesQuarter
と呼ばれる式を作成することができます
select
accountName,
(select sum(itemCount) from myTable where quarterName = 'q1') as q1Count,
(select sum(itemCount) from myTable where quarterName = 'q2') as q2Count,
(select sum(itemCount) from myTable where quarterName = 'q3') as q3Count,
(select sum(itemCount) from myTable where quarterName = 'q4') as q4Count,
(select sum(itemCount) from myTable) as yearCount
from myTable
group by accountName ;
...必要とされるであろうSQLで刺します。
if month({TableName.SalesQuarter}) in [1,2,3] then '1' else
if month({TableName.SalesQuarter}) in [4,5,6] then '2' else
if month({TableName.SalesQuarter}) in [7,8,9] then '3'
else '4'
次に、あなたのレポートにクロスタブを追加し、あなたのクロスタブの列ヘッダとして新しい@SalesQuarter
フィールドを使用することができます。
これは、あなたの売上がすべて同じ年内であることを前提としています。
グループフッターでは{}のアカウント にグループを追加するには、各四半期の累計を追加します。
For each quarter, create a running total with following settings:
Running Total Name: create a unique name for each formula, for example Q1,Q2,Q3,Q4
Field to summarize: {items purchased}
Type of summary: sum
Evaluate: Use a formula - {quarter number}= --should be 1,2,3, or 4, depending on which quarter you are summing
Reset: On Change of Group {account}
キースは、あなたのデータソースはすでに四半期ごとに開発および要約されていますか?そうであれば、残っているのはクリスタルの部分だけです。あなたは何をしようとしているのか、より具体的な質問をしてくれますか? – PowerUser