![]() |
|
|
![]()
|
|
| Salaman |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 68 Регистрация: 7.4.2006 Репутация: нет Всего: нет |
Привет всем помогите очень нужна
Можно ли FastReporte сделать такую таблицу заранее благодарен ![]() Данные берутся из двух таблиц структуры такова Table1 Table2 Тоже такая структура но для конденсата КодЦеха Год Месяць дата п2 эти поля для ввода двухчасовой информации п4 п6 п8 п10 п12 п14 п16 п18 п20 п22 п24 Это сообщение отредактировал(а) Salaman - 21.10.2006, 12:09 |
|||
|
||||
| Aleksej |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 9 Регистрация: 5.10.2006 Где: Киев Репутация: нет Всего: нет |
если так, то придется динамически создавать колонки. это сложнее. а нельзя ли перевернуть таблицу? т.е. чтоб врядках были месяцы, а в столбцах значения?
|
|||
|
||||
| Salaman |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 68 Регистрация: 7.4.2006 Репутация: нет Всего: нет |
Aleksey spasibo za vnimaniye
Podrobneye obyasni pojaluysta kak delayetsy dinamicheskie kolonki |
|||
|
||||
| Vas |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 830 Регистрация: 29.6.2005 Где: Stavropol region Репутация: 23 Всего: 28 |
Cross отчет.
-------------------- И опыт, сын ошибок трудных, И гений, парадоксов друг, И случай, бог изобретатель. ... (А.С. Пушкин) |
|||
|
||||
| Salaman |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 68 Регистрация: 7.4.2006 Репутация: нет Всего: нет |
Vas nu pomogi plz
Kak FastReport delat takuyu tablicu ili narisovat chtoli obyasni podrobneye ya documentaciyu prochital no ne nashel tam otvet |
|||
|
||||
| Vas |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 830 Регистрация: 29.6.2005 Где: Stavropol region Репутация: 23 Всего: 28 |
Выдержка из хелпа к FR2.4. Только вот структура таблиц не очень понятна, отношение Master-Detail не понятно как придется делать по месяцам. А цеха придется наверное клепать запросами с UNION. И видимо придется заводить таблицу с номерами и названиями месяцов. Это сообщение отредактировал(а) Vas - 24.10.2006, 15:00 -------------------- И опыт, сын ошибок трудных, И гений, парадоксов друг, И случай, бог изобретатель. ... (А.С. Пушкин) |
|||
|
||||
| Salaman |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 68 Регистрация: 7.4.2006 Репутация: нет Всего: нет |
To VAS
Стараюсь подробно обяснить. Короче есть три таблица два из них для ввода на каждый день двухчасавой информаций и один справочник цехов. Структура такова Таблица ГАЗ Таблица Конденсат Таблица Справочник КодЦеха КодЦеха КодЦеха Год Год Названия Цеха Месяць Месяць дата дата п2 п2 п4 п4 п6 п6 п8 п8 п10 п10 п12 п12 п14 п14 п16 п16 п18 п18 п20 п20 п22 п22 п24 п24 Вот чтото делал на запросе только для таблиц газа select sp.названияцеха, месяць, sum ((п2+п4+п6+п8+п10+п12+п14+п16+п18+п20+п22+п24)) as dayly from таблица.ГАЗ as g join таблица.справочник as sp on g.кодцеха = sp.кодцеха where год = 2006 and месяць in (1,2,3,4,5,6,7,8,9,10,11,12) group by kod, mes и в итоге получил три поля названияцеха, месяць, dayly и Fast reporte dbcrosstab получился так дальше незнаю что делать ну помогите винградцы мне сделать точно такой отчет на первой рисунке |
|||
|
||||
| Vas |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 830 Регистрация: 29.6.2005 Где: Stavropol region Репутация: 23 Всего: 28 |
Salaman, а можешь эти две таблицы прикрепить, а то без базы тяжело пробовать. В твой запрос надо еще прикрутить таблицу с конденсатом. А собственно БД какая?
-------------------- И опыт, сын ошибок трудных, И гений, парадоксов друг, И случай, бог изобретатель. ... (А.С. Пушкин) |
|||
|
||||
| Salaman |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 68 Регистрация: 7.4.2006 Репутация: нет Всего: нет |
To VAS
БД MySQL Добавлено @ 12:33 To VAS если хочешь я отправлю копию мыло дай |
|||
|
||||
| Vas |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 830 Регистрация: 29.6.2005 Где: Stavropol region Репутация: 23 Всего: 28 |
Вот попробуй использовать такой запрос, это объединение из двух почти одинаковых, один для газа второй для конденсата. Сортировкой должны добиться вывода цехов по порядку и по типу. Только вот UNION поддерживается MySQL c 4 версии, а у меня естьтоки 3 -------------------- И опыт, сын ошибок трудных, И гений, парадоксов друг, И случай, бог изобретатель. ... (А.С. Пушкин) |
|||
|
||||
| Salaman |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 68 Регистрация: 7.4.2006 Репутация: нет Всего: нет |
to VAS
Не получается |
|||
|
||||
| Vas |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 830 Регистрация: 29.6.2005 Где: Stavropol region Репутация: 23 Всего: 28 |
-------------------- И опыт, сын ошибок трудных, И гений, парадоксов друг, И случай, бог изобретатель. ... (А.С. Пушкин) |
|||
|
||||
| Salaman |
|
||||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 68 Регистрация: 7.4.2006 Репутация: нет Всего: нет |
To VAS
Я писал так
Ошибки
|
||||
|
|||||
| superVad |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 735 Регистрация: 6.4.2006 Где: Черкассы, Украина Репутация: 3 Всего: 15 |
может пробел перед ((p2+p4+p6+p8+p10+p12+p14+p16+p18+p20+p22+p24)) не надо ставить
|
|||
|
||||
| Salaman |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 68 Регистрация: 7.4.2006 Репутация: нет Всего: нет |
Spasibo superVad
no chto oznachaet eto Error Code : 1054 Unknown column 'g.kod' in 'field list' (328 ms taken) |
|||
|
||||
| Akella |
|
|||
![]() Творец ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 18485 Регистрация: 14.5.2003 Где: Корусант Репутация: 29 Всего: 329 |
||||
|
||||
| Salaman |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 68 Регистрация: 7.4.2006 Репутация: нет Всего: нет |
To VAS
Сработала твой SQL код просто я неправильно написал полей спасибо. Но теперь как сделать чтобы похож на первой рисунку VAS помоги FastReporte как это делается рисовать мне чета DBCROSS не красива получается |
|||
|
||||
| Vas |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 830 Регистрация: 29.6.2005 Где: Stavropol region Репутация: 23 Всего: 28 |
Salaman, что именно не устраивает, я так понимаю всего должно идти первой строкой или еще что-то? Для удельного соотношения можешь добавить еще один юнион к результирующему запросу который будет считать удельный вес или делай его как SubDetail с отдельным запросом возвращающим только один цех. Что-то типа такого:
У мене в БД токи 1 месяц вот одна строка и возвращается Это сообщение отредактировал(а) Vas - 27.10.2006, 06:44 -------------------- И опыт, сын ошибок трудных, И гений, парадоксов друг, И случай, бог изобретатель. ... (А.С. Пушкин) |
|||
|
||||
| Salaman |
|
||||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 68 Регистрация: 7.4.2006 Репутация: нет Всего: нет |
Поправте пожалуйста чета у меня ошибки выдает
Ошибка такая
|
||||
|
|||||
| superVad |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 735 Регистрация: 6.4.2006 Где: Черкассы, Украина Репутация: 3 Всего: 15 |
а что ты хочеш если у тебя первые 2 запроса по 4 поля выдают, а последний только 3 (учи английский)
на первый взгляд между g.kod_ms и g.mes чегото не хватает Это сообщение отредактировал(а) superVad - 27.10.2006, 12:16 |
|||
|
||||
| Salaman |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 68 Регистрация: 7.4.2006 Репутация: нет Всего: нет |
Oy spasib as type zabyl napisat
|
|||
|
||||
| Salaman |
|
||||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 68 Регистрация: 7.4.2006 Репутация: нет Всего: нет |
Привет всем Винградцы!
По правте пожалуйста этот код с параметрамы
Ошибка такова
|
||||
|
|||||
| superVad |
|
||||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 735 Регистрация: 6.4.2006 Где: Черкассы, Украина Репутация: 3 Всего: 15 |
кажеться :mes надо в скобочки взять
а вообще нимогу понять зачем там:
может надо
или битвин както использовать? |
||||
|
|||||
| Vas |
|
||||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 830 Регистрация: 29.6.2005 Где: Stavropol region Репутация: 23 Всего: 28 |
Salaman, вроде как параметром список значений для оператора IN передать нельзя.
Придется строить строковую переменную примерно так:
И не забудь в третьем твоем запросе тоже условия поставить в инструкцию WHERE
-------------------- И опыт, сын ошибок трудных, И гений, парадоксов друг, И случай, бог изобретатель. ... (А.С. Пушкин) |
||||
|
|||||
| Salaman |
|
||||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 68 Регистрация: 7.4.2006 Репутация: нет Всего: нет |
VAS Спасибо за совет но я делал так ну короче ползователю выходить диалог окно там поставил
одну Edit и одну ComboBox > Items (Январь,Ферваль.....) а собитие Button написал так
Но одна проблема [B]VAS[B] чета уменя не правильно вычисляеть тоесть делить
В чем проблема незнаю |
||||
|
|||||
| Vas |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 830 Регистрация: 29.6.2005 Где: Stavropol region Репутация: 23 Всего: 28 |
Точно не могу сказать, попробуй погоняй его один и посмотри что не так попадает, выведи суммы в 2 колонки без деления и посмотри. Или можно один запрос написать из двух вложенных, только не знаю как с этим у MySQL.
-------------------- И опыт, сын ошибок трудных, И гений, парадоксов друг, И случай, бог изобретатель. ... (А.С. Пушкин) |
|||
|
||||
| Salaman |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 68 Регистрация: 7.4.2006 Репутация: нет Всего: нет |
Privet vsem
To VAS Почти закончил другие отчети осталься это очтет и еще пару отчет Толко этот отчет мучает меня Сделал запрос как ты сказал по одному таблиц суммируются без проблем но вот почемуто когда обеденяю их неправльно вычисляет Вот структуры две таблиц с данными на 2008 год для проверки может посмотриш у себя структуры таблиц Делаю так
Помоги VAS |
|||
|
||||
| Salaman |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 68 Регистрация: 7.4.2006 Репутация: нет Всего: нет |
VAS u menya drug dal etot zapros unego tam ORacle rabotaet grit a kak sdelat Mysql ili Vingradsy pomogite plz
|
|||
|
||||
| ТоляМБА |
|
||||
![]() Котэ ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1607 Регистрация: 15.12.2004 Репутация: 3 Всего: 252 |
1. Узнай про функцию
- и ищи аналог в MySQL. 2. И еще сорри что не совсем по MySQL, но в MSSQL эта строка должна выглядеть так:
А в принципе, если первую строку заменить на
и запрос хотябы отработает, то грабли в п.1, если нет, попробуй п.2 Это сообщение отредактировал(а) ТоляМБА - 30.11.2006, 14:57 |
||||
|
|||||
| Salaman |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 68 Регистрация: 7.4.2006 Репутация: нет Всего: нет |
Причину нашел но незнаю как решить
У меня в Газ таблице ежедневно добавляются по две записи для одного месторождения различие только в поле Id_gaz А конденсат таблице ежедневно добавляются по одного записи. Например в таблице Газ kod_ms|9|mes|1|data|2008-01-01|P2|2|....P24|2|id_gaz|2| kod_ms|9|mes|1|data|2008-01-01|P2|2|....P24|2|id_gaz|3| Общая сумма газа за январь 48 А в таблице конденсата kod_ms|9|mes|1|data|2008-01-01|P2|5|....P24|5| Общая сумма конденсат за январь 60 Теперь делим конденсат на газ=1,25 должно быть а у меня в запросе выходить 2,50 почему так получаеться? Вот запрос
|
|||
|
||||
| Vas |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 830 Регистрация: 29.6.2005 Где: Stavropol region Репутация: 23 Всего: 28 |
Salaman,
g.mes between 1 and 2 (1<=g.mes<=2) берет 2 месяца, а не один может здесь и есть ошибка если только январь брать и k.mes не надо ставить условие, уже стоит g.mes=k.mes, а g.mes у тебя определен условием, попробуй так:
P.S. Salaman, у меня MySQL 3.23 он UNION не поддерживает, поэтому не проверю. Так что дерзай сам. А вообще советую, отладить все три запроса по одному, а потом их объединить, так тебе будет проще. Ну а без UNION гляну, как время будет. Это сообщение отредактировал(а) Vas - 30.11.2006, 16:44 -------------------- И опыт, сын ошибок трудных, И гений, парадоксов друг, И случай, бог изобретатель. ... (А.С. Пушкин) |
|||
|
||||
| Salaman |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 68 Регистрация: 7.4.2006 Репутация: нет Всего: нет |
VAS ты наверно не правильно понял. Я просто показал за январь. А во всех месяцах проблема с вычислением этот месторождением Делаю так как ты сказал по отдельности правильно суммируют но в вычесление 'удельного' вот пример
Правильный ответ должен так за январь 1,25 а он почемуто добавляют еще 1,25 и в итого ответ2,50 за февраль парвильный так 1,50 а в этом запросе 3,00 |
|||
|
||||
| Salaman |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 68 Регистрация: 7.4.2006 Репутация: нет Всего: нет |
VAS ты как нибудь попробуй на MySQL 3.23 без UNION очень прошу структуры таблиц
|
|||
|
||||
| Vas |
|
||||||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 830 Регистрация: 29.6.2005 Где: Stavropol region Репутация: 23 Всего: 28 |
Salaman, пробуй делать выборку из вложенных запросов, котрые сразу считают суммы, иначе при связи из-за id_gaz записи двоятся из-за неполного указания условий:
и еще когда делишь, делитель бери по условию, на 0 делить нельзя сам знаешь, пиши что-то типа
Самое обидное что и вложенные запросы на 3.23 не пашут, а токи с 4.1 введены -------------------- И опыт, сын ошибок трудных, И гений, парадоксов друг, И случай, бог изобретатель. ... (А.С. Пушкин) |
||||||
|
|||||||
| Salaman |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 68 Регистрация: 7.4.2006 Репутация: нет Всего: нет |
Спасибо VAS за понимания и помощь я твой запрос пробовал но не получился короче мне помог один друг как ты оракулист скачал 5 версию Мускула и потом создал View вот запрос
|
|||
|
||||
| Salaman |
|
||||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 68 Регистрация: 7.4.2006 Репутация: нет Всего: нет |
VAS плз этот запрос опять не правильно вычесляет
Может вложенными запросами поможешь заранее благодарен |
||||
|
|||||
![]()
|
| Правила форума "Delphi: Базы данных и репортинг" | |
|
|
Запрещено: 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делиться вскрытыми компонентами Обязательно указание: 1. Базы данных (Paradox, Oracle и т.п.) 2. Способа доступа (ADO, BDE и т.д.)
FAQ раздела лежит здесь! Если Вам помогли и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, Vit, Петрович. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Delphi: Базы данных и репортинг | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |