Crystal Reports 11.5 с PHP и MySQL
Я новичок в Crystal Reports, и я использую версию Crystal Reports 11.5.
Мои требования следующие:
- Среда программирования - это PHP.
- База данных - это MySQL.
- Я хочу создавать отчеты PDF с помощью Crystal Report + PHP + MySQL.
В настоящее время я использую COM-объект для подключения к Crystal Report с использованием PHP, и я могу сгенерировать образец статического PDF-отчета.
Моя основная задача - сделать всю обработку в PHP, извлекая значения из MySQL и передать значения Crystal Reports и создать PDF файл. Мне нужна помощь для достижения этой задачи. Если кто-то может предоставить образец кода, то это будет намного лучше.
Это то, что у меня есть до сих пор:
$my_report = "E:\\xampp\\htdocs\\crystal\\Test1.rpt";
$my_pdf = "E:\\xampp\\htdocs\\crystal\\test.pdf";
$o_CrObjectFactory = new COM('CrystalReports11.ObjectFactory.1');
// Create the Crystal Reports Runtime Application.
$o_CrApplication =$o_CrObjectFactory->CreateObject("CrystalDesignRunTime.Application");
//------ Open your rpt file ------
$creport = $o_CrApplication->OpenReport($my_report, 1);
//------ Connect to DB2 DataBase ------
**this is the hard part where I am not able to complete connection to mysql**
$o_CrApplication->LogOnServer('which library','mlims','root','');
//------ Put the values that you want --------
$creport->RecordSelectionFormula="{parameter.id}='1'";
//------ This is very important. DiscardSavedData make a
// Refresh in your data -------
$creport->DiscardSavedData;
//------ Read the records :-P -------
$creport->ReadRecords();
//------ Export to PDF -------
$creport->ExportOptions->DiskFileName=$my_pdf;
$creport->ExportOptions->FormatType=31;
$creport->ExportOptions->DestinationType=1;
$creport->Export(false);
//------ Release the variables
$creport = null;
$crapp = null;
$ObjectFactory = null;
Как вы видите В приведенном выше коде мне нужно подключить сервер Mysql, который я пытался сделать в течение последних нескольких дней. Я пробовал много примеров в сети, но большинство из них предназначены для SQL Server, а не для MySQL.
Ответы
Ответ 1
Следуйте инструкциям:
-
Загрузите файл jar MySQL Connector J. Эта загрузка должна содержать файл jar, который выглядит примерно так:
MySQL-разъем-Java-3.1.14-bin.jar
-
Добавьте местоположение вашего недавно загруженного файла jar в Classpath, как определено в файле CrystalReports CRConfig.xml. На компьютере с Windows файл конфигурации будет находиться где-то вроде:
C:\Program Files\Business Objects\Common\3.5\java\CRConfig.xml
-
Как только вы изменили свой CRConfig.xml, закройте и снова откроете Crystal Reports.
- В меню: Файл → Новый → Стандартный отчет
- В списке "Доступные источники данных" дважды щелкните, чтобы развернуть "Создать новое соединение"
- Дважды щелкните, чтобы развернуть "JDBC (JNDI)"
- Дважды щелкните "Создать новое соединение"
- URL-адрес подключения: "jdbc: mysql://db.example.com/dbname" (используйте собственное имя хоста базы данных и имя db).
База данных Имя класса: "com.mysql.jdbc.Driver"
- Нажмите "Далее"
- При появлении запроса введите комбинацию пользователя/пароля базы данных.
Теперь вы можете проверить таблицы/столбцы в базе данных, чтобы начать отчетность.
См. ссылка