Модераторы: gambit

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Заполнение Crystal Report с помощью цикла 
:(
    Опции темы
Fomaa
Дата 15.4.2008, 14:56 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 122
Регистрация: 27.6.2007

Репутация: нет
Всего: нет



Как в Crystal Report можно заносить данные из цикла?
Или как можно заносить данные из НЕТИПИЗИРОВАННОГО DataSet?
PM MAIL   Вверх
thomas
Дата 16.4.2008, 12:00 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Доцент... почти
***


Профиль
Группа: Завсегдатай
Сообщений: 1385
Регистрация: 3.10.2006
Где: " Сказочное королевство"

Репутация: 35
Всего: 65



Fomaa, 
Приветствую.
Цитата

как можно заносить данные из НЕТИПИЗИРОВАННОГО DataSet? 

Crystal Report позволяеть создавать "отчёты" на основании данных либо из типизированного датасет, либо из базы данных напрямую.
С динамическими обьектами Crystal Report, к сожалению, работать не умеет.
Он должен знать таблицы и поля в них еще в design mode.
Плюс можно использовать view в БД как источник данных. Во view ты можешь выбрать данные из нескольких таблиц БД, а так же включить вычисляемые поля.
 В ДС только таблицы которые там созданы и заполнены.

Добавлено через 58 секунд
А что ты подразумеваешь под этим?
Цитата

Как в Crystal Report можно заносить данные из цикла?



--------------------
Крепко жму горло, искренне ваш Thomas. (С)vingrad
Некоторые сорта флоры буквально за одно мгновение превращают нас в фауну!
Проблемы негров шерифа не волнуют.
PM MAIL   Вверх
Fomaa
Дата 16.4.2008, 23:07 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 122
Регистрация: 27.6.2007

Репутация: нет
Всего: нет



Да, именно это и имел ввиду, вы в точности ответили на вопрос, спасибо.
Только с помощью каких же компонент можно создать отчет, который будет использовать нетипизированный датасет?
PM MAIL   Вверх
Fomaa
Дата 17.4.2008, 08:45 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 122
Регистрация: 27.6.2007

Репутация: нет
Всего: нет



А можно в отчетах использовать хранимые процедуры?
PM MAIL   Вверх
akizelokro
Дата 17.4.2008, 09:38 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Крокодил
**


Профиль
Группа: Участник
Сообщений: 761
Регистрация: 30.7.2007

Репутация: нет
Всего: 5



Извини, в чем проблема, что ты не хочешь использовать типизированный DataSet?


--------------------
a = a + b; b = a - b; a = a - b;
PM MAIL   Вверх
thomas
Дата 17.4.2008, 13:07 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Доцент... почти
***


Профиль
Группа: Завсегдатай
Сообщений: 1385
Регистрация: 3.10.2006
Где: " Сказочное королевство"

Репутация: 35
Всего: 65



Fomaa, 
Приветствую.
Цитата

Только с помощью каких же компонент можно создать отчет, который будет использовать нетипизированный датасет? 

Использовать НЕТИПИЗИРОВАННЫЙ(динамический, создаваемый в runtime) датасет для работы с Crystal Report НЕВОЗМОЖНО.

Если вы, в своей программе, используете все что угодно за исключением типизированного датасет, то отчеты в Crystal Report создаются на основе базы данных НАПРЯМУЮ.
Т.е. Crystal Report  в design mode обращаеться не к типизированному дата сет, а к базе данных, структура таблиц которой, в отличиии от не типизированного дата сет,  известна на этот момент. Это значит, что CR создает свое соединение с БД и для отчетов использует данные из БД, а не из памяти, как в случае с типизированным дата сет.
Цитата

А можно в отчетах использовать хранимые процедуры? 

Этого я не знаю, не пробовал. Я создаю отчеты на основании view в БД на MS SQL Server. Вполне возможно, что и можно. Раз view видны в мастере создания отчета, то может и хп там тоже отображаются. Только одно не маловажное замечание, для view не используються параметры, а для хп очень даже. И как это взаимодействует с Crystal Report я БМП.



--------------------
Крепко жму горло, искренне ваш Thomas. (С)vingrad
Некоторые сорта флоры буквально за одно мгновение превращают нас в фауну!
Проблемы негров шерифа не волнуют.
PM MAIL   Вверх
archengel
Дата 17.4.2008, 21:55 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 34
Регистрация: 19.8.2006

Репутация: нет
Всего: нет



в Crystal Report есть одна интересная фишка: можно указать в дизайнере источник данных, команду (command), он предложит вписать ее текст. Вот сюда можно впихнуть в принципе что угодно, от тела хранимой процедуры, до простого запроса. ПОтом раскидываем  поля по отчету как надо. И при загрузки отчета указываем ему источник, DataSet, DataTable  итд полученные на основе хранимки, запроса, или построенного вручную. Главное что бы названия полей в дизанере совпадали с полями в источнике, что ты привяжешь! Кушает как милый!

Добавлено через 8 минут и 14 секунд
thomas, время суток доброе.
Цитата

Использовать НЕТИПИЗИРОВАННЫЙ(динамический, создаваемый в runtime) датасет для работы с Crystal Report НЕВОЗМОЖНО.

Если вы, в своей программе, используете все что угодно за исключением типизированного датасет, то отчеты в Crystal Report создаются на основе базы данных НАПРЯМУЮ.
Т.е. Crystal Report  в design mode обращаеться не к типизированному дата сет, а к базе данных, структура таблиц которой, в отличиии от не типизированного дата сет,  известна на этот момент. Это значит, что CR создает свое соединение с БД и для отчетов использует данные из БД, а не из памяти, как в случае с типизированным дата сет.


Очень даже можно. Как я писал выше, привязывай, все что хочешь именно (runtime), главное чтобы название полей совпадало!.
Точнее поправлюсь, дизайнер использует прямой коннект к базе, а во время исполнения программе легко подменяется источник с прямого на свой конкретный, полученный в принципе любым путём smile 
PM MAIL ICQ   Вверх
jonie
Дата 17.4.2008, 22:56 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 5613
Регистрация: 21.8.2005
Где: Владимир

Репутация: 8
Всего: 118



дополню что Хранимки использовать можно, в качестве источника.
стоит заметить, что зачастую встроенные вычисления в CR работают быстрее, нежели вычисления на сервере БД.


--------------------
Что-то не поняли? -> Напейтесь до зеленых человечков... эта сверхцивилизация Вам поможет...
PM MAIL Jabber   Вверх
EAV
Дата 18.4.2008, 08:00 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 31
Регистрация: 23.10.2007

Репутация: нет
Всего: нет



Цитата(archengel @  17.4.2008,  23:55 Найти цитируемый пост)
привязывай, все что хочешь именно (runtime), главное чтобы название полей совпадало!

С этим согласен на 100%! сам пользуюсь подсовыванием источника данных.

Единственное что оставляет небольшое разочарование при использовании CR то, что нельзя создавать сам отчет (его структуру) непосредственно в runtime, а только можно использовать то, что ранее создал в дизайнере отчетов
PM MAIL   Вверх
thomas
Дата 18.4.2008, 12:13 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Доцент... почти
***


Профиль
Группа: Завсегдатай
Сообщений: 1385
Регистрация: 3.10.2006
Где: " Сказочное королевство"

Репутация: 35
Всего: 65



Цитата(EAV @ 18.4.2008,  06:00)
Цитата(archengel @  17.4.2008,  23:55 Найти цитируемый пост)
привязывай, все что хочешь именно (runtime), главное чтобы название полей совпадало!

С этим согласен на 100%! сам пользуюсь подсовыванием источника данных.


archengel, 
EAV, 
Приветствую.
Что-то я вас не пойму  smile 

CR может брать данные из типизированного дата сет (т.е. из памяти) или из базы данных(т.е. с жесткого диска).
При этом весь дизайн отчёта формируеться в design mode,  а не в runtime.

Покажите мне, неразумному, как вы "скармливаете" CR-у в design mode данные из нетипизированного дата сет, создаваемого и заполняемого данными программно в runtime.   smile  Очень интересно. И желательно с картинками и пояснениями. 

Как вы обьясняете CR-у при его создании откуда он должен брать данные? Потому как к базе данных вы не обращаетесь (соединение не устанавливаете), а типизированного дата сет в проекте на наблюдаеться. Дата сет создаеться и заполняеться данными в runtime.

Вот скриншот из моего проекта для Crystal Report. Откуда он может взять данные для создания рапорта в design mode .
user posted image

зеленым подчеркнуто созданное соединение с базой данных на MS SQL server.
красной тонкой линией подчеркнута возможность создать команду на выборку данных из БД. Но тут происходит обращение именно к БД с которой уже есть соединение. Но вместо этого удобнее пользоваться командами уже созданными в БД, т.е. view или хранимыми процедурами. Их использовать можно.
синим подчеркнуты .NET Objects - это список форм в проекте, там никаких данных нет.
жирная красная линия подчеркивает отсутствие типизированного дата сет в проекте.
черным зачеркнуты строки не относящиеся к данному проекту.




Это сообщение отредактировал(а) thomas - 18.4.2008, 12:16


--------------------
Крепко жму горло, искренне ваш Thomas. (С)vingrad
Некоторые сорта флоры буквально за одно мгновение превращают нас в фауну!
Проблемы негров шерифа не волнуют.
PM MAIL   Вверх
vretsky
Дата 18.4.2008, 12:13 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 48
Регистрация: 29.10.2007

Репутация: нет
Всего: нет



извините господа! 
сам столкнулся с похожей задачей, из описания архангела ниче не понял. как и где динамически указать источник данных? где в дизайнере выбрать комманд?

Добавлено через 9 минут и 44 секунды
вернее где создать команду в дизайнере я нашел, а как ее менять динамически?
PM MAIL   Вверх
thomas
Дата 18.4.2008, 12:27 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Доцент... почти
***


Профиль
Группа: Завсегдатай
Сообщений: 1385
Регистрация: 3.10.2006
Где: " Сказочное королевство"

Репутация: 35
Всего: 65



vretsky, 
приветствую.
Цитата(archengel @  17.4.2008,  19:55 Найти цитируемый пост)
в Crystal Report есть одна интересная фишка: можно указать в дизайнере источник данных, команду (command), он предложит вписать ее текст. Вот сюда можно впихнуть в принципе что угодно, от тела хранимой процедуры, до простого запроса. 

вот тут товарисч написал то, что я сказал выше 
Цитата(thomas @  16.4.2008,  10:00 Найти цитируемый пост)
Crystal Report позволяеть создавать "отчёты" на основании данных либо из типизированного датасет, либо из базы данных напрямую.

А его понятие "всё что угодно" включает в себя все тот же запрос к базе данных, с которой уже есть соединение. Т.е. другими словами данные для CR будут браться из БД напрямую.
А не из какого-то там дата сет, который кто-то где-то когда-то создаст во время работы программы.







--------------------
Крепко жму горло, искренне ваш Thomas. (С)vingrad
Некоторые сорта флоры буквально за одно мгновение превращают нас в фауну!
Проблемы негров шерифа не волнуют.
PM MAIL   Вверх
vretsky
Дата 18.4.2008, 12:30 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 48
Регистрация: 29.10.2007

Репутация: нет
Всего: нет



или в сторед процедуру можно передать динамический параметр (параметры) ?
(под динамический понимать изменяемый пользователем)
PM MAIL   Вверх
thomas
Дата 18.4.2008, 12:32 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Доцент... почти
***


Профиль
Группа: Завсегдатай
Сообщений: 1385
Регистрация: 3.10.2006
Где: " Сказочное королевство"

Репутация: 35
Всего: 65



Цитата

вернее где создать команду в дизайнере я нашел, а как ее менять динамически? 

что ты подразумеваешь под менять? Подставлять параметры в команду?

Если я правильно понимаю, в CR есть поля параметры.
И при помощи этих полей наверное можно выводить, например одну из многих накладных, передав в качестве параметра её номер.

Сейчас сам собираюсь над этим поработать.



--------------------
Крепко жму горло, искренне ваш Thomas. (С)vingrad
Некоторые сорта флоры буквально за одно мгновение превращают нас в фауну!
Проблемы негров шерифа не волнуют.
PM MAIL   Вверх
vretsky
Дата 18.4.2008, 12:53 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 48
Регистрация: 29.10.2007

Репутация: нет
Всего: нет



thomas 
приветствую!

вот команда к примеру

select *
from Addresses
where code=@param

создаю параметр @param
жму OK, получаю ошибку должна быть объявлена скалярная переменная!!!!!!!!!!!!
PM MAIL   Вверх
Ответ в темуСоздание новой темы Создание опроса
Прежде чем создать тему, посмотрите сюда:
stab
mr.DUDA
Exception

Используйте теги [code=csharp][/code] для подсветки кода. Используйтe чекбокс "транслит" если у Вас нет русских шрифтов.

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, stab, mr.DUDA, Exception.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Базы данных под .NET | Следующая тема »


 




[ Время генерации скрипта: 0.0627 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.