Еще способ узнать, где и что взять - бизнес анализ.
Пример - нужно узнать как из супермага вытащить товарооборот, маржу, нач и кон. остаток.
Создаем задачу - реализация в закупочных ценах за период, добавляем поля - МХ, продажа, доход, остаток нач, остаток конечный.
Затем - меняем какую нибудь формулу, либо добавляем заведомо неправильную, чтобы получить ошибку.
И смотрим файл c:\SM2000\Data\SmAnalyticsErrorLog.txt
там находим результирующий запрос. Исправляем ошибку, получаем:
SELECT (LOC.Name) as Field6,round((SUM((nvl(D.SaleSum,0)-nvl(D.RetSum,0)))),4) as Field1,round((SUM(((nvl(D.SaleSum,0)-nvl(D.RetSum,0))-(nvl(D.SaleCP,0)-nvl(D.RetCP,0))))),4) as Field2,round((SUM(nvl(REMF.CP,0))),4) as Field3,round((SUM(nvl(REML.CP,0))),4) as Field4
FROM SMStoreLocations LOC,(SELECT StoreLoc, Article, sum(RetCP) RetCP, sum(RetSum) RetSum, sum(SaleCP) SaleCP, sum(SaleSum) SaleSum FROM (SELECT StoreLoc, Article,to_date('01012000','DDMMYYYY') RepDate,0 MeasNu, 0 RetCP, 0 RetSum, 0 SaleCP, 0 SaleSum FROM supermag.SVLocCard LC UNION ALL SELECT StoreLoc, Article,SaleDate RepDate,0 MeasNu, RetCP, RetSum, SaleCP, SaleSum FROM supermag.SVARealCostPriceOpenedPeriod R WHERE R.SaleDate between to_date('01.02.2015','DD.MM.YYYY') and to_date('28.02.2015','DD.MM.YYYY')) GROUP BY StoreLoc, Article) D,SVARemainsCP REMF,SVARemainsCP REML
WHERE D.Article=REMF.Article(+) and D.StoreLoc=REMF.StoreLoc(+) and to_date('31.01.2015','DD.MM.YYYY')=REMF.RemDate(+) and D.Article=REML.Article(+) and D.StoreLoc=REML.StoreLoc(+) and to_date('28.02.2015','DD.MM.YYYY')=REML.RemDate(+) and D.StoreLoc=LOC.ID
GROUP BY (LOC.Name);
Вот его и используем за основу, по крайней мере, чтобы узнать что и откуда берется.