|
11.04.2006, 11:51 | #1 |
Участник
|
Вопрос "знающим" по отчетам
Всем привет, я новичек. Пришел из Аксеса не могу никак начать врубаться, в Аксапту все непонятно и неудобно , подскажите кто может или дайте ссылку.
1.Можно немго рассказать какие события за какими идут, что надо перекрыть и куда написать Запрос (с групировкой, по нескольким таблицам, вощем запрос я написать смогу) при создании отчета? простые отчеты (без кода) у меня получаются. 2.Как проверить результат запроса (встречал "Вьюха" что это такое?). Знаю что не сложно но не знаю как. |
|
11.04.2006, 12:12 | #2 |
Участник
|
Цитата:
Сообщение от LexusS
1.Можно немго рассказать какие события за какими идут, что надо перекрыть и куда написать Запрос (с групировкой, по нескольким таблицам, вощем запрос я написать смогу) при создании отчета?
простые отчеты (без кода) у меня получаются. Цитата:
Сообщение от LexusS
2.Как проверить результат запроса (встречал "Вьюха" что это такое?). Знаю что не сложно но не знаю как.
Если речь идет о query, то читайте руководство разработчика. Есть два способа - программный (он и описан в руководстве разработчика) Подставить форму в свойства запроса (но этот способ требует хоть каких-то навыков в Аксапте) Начните с программного способа. Начните с RTFM. Рекомендую http://axapta.mazzy.ru/lib/#gettingstarted |
|
11.04.2006, 12:17 | #3 |
Administrator
|
Хех ... Как Аксесник аксеснику (ба! знакомые проблемы! )
0. Все не так просто как в Аксессе - не так описано; малоиспользумеые события могут больше глючить или велика вероятность ошибиться... и вообще много чего неудобно... Аксесс как обычно рулит 1. Перечень событий описан в Developer Guide... но там по кускам инфа - но выдрать можно. Далеко не так как в VBA-шной справке - намного хуже 2. Результат запроса можно проверить только написав тестовый джоб (\Jobs\). Других красивых путей в стандарте нет. Мои попытки сделать что-то типа обозревателя запросов (в плане данных) не привели к какому-либо удачному решению. Да, кстати - нужно учесть фичу - Аксапта и Аксесс немного по-разному представляют себе SQL-запрос - и в Аксапте запрос нельзя подложить (увы ) под отчет. (Сразу подчеркну - нельзя - это означает как правило этого не получается в том понимании как это делалось в Аксессе) Делается это с помощью цикла while путем перебора данных.. Да, и нужно учесть что в синтаксисе X++ конструкции INNER/LEFT/RIGHT/OUTER JOIN нет. Понятно, что эта конструкция может построиться через WHERE, но в прямом виде этого нет. После Аксесса с его удобным построителем запросов - тут гораздо тоскливей... По поводу "вьюхи" - это сохраненный SELECT. Причем в Аксапте - это скульные вьюхи. Собсно говоря сложные запросы (как в Аксессе, с использованием н-цати таблиц или запросы на основе запросов) - здесь в большинстве своем (это я говорю с точки зрения новичка, который начал пробовать свои силы в Аксапте, до этого поработав в Аксессе) таких не получится. Как правило - это будет делаться циклом по выборке записей. А в цикле - уже будут исполняться отдельные sql-запросы (т.е. сложный запрос бьется на несколько маленьких). Примерно так. Хочу сразу отметить - что мое мнение - исключительно основано на личных ощущениях при переходе от Аксесса к Аксапте и написано с точки зрения аксессника.
__________________
Возможно сделать все. Вопрос времени Последний раз редактировалось sukhanchik; 11.04.2006 в 12:26. |
|
11.04.2006, 12:26 | #4 |
Участник
|
Цитата:
Сообщение от sukhanchik
1. Перечень событий описан в Developer Guide... но там по кускам инфа - но выдрать можно. Далеко не так как в VBA-шной справке - намного хуже
Цитата:
Сообщение от sukhanchik
2. Результат запроса можно проверить только написав тестовый джоб (\Jobs\).
Но согласен с тем, что это не для новичков. Цитата:
Сообщение от sukhanchik
Других красивых путей в стандарте нет. Мои попытки сделать что-то типа обозревателя запросов (в плане данных) не привели к какому-либо удачному решению.
Вы про Главное меню \ Администрирование \ Запросы \ База данных \ Журнал трассировки операторов SQL. Кнопка План запроса. Да, кстати - нужно учесть фичу - Аксапта и Аксесс немного по-разному представляют себе SQL-запрос - и в Аксапте запрос нельзя подложить (увы ) под отчет. Делается это с помощью цикла while путем перебора данных.. Да, и нужно учесть что в синтаксисе X++ конструкции INNER/LEFT/RIGHT/OUTER JOIN нет. Понятно, что эта конструкция может построиться через WHERE, но в прямом виде этого нет. После Аксесса с его удобным построителем запросов - тут гораздо тоскливей...[/QUOTE] |
|
11.04.2006, 12:54 | #5 |
Участник
|
2 mazzy
спасибо буду искать. 2 sukhanchik приятно встретить собрата, а то все 1с да 1с. Мысли вслух: Раз уж делали Аксапту, неужели нельзя сделать чтонить поудобнее, ведь сколько времени тратится впустую на форму когда понимаешь содержание, или это просто точный расчет для зарабатывания денег, жалко конечно ведь система на самом деле путевая. |
|
11.04.2006, 13:09 | #6 |
Moderator
|
2 LexusS:
Не могу не вставить свои "5 копеек", ибо путешествие свое по AxForum-у начал практически с аналогичного вопроса. Может, Вам будет полезно: http://www.axforum.info/forums/showt...4358#post94358 Успехов! |
|
11.04.2006, 15:28 | #7 |
Administrator
|
Цитата:
Сообщение от LexusS
Мысли вслух: Раз уж делали Аксапту, неужели нельзя сделать чтонить поудобнее, ведь сколько времени тратится впустую на форму когда понимаешь содержание, или это просто точный расчет для зарабатывания денег, жалко конечно ведь система на самом деле путевая.
То, что она такая получилась - это еще спорный вопрос - хорошо или плохо. Для сравнения - в САПе - существенно меньшая гибкость подстроек - и то что в Аксапте неудобно (с т.з. программирования) - там может быть просто невозможно. Но с другой стороны - САП и меньше подвержен программированию
__________________
Возможно сделать все. Вопрос времени |
|
11.04.2006, 15:24 | #8 |
Administrator
|
2mazzy:
Не.... я не совсем про это... конечно - план запроса (то что Вы привели) - это штука полезная и нужная. Но.... это не то, что имелось в виду под вопросом аксессника. В Аксессе есть возможность сконстрировать запрос на выборку и тут же (не сохраняя его) - одной кнопкой просмотреть результаты выборки. Если запрос сложный (много таблиц/запросов, много связей и условий, есть группировка) - то это является далеко не лишним. К тому же в плане запроса - только большой большой скуль... это некая трансляция скуля аксаптийного в скуль настоящий... Главное - тут нельзя результирующие данные (результат выборки). В отношении свойства Form в запросе... я согласен с тем - что я, имея в виду под запросом выражение select в коде X++ совершенно забыл про объекты Query. Однако - Query - хотя и представляет собой запрос - как объект - его нельзя (или я не знаю как) создать по SQL-строке. Поэтому как верно было подмечено - это отнюдь не для новичков
__________________
Возможно сделать все. Вопрос времени |
|
11.04.2006, 16:57 | #9 |
Участник
|
Цитата:
Сообщение от sukhanchik
В отношении свойства Form в запросе... я согласен с тем - что я, имея в виду под запросом выражение select в коде X++ совершенно забыл про объекты Query.
Цитата:
Сообщение от sukhanchik
Однако - Query - хотя и представляет собой запрос - как объект - его нельзя (или я не знаю как) создать по SQL-строке. Поэтому как верно было подмечено - это отнюдь не для новичков
Именно объекта Query надо начинать изучение. Не для новичков передача параметров из объекта Query в форму. |
|
11.04.2006, 19:04 | #10 |
Administrator
|
Цитата:
Сообщение от mazzy
Не-а! Категорически не согласен.
Именно объекта Query надо начинать изучение. Есть категория людей - которая частично что-то знает. Кто-то изучал C++, C#, Java, SQL, просто работал с базами данных. Если человек программировал в Аксессе непрерывно около года - то он с вероятностью 95% привык к SQL-конструкциям. Уже по постановке задачи можно с ходу сгенерить SQL-запрос. В каком-то смысле это уже образ мысли такой.... Теперь ситуация (а я думаю - она типична для тех, кто пришел изучать Аксапту - до этого активно работавших с T-SQL или Access-SQL) - видит чел новую систему, видит в ней знакомые слова. Очевидно - что вначале - он еще мыслит категориями Аксесса - что заведомо неверно, но процесс идет, и сначала осваиваются запросы из X++, а потом уже следующим этапом идет освоение Query и т.д. Это на моем примере. Мне кажется это типично для всех - кто изучал что-то, что имеет так или иначе отражение в Аксапте (либо другой системе). Конечно, я не имею представление - как правильно (лучше для осознания ) нужно было изучать Аксапту... но - мне кажется я не один такой (и не претендую на гуру) ... Кто изучает Аксапту - работая среди своих коллег - у того скорее всего похожая ситуация
__________________
Возможно сделать все. Вопрос времени Последний раз редактировалось sukhanchik; 11.04.2006 в 19:06. |
|
12.04.2006, 09:37 | #11 |
Участник
|
согласен с sukhanchik. Лично я как аксесник пытаюсь все смотреть сквозь призму аксеса и начинаю сразу делать запросы, и мне очень не хватает милого сердцу конструктора, на думаю что я начинаю потихоньку прозревать.
|
|
12.04.2006, 10:38 | #12 |
Moderator
|
Цитата:
Сообщение от LexusS
согласен с sukhanchik. Лично я как аксесник пытаюсь все смотреть сквозь призму аксеса и начинаю сразу делать запросы, и мне очень не хватает милого сердцу конструктора, на думаю что я начинаю потихоньку прозревать.
|
|