Независимый форум, посвященный системе БОСС-Кадровик и всему, что с ней связано
|
|
Предыдущая тема :: Следующая тема |
Автор |
Сообщение |
Олег
Зарегистрирован: 02.04.2012 Сообщения: 36
|
Добавлено: Вт Апр 03, 2012 09:01 Заголовок сообщения: Проблемы при формировании отчета .rpt из RPDisigner |
|
|
Имеется готовая процедура в RPDisigner, которая записывает значения из запроса во временную таблицу. В свою очередь поля из этой временной таблицы используются для заполнения отчета в CR 9.
Проблема в том что как бы я ни пытался добавить поля в запрос в процедуры, добавляемая информация не отображается в отчете... |
|
Вернуться к началу |
|
 |
RVV Большой шоколадный орден

Зарегистрирован: 14.01.2010 Сообщения: 449
|
Добавлено: Вт Апр 03, 2012 11:52 Заголовок сообщения: |
|
|
"во временную таблицу" это Вы про табл. с # ? |
|
Вернуться к началу |
|
 |
Олег
Зарегистрирован: 02.04.2012 Сообщения: 36
|
Добавлено: Ср Апр 04, 2012 05:47 Заголовок сообщения: |
|
|
нет. С# не используется, насколько я понимаю.
Имеется готовая процедура в RPDisigner, которая записывает значения из запроса в таблицу user_rep.
/*ЗАПРОС*/
INSERT INTO user_per (s1, s2, s3, s4)
SELECT T1.A1, T2.A2, T1.A3, curstation
FROM ...
INNER JOIN ...
WHERE...
REPORT шаблон.rpt,"заголовок",{s4=curstation;},0x0020,,Arial
/*КОНЕЦ ЗАПРОСА*/
В шаблоне: шаблон.rpt (CR-9), для заполнения выбрана таблица user_per, и соответсвующие поля: s1, s2, s3, s4.
Проблема: 1) При добавлении в запрос:
INSERT INTO user_per (s1, s2, s3, M1, s4)
SELECT T1.A1, T2.A2, T1.A3, T1.A3, curstation
FROM ...
INNER JOIN ...
WHERE...
и добавлении поля user_per.M1 в шаблон отчета, информация из М1 не отображается
2) не пойму как CR-9 формирует многостраничный отчет. т.е.
в каждом из полей: s1, s2, s3, содержиться множество значений; и для каждого значения формируется отдельный лист отчета. _________________ Очень благодарен, за помощ, здешнему району сети и его обитателям. |
|
Вернуться к началу |
|
 |
RVV Большой шоколадный орден

Зарегистрирован: 14.01.2010 Сообщения: 449
|
Добавлено: Ср Апр 04, 2012 10:47 Заголовок сообщения: |
|
|
Verify DataBase в отчете нажимали? |
|
Вернуться к началу |
|
 |
Олег
Зарегистрирован: 02.04.2012 Сообщения: 36
|
Добавлено: Ср Апр 04, 2012 11:28 Заголовок сообщения: |
|
|
Да. "The datebase is up to date." Ошибок не показывает.
В поле, которое я добавляю, не записываются данные. И в отчете на месте этого поля пустое место.
Т.е. первоначальный запрос работает, и в отчете все данные показываются нормально. Но в новом-добавленном мной поле - пустое место, что бы я не записывал в это поле... |
|
Вернуться к началу |
|
 |
Mike Большой шоколадный орден

Зарегистрирован: 07.04.2011 Сообщения: 255
|
Добавлено: Ср Апр 04, 2012 12:01 Заголовок сообщения: |
|
|
а в таблицу user_per вы стобец M1 добавили? |
|
Вернуться к началу |
|
 |
Олег
Зарегистрирован: 02.04.2012 Сообщения: 36
|
Добавлено: Ср Апр 04, 2012 12:13 Заголовок сообщения: |
|
|
да, в этой таблице имеется множество полей, таблица используется для временного хранения информации, которая необходима для отчета.
в процедуре нужная информация записывается в таблицу в поля подходящие по типу, а потом в отчете выбираются только те поля в которые производилась запись информации.
После построения отчета, таблица user_per очищается
(грубо говря) _________________ Очень благодарен, за помощ, здешнему району сети и его обитателям. |
|
Вернуться к началу |
|
 |
