Передать поля вложенного отчета в другой вложенный отчет?

У меня довольно сложный отчет. Мне удалось создать его до 1-го подотчета. Теперь мне нужно обобщить поля первого подотчета во втором подотчете «горизонтально».

1) Как передать поля из подотчета 1 в подотчет 2 (название и итоги) и перечислить их по горизонтали/каждый год?

2) Как сделать так, чтобы каждая сводка отображалась в виде (Client1, Year1...YearN). Если я вставляю раздел для второго подотчета, он показывает второй подотчет сразу после (Клиент1, Год1). Я установил страницу после в разделе «Эксперт», но это не так, как я хотел :|

Я хочу показать этот раздел после (client1,Year1-------YearN)

Отчет построен таким образом, как

Main Report
   ---- 
       Sub Report 1
          Group (Client 1 Year 1)
          --------------------------------
          Name  Amount   TotalAmount
          --------------------------------
          John  1,000     300,000,000
          End of Page 
          ----------------------------------
          (Client 1 Year 2)
          --------------------------------
          Name  Amount   TotalAmount
          --------------------------------
          John  5,000     400,000,000 
          End of Page 
          ----------------------------------

          Group (Client 2 Year 1)
          --------------------------------
          Name  Amount   TotalAmount
          --------------------------------
          Stevens  1,000     10,000,000
          End of Page 
          ----------------------------------
          (Client 2 Year 2)
          --------------------------------
          Name  Amount   TotalAmount
          --------------------------------
          Stevens  2,000     40,000 
          End of Page 
         ----------------------------------
       End Sub Report 1
  -----
       Sub Report 2
  ----------------------------------------------------------------
    Name      TotalAmount        TotalAmount .......   TotalAmount
  ----------------------------------------------------------------- 
    John     Year1(TotalAmount) Year2(TotalAmount).... YearnN(TotalAmount)
    Stevens  Year1(TotalAmount) Year2(TotalAmount).... YearnN(TotalAmount) 

 End Sub Report 2


person Zo Has    schedule 26.07.2010    source источник


Ответы (2)


Если возможно, я рекомендую переместить данные подотчета из подотчета в основной отчет и поместить кросс-таблицу в нижний колонтитул отчета.

person Community    schedule 26.07.2010
comment
Я сделал именно так, как вы сказали, теперь возникла проблема, что некоторые поля формулы из подотчета нужны в кросс-таблице. Как их достать? Я не могу переместить свой 1-й подотчет в основной отчет, так как это основной макет, а кросс-таблица будет работать с основным запросом в основном отчете. - person Zo Has; 26.07.2010
comment
Выберите поля формул в подотчете, щелкнув их, Ctrl-C, чтобы скопировать их, затем выберите основной отчет и вставьте их — поля формул должны появиться в обозревателе полей, а также в основной части отчета для основного отчета. (Удалите их из основной части, если вы вставили их туда, где они вам не нужны.) Вам может потребоваться отредактировать формулы в основном отчете, если вы изменили имена полей при перемещении данных подотчета в основной отчет. - person ; 26.07.2010
comment
Спасибо, Марк. Я попробую это и дам вам знать через некоторое время. - person Zo Has; 28.07.2010
comment
Привет, Марк, я попробовал то, что ты сказал. Теперь он выдает неизвестную ошибку поля (поскольку в поле формулы «c = a + b» было возвращено «a + b» из запроса внутри подотчета, который он не может найти в запросе основного отчета. Любая подсказка? - person Zo Has; 28.07.2010
comment
@Popo, мой первоначальный ответ состоял в том, чтобы переместить данные подотчета из подотчета в основной отчет (если возможно). Если a и b находятся в запросе подотчета, ответ состоит в том, чтобы переместить их в запрос основного отчета; если a и b уже присутствуют в основном запросе отчета, но теперь называются aa и bb, ответом будет либо изменить формулу на c=aa + bb, либо переименовать aa и bb обратно в a и b (в зависимости от того, что Полегче). - person ; 28.07.2010

Как передать поля из подотчета 1 в подотчет 2?

Используйте глобальную переменную. Определите переменную в основном отчете как глобальную и обновите в подотчете1 и получите доступ к ним в подотчете2.

person Kangkan    schedule 26.07.2010
comment
Как насчет использования общего var ? В чем разница между global и sharedvar ? - person Zo Has; 26.07.2010
comment
Привет, я пытался использовать глобальную переменную, но так как мой 2-й подотчет находится внутри нижнего колонтитула основного отчета (так как я хочу, чтобы он отображался после 1-го подотчета), но глобальная числовая переменная возвращает только 1 значение. Возможно ли это массивом? Например, я храню (ClientName, TotalAmt, Year) в массиве и каким-то образом распечатываю его во втором подотчете? - person Zo Has; 26.07.2010
comment
Где (в каком разделе вы объявили переменные? Если вы используете в подотчете внутри нижнего колонтитула основного отчета, объявите переменные в разделе заголовка отчета. - person Kangkan; 26.07.2010
comment
Эй, это не работает, я поместил поле формулы в заголовок подотчета. Он просто показывает только 1 запись вместо списка записей из 1-го подотчета. В моем первом подчиненном отчете я определил поле формулы, например, покапечатаю записи; общий номерVar netprem:= {@Gross Premium}-(({Command.GENCOMMPERCENT}/100)* {@Gross Premium}) Во втором подотчете я получаю доступ к нему по общему номеруvar netprem:=netprem; Отображается только 1 числовое значение. - person Zo Has; 26.07.2010
comment
Вы должны объявлять переменные в заголовке основного отчета, а не в заголовке подотчета. - person Kangkan; 27.07.2010