Каков правильный синтаксис для условия JXLS if? - PullRequest
0 голосов
/ 29 марта 2019

Возникли проблемы с моим шаблоном JXLS ... интересно, могу ли я вообще это сделать или это просто неправильный синтаксис.Мне нужно создать условный оператор, который проверяет ячейку C2 и в зависимости от ответа добавляет еще одно динамическое поле.

В настоящее время у меня есть это в комментарии в строке D2.jx: if ("C2" = "Лицензия", "$ {docs.broker.licenseEffective}", "$ {docs.broker.eoEffectiveDate}" lastCell = "D2")

Я также пыталсяпоместив в ячейку D2 следующее значение: $ [IF (C2 = "License", "$ {docs.broker.licenseEffective}", "$ {docs.broker.eoEffectiveDate}")] Но Excel не удалось обработатьэто ... пробовал это несколькими разными способами.

Я думаю, что то, что я хочу сделать, возможно, просто не могу найти правильный способ написать это.

Если лучше сделать эту логику в моем контроллере, может кто-нибудь сказать мне, как получить определенную ячейку?Не уверен, как относиться к этому.

Если бы кто-нибудь мог помочь, это было бы очень признательно!

Контроллер:

    @RequestMapping(value="/report/expirationReport")
    public void expirationReport(HttpServletResponse response){
       List <ComplianceDocument> docs = documentRepository.findAll();
        List <SupportingDocument> supDocs = supportingDocRepository.findSupDocs2YrExpired();
        try {
            response.addHeader("Content-disposition", "attachment; filename=ExpirationReport.xlsx");
            response.setContentType("application/vnd.ms-excel");
            InputStream is= new ClassPathResource("static/reports/ExpirationReport.xlsx").getInputStream();
            Context context= new Context();
            context.putVar("docs", docs);
            context.putVar("supDocs", supDocs);

            JxlsHelper.getInstance().processTemplate(is,response.getOutputStream(),context);
            response.flushBuffer();
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
...