ag-grid: общий итог в нижней части сводки с сгруппированными столбцами - PullRequest
0 голосов
/ 14 апреля 2020

Я довольно плохо знаком с angular и сценариями, связанными с пользовательским интерфейсом. У меня есть версия ag-grid- angular 12.0.0 (старая, а не текущая), и я пытаюсь добиться чего-то вроде ниже.

enter image description here

В основном, мои 2 столбца (или больше) набора данных сгруппированы в сводном режиме, то есть дата и книга. Остальные столбцы значений суммируются.

До сих пор (ниже фрагмента), которого я могу достичь до здесь:

enter image description here

--- мой тип сценария --- Вставка основного потока или функции.

ngOnInit() {
    this.pivotMode = true;
    .
    .
    this.initializeColumns();
}

initializeColumns(): void {
    this.gridOptions.columnDefs = [
        { headerName: "Date", field: "date",  width: 120px, enableRowGroup: true, enablePivot: true, rowGroupIndex: 1},
        { headerName: "Book", field: "book", width: 120px, enableRowGroup: true, enablePivot: true, rowGroupIndex: 2 },
        { headerName: 'Field 1', field: 'field1', width: 120px, enableValue: true, aggFunc: 'sum', cellClass: 'text-right', filter: 'number' },
        .
        .
        .
}

getData(selection: any): void {
    this.noResults = false;
    this.myData = null;
    .
    .
    // httpservice call to get myData
    this.gridOptions.api.setRowData(this.myData);
    this.createTotalRow(this.myData);
}

createTotalRow(rows: object[]): void {
    // This is working fine and giving the total for each column properly.
    this.myDataTotals = this.methodToCalculate(rows);
    let totals = [];
    // Here is where I am stuck
    totals.push(
        date: 'Grand Total',
        book: 'Grand Total',
        field1: this.myDataTotals.field1 // Basically this will put the total calculated under this field.
        .
        .

    );
    this.gridOptions.api.setPinnedBottomRowData(totals);
}

Таким образом, используя вышеизложенное, я получаю правильные данные (2-й снимок), но не могу сначала напечатать слово "Общий итог" колонна внизу. Если я разверну данные, я увижу «Итого» под столбцами «Дата» и «Книга». Однако он мне тоже нужен на уровне разворота.

Я не могу присвоить ему значения в массиве mu "totals".

Я попытался проверить colId, который является ag-Grid-AutoColumn (может быть внутренним автоматически назначенным значением). Я устал выдавать то же самое в массиве «итоги», но он не работает.

Обратите внимание, я не могу обновить версию ag-grid (она не персональная, но на работе).

Так что, в основном, вы хотите узнать, как я могу использовать первый столбец, который является сгруппированным столбцами? Могу ли я определить массив (итоги) на основе индекса, а не ключа / значения? (Я действительно новичок в машинописном или нет технологии пользовательского интерфейса, так что понятия не имею), если это работает в моем случае?

...