
Запустив Invantive Control для Excel, я хочу заполнить блок данными из Exact Online. Однако один из столбцов должен быть умножением ставки, указанной в таблице настроек Excel, на сумму в другом столбце.
Когда оба значения доступны в SQL, я могу просто сделать умножение. Аналогично, вручную я могу (после синхронизации) добавить столбец справа от блока с формулой Excel.
Но, похоже, мне не удаётся автоматически включить формулу Excel в ячейки блока.
Как мне это сделать?
решение1
В запрос, связанный с блоком Invantive Control, можно включать формулы в трех вариантах:
select pjt.code
, pjt.description
, pjt.budgetedamount
, '=2*3' formula1
, '=b4*2' formula2
, '=$C{D,.,.,.-1,.}*2' formula3
from exactonlinerest..projects pjt
order
by pjt.code
Столбец formula1
содержит статическую формулу Excel, которая оценивается как 6. Формула Excel должна соответствовать синтаксису формулы Excel вАнглийский, поэтому используйте sum()
вместо som()
.
Столбец formula2
использует значение, взятое из выражения Excel за пределами блока, в данном случае из ячейки B4.
В столбце formula3
используется самый продвинутый тип формулы с так называемымВыражения ссылок на ячейки. Часто используемые выражения ссылок на ячейки доступны в меню строительных блоков, как показано на рисунке (на голландском языке):
Однако, когда вы синхронизируете модель таким образом, formula3
возникнет ошибка, так как вам нужно явно указать, что значение может содержать выражение столбца. По этой причине перейдите на вкладку «Поля» блока и отметьте флажки в столбцах «Формула» и «Заменить выражения столбца»:
Результат синхронизации будет выглядеть примерно так, как показано на рисунке: