24.03.2002, 10:17 | #1 |
сибиряк
|
field Group
подскажите , как получить все (или конкретную field Group) таблицы, и поля в этой группе. вариант с перебором AOT не предлагать
Может можно как-то проще ?
__________________
С уважением, Вячеслав. |
|
25.03.2002, 09:50 | #2 |
Administrator
|
Извините, нет времени отвечать подробно, дам только направление для поисков.
Посмотрите класс DictFieldGroup. Там про него даже помощь какая-то написана.
__________________
Not registered yet? Register here! Have comments, questions, suggestions or anything else regarding our web site? Don't hesitate, send them to me |
|
25.03.2002, 10:54 | #3 |
Участник
|
max, странная поставнока вопроса. Ты не находишь?
Что значит "получить"? Если хочешь "получить", то штатное средство - перебор AOT с помощью классов просмотрщиков-манипуляторов (например, DictFieldGroup). Повторюсь - это штатный и самый прямой путь. Если же что-либо другое, то попробуй сформулировать что ты хочешь от группы полей. |
|
25.03.2002, 11:50 | #4 |
Administrator
|
Сергей, думаю, что под перебором AOT здесь все-таки подразумевалось использование методов treeNode.AOT* С ними все действительно очень сложно получается.
Однако, действительно, некоторые вещи с помощью DictFieldGroup сделать не удастся (не уверен, но кажется добавить поле в группу с помощью этого класса не получится).
__________________
Not registered yet? Register here! Have comments, questions, suggestions or anything else regarding our web site? Don't hesitate, send them to me |
|
25.03.2002, 12:12 | #5 |
Участник
|
Хм... Наверное.
А зачем добавлять поле в группу ПРОГРАММНО? Ты мастера делаешь? Тебе ж еще с синхронизацией и обновлением AOTа придется мучатся... Может проще дать пользователю доступ в репозитарий? Или на худой конец открыть ему только данную таблицу с помощью контектного меню? Это будет штатное использование штатных средств с штатными возможностями по управлению доступом и т.п. Может скажешь что за задача? Не могу себе представить (кроме задач системного программирования) где такая фича могла бы понадобится. |
|
25.03.2002, 12:43 | #6 |
Administrator
|
Сергей, если Вы спрашиваете меня, то конкретной задачи у меня нет. Я просто предположил, какого рода действия не удастя произвест через класс Dict*, а придется использовать treeNode.AOT*
А к какой таблице Вы предлагаете дать пользователю доступ? Кстати, никто не знает, как пользователю разрешить/запретить доступ к части AOT (кажется, можно регулировать доступ к формам, классам и т. п., а вот к конкретным формам и классам можно или нет)?
__________________
Not registered yet? Register here! Have comments, questions, suggestions or anything else regarding our web site? Don't hesitate, send them to me |
|
25.03.2002, 13:09 | #7 |
сибиряк
|
Спасибо за DictFieldGroup.
а задача действительно туманная: у меня есть класс, который выкидывает данные в Excel. Находясь в форме, хочу по каждому Query, привязанному к dataSource выкладывать данные в Excel. Можно каждую таблицу на отдельный лист. Все это проделывается по менюайтему кинутому на произвольную формочку. Что бы уменьшить объем информации хочется выбирать поля таблицы, которые входят в определенную field Group, можно даже Автоотчет. Вот для этого и нужно получить список этих полей. Надеюсь кто-нибудь понял постановку
__________________
С уважением, Вячеслав. |
|
25.03.2002, 21:53 | #8 |
Участник
|
Я, например, нет.
Если тебе эта фича нужна для разработки/отладки, то почему бы тебе не выделить все строчки грида и не кинуть в Эксель через буфер обмена? (выделить все строчки можно нажав на квадрат в верхнем-левом углу грида). Пару раз так проделаешь, поймешь что к чему и пройдет у тебя потребность в такой фиче. Если эта фича нужна для пользователей... Опять же, Ihmo, лучше сделать нормальный отчет с помощью мастера отчетов, а не заниматься программизмом. slava, я не понимаю почему именно такая постановка вопроса? Тебе нужны данные для отладки? Так возьми их без программизма. Тебе нужно дать данные для пользователей? Так сделай им нормальный отчет. |
|
26.03.2002, 06:32 | #9 |
Участник
|
Всем привет!
Задача с выкидыванием данных в Эксель весьма актуальна. Напр., есть такой отчет - акт сверки расчетов между нашим предприятием и другим. Так вот, бухгалтерия хочет иметь возможность его править ручками (т.к. туда попадают разные "ненужные" проводки - напр, сторнировочные). Вариант с RTF-файлом не совсем то, т.к.не получается суммы пересчитывать - мало ли что они там изменят? Но, с другой стороны, нормального инструмента по выгрузке форматированных данных в Эксель тоже нет. Вот вам и задача
__________________
С уважением, Андрей Беседин |
|
26.03.2002, 07:43 | #10 |
сибиряк
|
<b>2mazzy</b>
фича нужна и для разработки/ отладки, и для пользователей. Некоторые комментарии к замечаниям Не очень удобно выкидывать данные простой пометкой грида, так как столбцы, не входящие в грид, упорно не хотят выпрыгивать в Excel. Я в чем-то их даже понимаю К тому же постоянно съезжающая кодировка при таком переносе из Аксапты в Excel, сильно раздражает. По поводу отчетов: сообщение "Отчет отмасштабирован на нн-ое количество процентов" после того как он уже сформировался, приводит пользователей в ступор. Он действительно зачем-то масштабируется! И на листе формата А4 весь текст умещается на уголке листа!!! Причем данная фича приходит и уходит нерегулярно. Пока пытаюсь лечить ее изменением настройки принтеров. Но объясните тогда, почему один отчет масштабируется, а другой нет?! Совсем недавно обнаружил что, выделяя курсором мыши текст в окне сформировавшегося отчета, можно копировать его в другие приложения. Вот если бы Аксапта позволяла выделять листами, цены бы ей не было А выгрузка данных в Excel сейчас активно используется нашими экономистами. Сформировав за определенный период показатели по предприятию (остатки, реализация, приход, розница, касса, банк, ....) во всяких разрезах, они могут за пять минут подготовить любую справку или отчет. При всем желании, в Аксапте это трудно реализовать за такое время. А по выгрузке данных из форм - мне кажется, это просто удобно. Что-то <b>можно</b> делать без программизма. Многое <b>можно</b> делать без программизма. Многое <b>надо</b> делать без программизма. Но только если это многое уже нормально реализовано.
__________________
С уважением, Вячеслав. |
|
26.03.2002, 10:06 | #11 |
Administrator
|
Пара ответов...
Цитата:
Изначально опубликовано Andrew Besedin
Вариант с RTF-файлом не совсем то, т.к.не получается суммы пересчитывать - мало ли что они там изменят? Цитата:
Изначально опубликовано Andrew Besedin
Но, с другой стороны, нормального инструмента по выгрузке форматированных данных в Эксель тоже нет. Цитата:
Изначально опубликовано slava
По поводу отчетов: сообщение "Отчет отмасштабирован на нн-ое количество процентов" после того как он уже сформировался, приводит пользователей в ступор. Он действительно зачем-то масштабируется! И на листе формата А4 весь текст умещается на уголке листа!!! Причем данная фича приходит и уходит нерегулярно. Пока пытаюсь лечить ее изменением настройки принтеров. Но объясните тогда, почему один отчет масштабируется, а другой нет?! Цитата:
Изначально опубликовано slava
...они могут за пять минут подготовить любую справку или отчет. При всем желании, в Аксапте это трудно реализовать за такое время.
__________________
Not registered yet? Register here! Have comments, questions, suggestions or anything else regarding our web site? Don't hesitate, send them to me |
|
26.03.2002, 10:48 | #12 |
сибиряк
|
RE: Кто знает. Наверное, это зависит от опыта работы в конкретной программе.
Нет, скорее это зависит от постановки задачи. Когда приходит начальник отдела и просит дать ему "это, плюс вот это, а вот это в другом разрезе" и все за 5 минут, то не применяя "программизм" в Аксапте получить данные либо очень сложно, либо невозможно в краткие сроки. А тащить каждую такую постановку в систему смысла , как мне кажется, не имеет.
Конечно, многое зависит и от опыта работы в конкретной программе. Но все же иметь инструмент трансфера данных в привычные для большинства пользователей офисные приложения было бы не так уж плохо.
__________________
С уважением, Вячеслав. |
|
26.03.2002, 21:19 | #13 |
Участник
|
К Andrew Besedin
Цитата:
нормального инструмента по выгрузке форматированных данных в Эксель тоже нет
1. Документооборот (без программирования) 2. Отчеты в российском модуле зарплата (с программированием) Хотя все зависит от определения слова "нормальный" К Slava Цитата:
Не очень удобно выкидывать данные простой пометкой грида, так как столбцы, не входящие в грид, упорно не хотят выпрыгивать в Excel
Про масштабирование. Уже рассказали. Скорее всего, ты говоришь про отчет "кассовая книга". В дизайне таких отчетов были оставлены очень широкие элементы (возможно пустые). Если выводится секция с таким элементом, то Аксапта пытается смаштабировать. В частности в кассовой книге так происходит, если печатать с титульным листом. Если печатать без титульного листа, то все нормально. Совет: найди в отчете широкие элементы и измени их ширину. Цитата:
Совсем недавно обнаружил что, выделяя курсором мыши текст...
Цитата:
они могут за пять минут подготовить любую справку или отчет. При всем желании, в Аксапте это трудно реализовать за такое время
Ты наверняка знаешь, что существует два подхода OLTP и OLAP. OLTP - данные можно быстро добавлять и легко изменять. Время выборки большое OLAP - данные обновляются медленно. Однако время выборки минимальное (несколько секунд). Так вот. Аксапта - традиционная OLTP система. Данные для анализа лучше размещать в OLAP-системах. Аксапта имеет штатные средства для работы с MS OLAP. Предполагается, что эффективнее выгрузить данные туда и анализировать там, чем заставлять OLTP-систему корячится. Цитата:
Что-то можно делать без программизма. Многое можно делать без программизма. Многое надо делать без программизма. Но только если это многое уже нормально реализовано.
Считаю, что программировать бизнес-логику - неэффективно и нерентабельно. Считаю, что программировать можно и нужно систему безопасности, черно-белое, дополнительные функции, необходимые в рутинной работе (скопировать, отобрать, заполнить значениями и т.п.) Цитата:
то не применяя "программизм" в Аксапте получить данные либо очень сложно, либо невозможно в краткие сроки
|
|
27.03.2002, 09:46 | #14 |
Administrator
|
Цитата:
Изначально опубликовано mazzy
...И все равно "очень сложно"? Можешь объяснить почему?
__________________
Not registered yet? Register here! Have comments, questions, suggestions or anything else regarding our web site? Don't hesitate, send them to me |
|
28.03.2002, 06:41 | #15 |
сибиряк
|
... А еще к печатаемому элементу можно привязывать MenuItem... Но это уже программирование...
Можно поподробнее? Вот как раз это свойство элементов отчета я в свое время так и не смог понять. Добавляю control в отчет, эксперементирую с типами menuItem, но на экране все равно статический текст. У меня конечно есть предположения как оно должно работать, но хотелось бы знать точно.
__________________
С уважением, Вячеслав. |
|
28.03.2002, 20:03 | #16 |
Участник
|
Цитата:
Изначально опубликовано max
А что делать, если в отчете нужно получить результат некоторой нетривиальной операции над полями (на самом деле, даже разделить одно на другое), то просто отчетом по query уже не обойтись. Видимо, здесь подойдет использование OLAP. Если же хочется обойтись без ОЛАПа, то есть три варианта (разлчаются объемом программирования) 1. Экспортировать стандартный отчет в Эксель. Вычислить нетривиальную функцию в Экселе. 2. В стандартном отчете добавить вычислимое поле (Поле выводит результат display-метода. display-метод надо запрограммировать) 3. Создать с помощью мастера отчетов свой отчет и вставить в свой отчет вычислимое поле. Цитата:
Добавляю control в отчет, эксперементирую с типами menuItem, но на экране все равно статический текст.
|
|