protected function getRenderedValue(FieldDefinition $fieldDescription) { $fieldTypeName = $fieldDescription->getFieldType(); $fieldTypeInstance = $this->configuration->getFieldTypeInstance($fieldTypeName, 'Xlsx'); $unformattedFieldValue = $this->datasource->getFieldValue($fieldDescription); return $fieldTypeInstance->render($unformattedFieldValue); }
public function addField($fieldName, $fieldCaption, $fieldType, $fieldSize = null, $fieldWidth = null, $callback = null) { $fieldDefinition = new FieldDefinition($fieldName, $fieldCaption, $fieldType, $fieldSize, $fieldWidth, $callback); $fieldDefinition->setFieldOrder($this->count()); parent::append($fieldDefinition); return $this; }
/** * Return the value of current field * * @param FieldDefinition $fieldDefinition * @return null * @throws \OutOfBoundsException */ public function getFieldValue(FieldDefinition $fieldDefinition) { if (!$this->valid()) { throw new OutOfBoundsException(); } $current = $this->current(); return isset($current[$fieldDefinition->getFieldName()]) ? $current[$fieldDefinition->getFieldName()] : null; }
protected function getValue(DatasourceInterface $datasource, FieldDefinition $fieldDescription, $rendererPrefix = null) { $fieldTypeName = $fieldDescription->getFieldType(); $fieldTypeInstance = $this->configuration->getFieldTypeInstance($fieldTypeName, $rendererPrefix); $unformattedFieldValue = $datasource->getFieldValue($fieldDescription); $formattedFieldValue = $fieldTypeInstance->render($unformattedFieldValue); if (null !== $fieldDescription->getCallback()) { $formattedFieldValue = $fieldDescription->executeCallBack($formattedFieldValue, $datasource); } return $formattedFieldValue; }