Результат хороший (спасибо Skrol29!), но в блоках я не могу генерировать распознаваемые числа как таковой. В Excel выдается предупреждение «Число хранится в виде текста».
Если я добавляю ;ope:tbs_num в ячейку (пример: [a.quantity;ope =tbs:num], операция MergeBlock создаст пустую ячейку.
Однако она работает при одиночных слияниях вне блоков.
Извлечение кода выглядит так.
Код: Выделить всё
// Load line data in a specific table
foreach ($this->xml->lines as $lines) {
foreach ($lines->attributes() as $x => $y) {
$lineattrib[$x] = $y;
}
$this->showmsg ('
Lines...
');
$linekey = $lineattrib['linekey'];
$this->showmsg ("
merging block -$linekey-
");
$rows = array();
foreach ($lines->children() as $child) {
$row = array();
foreach ($child->attributes() as $a => $b) {
$row[$a] = '';
if (is_object($b)) {
$value = $b->__toString();
$row[$a] = $value;
}
}
$rows[] = $row;
}
// utf8_encode because 'a' is not utf8_encode('a'), inside xlsx file
$TBS->MergeBlock(utf8_encode($linekey), $rows);
}
Код: Выделить всё
htmlEcho
Код: Выделить всё
htmlEcho var: row
Array
(
[rowid] => 1
[itemid] => KJ3S2248K
[itemname] => Name of this item
[quantity] => 2,5
[unit] => PCE
[price] => 100,00
)
htmlEcho var: row
Array
(
[rowid] => 2
[itemid] => KJ3S2248J
[itemname] => Nom de cet article
[quantity] => 3.5
[unit] => PCE
[price] => 80,00
)
ПРИМЕЧАНИЕ: tbs_class.php имеет версию 3.15.0, а tbs_plugin_opentbs — версию 3.15.0, а tbs_plugin_opentbs — версию в версии 1.11.1
EDIT: tbs_plugin_opentbs обновлен до версии 1.12.1, без изменений
Подробнее здесь: https://stackoverflow.com/questions/783 ... o-not-work