我可以使用 TinyButStrong 字段来控制我的 Word 中的段落格式 Table
Can I use TinyButStrong Fields to control paragraph formatting in my Word Table
我有一个词 table 是通过 OpenTBS 模板从 MYSQL 查询和子查询中填充的。主要查询行为有一个跨行合并的单元格;使用 ope=mergecell
命令合并子查询的第一列;其余列是单个单元格。
有什么方法可以使用 openTBS 字段在子查询的所有行(最后一行除外)上设置段落 'keep with next',以便每个子记录的所有行都保留在同一页上?
模板的摘录如下:
所以我在合并后基本上要做的是设置 'Keep With Next' 的绿色单元格和未设置 属性 的红色单元格。
这是一个解决方案
目前 TBS 没有特定的功能来知道记录何时是最后一次或不是最后一次(TBS 版本 3.11.0)。
(有headergrp and footergrp的特性,但不作用于记录,而是作用于记录周围)
因此,第一步是在数据中获得一个额外的列,说明它是否是最后一条记录。假设该列名为 is_last。
这样的列在理论上可以使用 MySQL 使用 window 函数来完成。像 :
(id = (LAST_VALUE(id) OVER (...)) AS is_last
如果您没有成功让此列直接想到 MySQL 查询,那么您可以将所有数据加载到 PHP 数组中。由于您有一个主块和一个子块,那么您的数据应该被构造为一个主块的记录集,并且每个记录都应该有一个存储在 sample_lst[=40 中的子记录集=] 列(或任何名称)。
那么你的模板应该参数 sub1
而不是 p1
以便与 automatic subblocks 一起工作。
现在您的数据在 PHP 变量中,很容易访问数据并添加 is_last 列。
既然你有 is_last 列,接下来的步骤很简单:
- 在您的模板中,为子块制作 2 个条件部分。在
when [sub.is_last]=0
部分,在 when [sub.is_last]=1
部分。知道您似乎已经为该子块使用了条件部分,您必须安排条件以便将两个条件组合起来以制作 AND。 See FAQ.
- 在
is_last=0
部分中,关闭 与下一个 Ms Word 属性 保持一致。
- 在
is_last=1
的部分中,打开 与下一个保持一致 Ms Word 属性。
我有一个词 table 是通过 OpenTBS 模板从 MYSQL 查询和子查询中填充的。主要查询行为有一个跨行合并的单元格;使用 ope=mergecell
命令合并子查询的第一列;其余列是单个单元格。
有什么方法可以使用 openTBS 字段在子查询的所有行(最后一行除外)上设置段落 'keep with next',以便每个子记录的所有行都保留在同一页上?
模板的摘录如下:
所以我在合并后基本上要做的是设置 'Keep With Next' 的绿色单元格和未设置 属性 的红色单元格。
这是一个解决方案
目前 TBS 没有特定的功能来知道记录何时是最后一次或不是最后一次(TBS 版本 3.11.0)。 (有headergrp and footergrp的特性,但不作用于记录,而是作用于记录周围)
因此,第一步是在数据中获得一个额外的列,说明它是否是最后一条记录。假设该列名为 is_last。 这样的列在理论上可以使用 MySQL 使用 window 函数来完成。像 :
(id = (LAST_VALUE(id) OVER (...)) AS is_last
如果您没有成功让此列直接想到 MySQL 查询,那么您可以将所有数据加载到 PHP 数组中。由于您有一个主块和一个子块,那么您的数据应该被构造为一个主块的记录集,并且每个记录都应该有一个存储在 sample_lst[=40 中的子记录集=] 列(或任何名称)。
那么你的模板应该参数 sub1
而不是 p1
以便与 automatic subblocks 一起工作。
现在您的数据在 PHP 变量中,很容易访问数据并添加 is_last 列。
既然你有 is_last 列,接下来的步骤很简单:
- 在您的模板中,为子块制作 2 个条件部分。在
when [sub.is_last]=0
部分,在when [sub.is_last]=1
部分。知道您似乎已经为该子块使用了条件部分,您必须安排条件以便将两个条件组合起来以制作 AND。 See FAQ. - 在
is_last=0
部分中,关闭 与下一个 Ms Word 属性 保持一致。 - 在
is_last=1
的部分中,打开 与下一个保持一致 Ms Word 属性。