+ function prependRowsData($format, $campos = array()) {
+ if (!is_array($campos)) {
+ $campos = array($campos);
+ }
+ $this->_prependRowsData[] = array($format, $campos);
+ }
+
+ function appendRowsData($format, $campos = array()) {
+ if (!is_array($campos)) {
+ $campos = array($campos);
+ }
+ $this->_appendRowsData[] = array($format, $campos);
+ }
+
+ function _buildRowsData($datos, $row, $array) {
+ if ($array) {
+ foreach ($array as $data) {
+ list($format, $fields) = $data;
+ if ($fields) {
+ $args = array($format);
+ foreach ($fields as $field) {
+ if (is_array($row)) {
+ $args[] = $row[$field];
+ } else {
+ $args[] = $row->$field;
+ }
+ }
+ $datos[] = call_user_func_array('sprintf', $args);
+ } else {
+ $datos[] = $format;
+ }
+ }
+ }
+ return $datos;
+ }
+