Олег
Зарегистрирован: 02.04.2012 Сообщения: 36
|
Добавлено: Ср Апр 04, 2012 12:15 Заголовок сообщения: |
|
|
Разве никто не формировал отчеты .rpt из RPDesigner`a  |
|
Вернуться к началу |
|
 |
RVV Большой шоколадный орден

Зарегистрирован: 14.01.2010 Сообщения: 449
|
Добавлено: Ср Апр 04, 2012 13:08 Заголовок сообщения: |
|
|
Формировали ... Но из Вашего описания я так и не понял что Вы пытаетесь сделать и как. |
|
Вернуться к началу |
|
 |
Олег
Зарегистрирован: 02.04.2012 Сообщения: 36
|
Добавлено: Ср Апр 04, 2012 13:31 Заголовок сообщения: |
|
|
Попробую с начала.
Имеется таблица на сервере : user_rep.
Таблица содержит множество столбцов: str1, str2, ..., str8,
и другие.
Имеется процедура в RPDesugner`e:
Код: |
Delete from user_rep where st = curstation;
insert into user_rep ( str1, str6, str2, st)
Select distinct
card.full_name,
card.sex,
Appointments.Name_Appoint,
curstation
from ...
JOIN ...
Where ...
report user_mDoc.rpt,"Заголовок",{st = curstation;},0x0020,,Arial;
Delete from user_rep where st = curstation;
|
Данная процедура отлично работает, и в шаблоне user_mDoc.rpt олично выводятся поля: str1, str6, str2.
Я пытаюсь добавить еще информации в отчет (хоть какой-нибудь
Делаю это следующим образом:
1) выгружаю из RPDesigner`a отчет user_mDoc.rpt, добавляю в используемую область Details поле str7 из таблицы user_rep (данная таблица уже используется шаблоном .rpt, и уже подключена и работает, и в ней есть поле str7).
Сохраняю измененный шаблон.
2) Загружаю его в RPDesigner Сервис->Справочники->Отчеты вместо того, что выгружал.
3) В имеющейся процедуре, код которой выше, вношу изменения с целью запихать в шаблон хоть что-то (дабы понять как этот зверь дышет):
Код: |
Delete from user_rep where st = curstation;
insert into user_rep ( str1, str6, str2, st, str7)
Select distinct
card.full_name,
card.sex,
Appointments.Name_Appoint,
curstation,
card.full_name
from ...
JOIN ...
Where ...
report user_mDoc.rpt,"Заголовок",{st = curstation;},0x0020,,Arial;
Delete from user_rep where st = curstation;
|
Сохраняю.
Запускаю отчет, из меню которое его запускает и вуаля в поле str7, над которым я работал НИЧЕГО, ни одного симола.
Возникает вопрос, 1)почему после столь несложных манипуляций моя переменная пуста?
2) В рабочей версии, отчет формирует множество листов, столько сколько максимально строк было в одной из переменных str1, str6, str2. (ну или что-то в роде того). Вопрос как он так формирует много страниц? умный такой чтоли ) _________________ Очень благодарен, за помощ, здешнему району сети и его обитателям. |
|
Вернуться к началу |
|
 |
RVV Большой шоколадный орден

Зарегистрирован: 14.01.2010 Сообщения: 449
|
Добавлено: Ср Апр 04, 2012 14:05 Заголовок сообщения: |
|
|
Для начала:
я бы не советовал так писать:
report user_mDoc.rpt,"Заголовок",{st = curstation;},0x0020,,Arial;
Delete from user_rep where st = curstation;
Имя переменной не должно совпадать с именем поля в таблице.
В вашем случае Вы получите после подстановки
Delete from user_rep where curstation = curstation;
Нужно:
В отчете создать переменную, например _ST
В процедуре ее объявить, тогда Crystal ee подцепит сам.
LOCAL _st := curstation;
report user_mDoc.rpt,"Заголовок",{},0x0020,,Arial;
Delete from user_rep where st = curstation; |
|
Вернуться к началу |
|
 |
Mike Большой шоколадный орден

Зарегистрирован: 07.04.2011 Сообщения: 255
|
Добавлено: Ср Апр 04, 2012 14:16 Заголовок сообщения: |
|
|
А в таблицу значение попадает, делали типа:
Код: | BROWSER (select str7 from user_rep); |
после добавления значений в таблицу? |
|
Вернуться к началу |
|
 |
Олег
Зарегистрирован: 02.04.2012 Сообщения: 36
|
Добавлено: Чт Апр 05, 2012 05:18 Заголовок сообщения: |
|
|
Ребята, всем спосибо за помощ и старание!
Утро вечера мудреннее!
Сегодня с утра сделал практически тоже что и вчера, все отображается...
Буду разбираться дальше.
Спасибо! |
|
Вернуться к началу |
|
 |
|
|
Вы не можете начинать темы Вы не можете отвечать на сообщения Вы не можете редактировать свои сообщения Вы не можете удалять свои сообщения Вы не можете голосовать в опросах
|
|