После создания Xcelsius SWF-файла Вы можете встроить его в Crystal-отчет:
Шаг 1: Запустите приложение Crystal Reports 2008 и откройте файл Report1.rpt.
Шаг 2: Создайте поле формулы и назовите его BuildTitlesString. Формула должна иметь следующее содержание:
global stringvar TitlesString;
if (TitlesString = "") then
TitlesString := Cstr({Table1.Company Name})
else
TitlesString := TitlesString + "," + Cstr({Table1.Company Name}); TitlesString;
Шаг 3: Создайте второе поле формулы и назовите его BuildValuesString. Формула должна иметь следующее содержание:
global stringvar ValuesString;
if (ValuesString = "") then
ValuesString := Cstr({Table1.Market Share})
else
ValuesString := ValuesString + "," + Cstr({Table1.Market Share}); ValuesString;
Шаг 4: Из меню выберите опцию Insert -> Flash…. Из списка выберите файл Model.swfи перетащите его в раздел нижнего колонтитула отчета. (Также можно вставить флэш-объект с помощью кнопки панели инструментов InsertFlashObject.)
Шаг 5: Щелчком мыши выберите флэш-объект в отчете и затем либо выберите опцию меню Format-> Flash Data Expert…, либо щелкните правой кнопкой мыши на флэш-объекте и выберите из выпадающего меню опцию Flash Data Expert….
В разделе Flash Data Binding Expert щелкните мышью на кнопке со знаком плюс ("+"). В качестве имени переменной введите Titles. Для передачи значения во флэш-переменную с именем Titles в вашем распоряжении имеется три опции:
1. Вручную введите строковое значение, которое вы хотите присвоить флэш-переменной (максимальная длина строки 40 символов)
2. Щелкните на кнопке выпадающего списка в текстовом поле, чтобы выбрать существующий объект-поле для передачи его во флэш-переменную.
3. Щелкните на кнопке Formula Builder (конструктор формул), расположенной рядом с текстовым полем, чтобы создать строковое значение для передачи во флэш-переменную посредством формулы.
В этом случае используйте опцию 2 и выберите BuildTitlesString из выпадающего списка.
Снова щелкните на кнопке со знаком плюс ("+"), и в качестве имени переменной введите Values. Чтобы ввести в переменную строковое значение, из выпадающего меню выберите опцию BuildValuesString
Для выхода из Flash Data Binding Expert щелкните на кнопке Okay. К этому моменту вы успешно внедрили созданный в Xcelsius флэш-объект в приложение Crystal Reports и связали данные флэш-объекта с отчетом. Если флэш-объект является интерактивным, в закладке Crystal Reports Preview сделайте на нем двойной щелчок мышью для переноса на него фокуса. После этого можно свободно щелкать мышью на любом из элементов диалогового управления флэш-объектом.
В вышеприведенном примере флэш-объект был вставлен в раздел нижнего колонтитула отчета. Чтобы вставить флэш-объект в любое место отчета, для продолжения корректной передачи ему данных необходимо создать CSV-строку внутри вложенного отчета, расположенного в заголовке отчета, и передать CSV-строку во флэш-объект с помощью совместно используемой переменной.
ПРОЧИЕ ПОЛОЖЕНИЯ
- Максимальная длина строки с разделителями-запятыми, которую можно передать во флэш-переменную, составляет 65536 символов.
- В объект Xcelsius SWF можно также передать многомерный массив данных, например, сетку значений размером 3x3:
Для корректной передачи данных во флэш-переменную соответствующая строка с разделителями-запятыми должна быть "1,2,3,4,5,6,7,8,9".
- На данный момент, для просмотра отчетов Crystal Reports с внедренными флэш-объектами можно использовать закладку Crystal Reports Preview или в рамках NET Web Application используйте средство просмотра Crystal Reports .NET Webform Report Viewer.