powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / C# и CR 10 - ох уж этот CR!!!
2 сообщений из 2, страница 1 из 1
C# и CR 10 - ох уж этот CR!!!
    #32535892
Scalder1
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Всё началось с того, что CR 10 в отчетах не понимает относительных путей....ок...
будем сами вычислять путь, благо это не так трудно сделать на C#....
и вот, что получилось:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
CrystalDecisions.CrystalReports.Engine.ReportDocument myDocument = new CrystalDecisions.CrystalReports.Engine.ReportDocument();
			// Получим полный путь к БД из относительного
			#if (DEBUG)
				string db_path = "..\\Release\\data\\family_p.mdb";
			#else
				string db_path = "data\\family_p.mdb";
			#endif
			string full_path = System.IO.Path.GetFullPath(db_path);
						
			//Грузим файл отчета
			#if (DEBUG)
				myDocument.Load("..\\Release\\report\\main_rep.rpt");
			#else
				myDocument.Load("report\\main_rep.rpt");
			#endif
			// Нужно обьявить переменную от Cristal Reports path
			CrystalDecisions.Shared.ParameterValues CR_ID = new CrystalDecisions.Shared.ParameterValues();
			CrystalDecisions.Shared.ParameterDiscreteValue ID = new CrystalDecisions.Shared.ParameterDiscreteValue();
						
			// Грузим сам обьект чтоб показать пользователю, может он одумаеться? зачем зря бумагу расходовать :D
			TableLogOnInfo crTableLogOnInfo = new TableLogOnInfo();
			foreach(CrystalDecisions.CrystalReports.Engine.Table crTable in myDocument.Database.Tables) // Но тут вылетает не правильный параметр!!!!
			{
				crTableLogOnInfo = crTable.LogOnInfo;
				crTableLogOnInfo.ConnectionInfo.ServerName = full_path; // например C:\\DB411.mdb
				crTable.ApplyLogOnInfo(crTableLogOnInfo);
			}
			
			myDocument.Refresh();
			// Грузим переменную в отчет
			ID.Value = this.current_fam;
			CR_ID.Add(ID as object);
					myDocument.DataDefinition.ParameterFields["id"].ApplyCurrentValues(CR_ID);
			this.crystalReportViewer1.ReportSource = myDocument;			
Люди уже 3 дня парюсь.... блин.... ужас просто какой-то...
Буду рад любому совету...
...
Рейтинг: 0 / 0
C# и CR 10 - ох уж этот CR!!!
    #32536764
Scalder1
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Оказываеться он просто не все пути нормально обрабатывает!!!
А почему???
пример:
C:\1\data\family_p.mdb - прокатывает
C:\Program Files\passport\data\family_p.mdb - прокатывает
C:\my project\csharp\family_passport\bin\Release\data\family_p.mdb - уже нет....
Неужели он вылетает из-за того что путь слишком длинный... вот тебе и .Net :(
...
Рейтинг: 0 / 0
2 сообщений из 2, страница 1 из 1
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / C# и CR 10 - ох уж этот CR!!!
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]