首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >用OpenTBS mergeField方法导出原始数据

用OpenTBS mergeField方法导出原始数据
EN

Stack Overflow用户
提问于 2016-06-01 09:12:30
回答 1查看 105关注 0票数 0

我使用OpenTBS将统计数据导出到.ods文件。我希望能够在生成的文档中生成图形。问题是,导出的每一段数据都使用生成的文档中的一个单引号(')进行转义。如果不移除它,我就无法生成图形。

是否有一种使用OpenTBS mergeField()方法指定原始数据的方法?

下面是代码的峰值:

代码语言:javascript
复制
$model = __DIR__ . "/../../Resources/public/models/Stats/Stats_mensuelles_template.ods";

$targetDir = __DIR__ . self::Z2_DOCGEN_TARGETDIR;

$this->setDocumentName($document, $this->type);

// (...) fetching the data (...)


// each getComptage* method return an integer value
$sm = array(
    "date" => $statistique->getDateFin()->format('M Y'),
    "pn" => $statsCurrentMonth->getComptagePaliersNormaux(),
    "pe" => $statsCurrentMonth->getComptagePaliersExceptionnels(),
    "cu" => $statsCurrentMonth->getComptagePaliersUrgents(),
    "pb" => $statsCurrentMonth->getComptagePatchesBIRDe(),
);

//Chargement de la page principale
$this->tbsManager->LoadTemplate($model, OPENTBS_ALREADY_UTF8);
$this->tbsManager->MergeField('sm', $sm);
$this->tbsManager->Show(OPENTBS_FILE, $targetDir . $document->getNom());

下面是.ods模板中的单元格的样子(sm.*,标签在单独的单元格中):

脑膜炎菌( sm.date Palier sm.pn Palier sm.pe Palier紧急sm.cu修补程序BIRDe sm.pb Autres paliers sm.div

最后,下面是一个生成单元的示例

普通的“30小杯例外”8瓶紧急的“15片BIRDe”41自毁者28

谢谢

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-06-01 14:30:07

我终于在OpenTBS文档--“用PHP创建OpenOffice和”一节上找到了答案

当填写时,单引号将添加到文档端。它通常将每一块数据看作一个字符串,而不管实际发送的是什么。

OpenTBS可以通过在模板中明确指定字段类型来处理这个问题。

因此,如果我们使用我的模板,下面是我们如何处理第一个数字字段:

代码语言:javascript
复制
[sm.pn;ope=tbs:num]

诸若此类

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/37564271

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档