|
Подпись отчетов
|
|||
---|---|---|---|
#18+
Не могу найти решение в Cristal Report .NET. Суть: На всех документах, как правило, указывается ФАМИЛИЯ лица, ознакомленного с ним и его ДОЛЖНОСТЬ. Каждый год необходимо печатать документы. Каждый год приходится ручками вносить изменения (ФАМИЛИИ и/или ДОЛЖНОСТИ). К тому же, форм различных отчетов много. В итоге, процедура не из приятных ((( Помогите ... |
|||
:
Нравится:
Не нравится:
|
|||
29.08.2005, 16:43 |
|
Подпись отчетов
|
|||
---|---|---|---|
#18+
Как на счет того что бы завести табличку с перечислением ФАМИЛИЙ и Должностей. Из отчета делать ссылку по ключу на нужного ЛПР (Лицо Принимающее Решение). Тогда обносление данных в таблице автоматом поменяется в отчете. ... |
|||
:
Нравится:
Не нравится:
|
|||
29.08.2005, 18:26 |
|
Подпись отчетов
|
|||
---|---|---|---|
#18+
Мне тоже кажется, что нужна таблица с данными о ЛПР. Вот только algendaИз отчета делать ссылку по ключу на нужного ЛПР (Лицо Принимающее Решение). мне не совсем ясно. В виде чего должна быть ссылка (в виде поля?). Точнее какой элемент отчета позволяет выудить одну запись с данными из таблицы ЛПР. Если можно, поподробнее, пожалуйста. Буду благодарен за помощь ... |
|||
:
Нравится:
Не нравится:
|
|||
29.08.2005, 18:52 |
|
Подпись отчетов
|
|||
---|---|---|---|
#18+
Я бы сделал так: Таблица с ЛПР: ID|Last Name | Job Title | 1 |Петров А.И. |Директор | 2 |Сидоров И.Л. |Гл. Бухгалтер| В отчете добавил Команду: Select * from LPR where ID=2 условие WERE менял в зависимости от того кто должен документ подписывать. Результатом команды мы получаем в отчете одну запись с тремя полями: ID Last Name и Job Title которые потом можно спокойно вставить в Footer отчета. ... |
|||
:
Нравится:
Не нравится:
|
|||
29.08.2005, 19:41 |
|
Подпись отчетов
|
|||
---|---|---|---|
#18+
А конфликтов с основным RecordSet'ом не будет? Допустим, ситуация следующая: Отчет содержит ПЕРЕЧЕНЬ МАТЕРИАЛОВ с указаными ценами (Это один RecordSet). И подписывается этот отчет данными о ЛПР из другого RecorSet'а. ... |
|||
:
Нравится:
Не нравится:
|
|||
29.08.2005, 19:50 |
|
Подпись отчетов
|
|||
---|---|---|---|
#18+
1) дожна быть таблица (вьювер, хп) в которой находятся или выбираются данные по человеку и его должности 2) добавить в отчет текстовый параметр в котором будет фамилия и должность человека и поместить в нужное место отчета 3) перед открытием отчета заполнять в этот параметр значения по умолчанию из пункта 1) 4) действия по вводу фамилии сведутся к выбору значения параметра из списка ... |
|||
:
Нравится:
Не нравится:
|
|||
30.08.2005, 09:49 |
|
Подпись отчетов
|
|||
---|---|---|---|
#18+
Всё работает! Большое вам Спасибо за помощь ... |
|||
:
Нравится:
Не нравится:
|
|||
30.08.2005, 18:17 |
|
Подпись отчетов
|
|||
---|---|---|---|
#18+
Оказалось, что перечень Default Values не имеет динамической связи с источником данных (при изменении ФАМИЛИИ ЛПР в таблице БД, в отчете остается старая фамилия) Может эту проблему можно решить через SQL Expression Field ? Я попробовал записать следующую формулу: Код: plaintext 1. 2. 3. 4. 5.
General SQL Server error: Check messages from the SQL Server (тот же самый запрос запущен в Analizer . Там всё работает) ... |
|||
:
Нравится:
Не нравится:
|
|||
31.08.2005, 16:30 |
|
Подпись отчетов
|
|||
---|---|---|---|
#18+
Да, Default Values нельзя связать с таблицей динамически. В принципе. За это многие бьют CR, и правильно делают. Вообще, в CR нет многого, что там должно быть исходя из логических соображений. ... |
|||
:
Нравится:
Не нравится:
|
|||
31.08.2005, 18:46 |
|
Подпись отчетов
|
|||
---|---|---|---|
#18+
А через SQL Expression Field решить можно? Если можно, то как должно выглядеть выражение? ... |
|||
:
Нравится:
Не нравится:
|
|||
01.09.2005, 11:54 |
|
Подпись отчетов
|
|||
---|---|---|---|
#18+
перед запуском кристала заполнять поля по умолчанию в параметре из кода в цикле Код: plaintext 1. 2. 3. 4.
... |
|||
:
Нравится:
Не нравится:
|
|||
01.09.2005, 12:19 |
|
Подпись отчетов
|
|||
---|---|---|---|
#18+
Для тех кого интересует, предлагаю собственное решение 1. В отчете вставить поле FIO типа Parameter Field (меню Insert->Field Object) 2. В обработчике события формы Load написать следующее: Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load reportDocument1.Load("C:\\perechen.rpt") ' описание необходимых переменных Dim currentValues As CrystalDecisions.Shared.ParameterValues Dim discreteParam As New CrystalDecisions.Shared.ParameterDiscreteValue() Dim paramField As Object ' установка дискретного значения параметра discreteParam.Value = "Пупкин Вася" paramField = reportDocument1.DataDefinition.ParameterFields.Item("FIO") 'редактируем текущие значения параметра с именем FIO currentValues = paramField.CurrentValues currentValues.Clear() currentValues.Add(discreteParam) paramField.ApplyCurrentValues(currentValues) CR1.ReportSource = reportDocument1 reportDocument1.Refresh() End Sub Таким образом, вставив вместо "Вася Пупкин", получим желаемый результат ... |
|||
:
Нравится:
Не нравится:
|
|||
05.09.2005, 14:02 |
|
|
start [/forum/topic.php?fid=31&msg=33239797&tid=1539497]: |
0ms |
get settings: |
10ms |
get forum list: |
14ms |
check forum access: |
3ms |
check topic access: |
4ms |
track hit: |
179ms |
get topic data: |
12ms |
get forum data: |
3ms |
get page messages: |
53ms |
get tp. blocked users: |
2ms |
others: | 15ms |
total: | 295ms |
0 / 0 |