diff options
author | jaysmith6811@gmail.com <jaysmith6811@gmail.com@deae1e92-32f9-c189-e222-5b9b5081a27a> | 2012-11-29 15:58:15 +0000 |
---|---|---|
committer | jaysmith6811@gmail.com <jaysmith6811@gmail.com@deae1e92-32f9-c189-e222-5b9b5081a27a> | 2012-11-29 15:58:15 +0000 |
commit | 9f432ad29b0a25bf1b704f54865611111ee20fc3 (patch) | |
tree | 94f40c94c8aba71d7c2bbb4b216f0ebe6d206d93 | |
parent | b67f88eaa937a334792958d7d200e48a504461dc (diff) | |
download | php-ssrs-9f432ad29b0a25bf1b704f54865611111ee20fc3.zip php-ssrs-9f432ad29b0a25bf1b704f54865611111ee20fc3.tar.gz php-ssrs-9f432ad29b0a25bf1b704f54865611111ee20fc3.tar.bz2 |
added reportParameter ValidValue Object
-rwxr-xr-x | library/SSRS/Object/ReportParameter.php | 25 | ||||
-rw-r--r-- | library/SSRS/Object/ReportParameter/ValidValue.php | 16 |
2 files changed, 33 insertions, 8 deletions
diff --git a/library/SSRS/Object/ReportParameter.php b/library/SSRS/Object/ReportParameter.php index 0b70710..40022fc 100755 --- a/library/SSRS/Object/ReportParameter.php +++ b/library/SSRS/Object/ReportParameter.php @@ -21,8 +21,13 @@ class SSRS_Object_ReportParameter extends SSRS_Object_Abstract { if (key_exists('DefaultValues', $this->data)) { $default = $this->data['DefaultValues']->Value; } - - return in_array($default, $this->getValidValues()) ? $default : null; + $validValues = array(); + foreach ($this->getValidValues() as $value) { + if ($default == $value->Value) { + return $default; + } + } + return null; } public function getValidValues() { @@ -32,18 +37,22 @@ class SSRS_Object_ReportParameter extends SSRS_Object_Abstract { $data = array(); if (is_object($this->data['ValidValues']->ValidValue)) { - $data[$this->data['ValidValues']->ValidValue->Label] = $this->data['ValidValues']->ValidValue->Value; + $data[] = new SSRS_Object_ReportParameter_ValidValue($this->data['ValidValues']->ValidValue->Label, + $this->data['ValidValues']->ValidValue->Value); } else { foreach ($this->data['ValidValues']->ValidValue AS $value) { - $data[$value->Label] = $value->Value; + if (is_object($value)) { + $data[] = new SSRS_Object_ReportParameter_ValidValue($value->Label, $value->Value); + } else { + $data[] = new SSRS_Object_ReportParameter_ValidValue((string) $value, (string) $value); + } } } - if (!empty($this->data['AllowBlank'])) { - $data['AllowBlank'] = ''; - } +// if (!empty($this->data['AllowBlank'])) { +// $data[] = new SSRS_Object_ReportParameter_ValidValue('', ''); +// } } - return $data; } diff --git a/library/SSRS/Object/ReportParameter/ValidValue.php b/library/SSRS/Object/ReportParameter/ValidValue.php new file mode 100644 index 0000000..adb11ca --- /dev/null +++ b/library/SSRS/Object/ReportParameter/ValidValue.php @@ -0,0 +1,16 @@ +<?php + +class SSRS_Object_ReportParameter_ValidValue { + + /** + * capitals because of SSRS! + */ + public $Value; + public $Label; + + public function __construct($label, $value) { + $this->Value = $value; + $this->Label = $label; + } + +}
\ No newline at end of file |