AXForum  
Вернуться   AXForum > Microsoft Dynamics AX > DAX: Программирование
DAX
Забыли пароль?
Зарегистрироваться Правила Справка Пользователи Сообщения за день Поиск

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 11.10.2011, 20:54   #1  
Ace of Database is offline
Ace of Database
Участник
Аватар для Ace of Database
 
877 / 649 (23) +++++++
Регистрация: 14.10.2004
А как без программиста вы предлагаете поменять поля местами? В принципе, пользователю можно установить редактор шаблонов отчетов и по кнопочке пусть он открывает отчет в редакторе.
Вы видели картинки редактора отчетов в Fast Report, которые я приводил?
Там любой обученный человек сможет поменять поля местами.

Если можете предложить механизм, который непрограммисту позволит сформировать дизайн счета-фактуры, то на это интересно будет посмотреть. А поменять поля местами в Fast Report - проще простого. Добавить новый шаблон пользователи у нас могут, задать количество копий могут. Если бы поставили вопрос о том, чтобы самим редактировать шаблоны, я бы им сделал. Там очень легко в Fast Report делается.

Последний раз редактировалось Ace of Database; 11.10.2011 в 21:02.
Старый 11.10.2011, 21:00   #2  
Ace of Database is offline
Ace of Database
Участник
Аватар для Ace of Database
 
877 / 649 (23) +++++++
Регистрация: 14.10.2004
Чтобы поменять поля местами, достаточно поменять их только в шаблоне.
Программист не нужен, т.к. шаблон очень просто редактировать.
Старый 12.10.2011, 11:26   #3  
Владимир Максимов is offline
Владимир Максимов
Участник
КОРУС Консалтинг
 
1,719 / 1204 (44) ++++++++
Регистрация: 13.01.2004
Записей в блоге: 3
Цитата:
Сообщение от Ace of Database Посмотреть сообщение
А как без программиста вы предлагаете поменять поля местами?
(...)
Если можете предложить механизм, который непрограммисту позволит сформировать дизайн счета-фактуры, то на это интересно будет посмотреть.
Я не про изменение дизайна, а про изменение содержимого существующих полей. Если отвлечся от конкретных значений, то бланк, например, товарной накладной ТОРГ-12, имеет следующие "поля"
  • Организация-грузоотправитель
  • Структурное подразделение
  • Грузополучатель
  • Поставщик
  • Плательщик
  • Основание
Судя по Вашему описанию, Вы формируете, например, значение поля "Организация-грузоотправитель" примерно так

"Организация-грузоотправитель" = "Название" + "Адрес" + "Телефон" + "Факс"

Т.е. фактически, в отчете, программно формируете содержимое одного поля отчета.

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

"Организация-грузоотправитель" = "Название" + "Адрес" + "Факс" + "Телефон"

Так вот, Ваша реализация предполагает, что это будет либо новый дизайн, либо новый класс. Т.е. предполагает работу программиста. Хотя очевидно, что, если предоставить некую специфическую форму по формированию содержимого полей отчета это вполне мог бы сделать и пользователь. Явно ведь, что это чисто "настроечная" задача.

"Поле отчета" - это "Организация-грузоотправитель", а "Название", "Адрес", "Факс", "Телефон" - это некие условные "слагаемые", некие "кубики" из которых пользователь через специальную настроечную форму будет "складывать" содержимое "поля"

Подобная схема позволяет именно через настройки легко менять содержимое без изменения дизайна. Например, хочет клиент вместо юридического адреса указывать адрес доставки - пожалуйста. Хочет кроме адреса добавить еще и банковские реквизиты - не проблема! И все это исключительно настройками. Без программирования!

Хотя, конечно, изменение дизайна тоже могут потребоваться. Но объем работы программиста существенно снизится. Т.е. эта настроечная форма будет дополнением к Вашей схеме, а не ее заменой.
Старый 12.10.2011, 11:55   #4  
Ace of Database is offline
Ace of Database
Участник
Аватар для Ace of Database
 
877 / 649 (23) +++++++
Регистрация: 14.10.2004
Нет, вы неправильно поняли

Чтобы сформировать строку вида "Организация-грузоотправитель" = "Название" + "Адрес" + "Телефон" + "Факс"

в дизайне отчета создается один (!) элемент, внутри которого можно писать константный текст, а можно чередовать поля с данными. Содержание элемента для вашего примера будет таким:
<<<Организация-грузоотправитель: [Клиент."Название"];[Клиент."Адрес"];[Клиент."Телефон"];[Клиент."Факс"]>>>

Квадратные скобки открывают и закрывают поля с переменными данными. Вы можете просто поменять внутри элемента текст, переставить местами два поля.

Вот как это выглядит в редакторе. На примере в отчет будет выведено слово "Плательщик", за ним последует поле "Название плательщика", затем последует адрес плательщика. Если название и адрес надо поменять местами, то их просто надо в тексте контрола поменять местами
Миниатюры
Нажмите на изображение для увеличения
Название: Плательщик.JPG
Просмотров: 358
Размер:	109.4 Кб
ID:	7215  

Последний раз редактировалось Ace of Database; 12.10.2011 в 11:59.
Старый 12.10.2011, 12:02   #5  
Ace of Database is offline
Ace of Database
Участник
Аватар для Ace of Database
 
877 / 649 (23) +++++++
Регистрация: 14.10.2004
Можно вообще в одном контроле располагать текст и данные произвольно, в том числе в многострочном виде. Вот пример контрола, внутри которого содержится сразу несколько граф, в которых чередуются подписи и данные:
Миниатюры
Нажмите на изображение для увеличения
Название: Сложные поля.JPG
Просмотров: 353
Размер:	119.0 Кб
ID:	7216  
Старый 12.10.2011, 12:04   #6  
Ace of Database is offline
Ace of Database
Участник
Аватар для Ace of Database
 
877 / 649 (23) +++++++
Регистрация: 14.10.2004
В приведенном примере вместо текста [CTD_ReportSummary1."ManagerName"] будет вставлена фамилия руководителя.
А вместо [CTD_ReportSummary1."IManName"] будет вставлена фамилия бухгалтера.

Последний раз редактировалось Ace of Database; 12.10.2011 в 12:06.
Старый 12.10.2011, 12:10   #7  
Владимир Максимов is offline
Владимир Максимов
Участник
КОРУС Консалтинг
 
1,719 / 1204 (44) ++++++++
Регистрация: 13.01.2004
Записей в блоге: 3
Цитата:
Сообщение от Ace of Database Посмотреть сообщение
Нет, вы неправильно поняли
(...)
Квадратные скобки открывают и закрывают поля с переменными данными. Вы можете просто поменять внутри элемента текст, переставить местами два поля.

Вот как это выглядит в редакторе:
Вы по прежнему думаете как программист Я не сомневаюсь, что изменить код или дизайн для программиста - не проблема.

Несколько наводящих вопросов:

1. КТО будет это делать? Программист или пользователь?
2. Результат модификации - это ЧТО? Новый класс, новый отчет?
3. А БЕЗ создания новых объектов (классов, отчетов) для подобной модификации обойтись нельзя? Ну, если не всегда, то хотя бы в "половине" случаев?

Судя по Вашему ответу, задача настройки решается программными средствами. Можно, конечно. Только, как я и говорил, программист превращается в "генератор отчетов"
Старый 12.10.2011, 12:20   #8  
Ace of Database is offline
Ace of Database
Участник
Аватар для Ace of Database
 
877 / 649 (23) +++++++
Регистрация: 14.10.2004
Отвечаю на вопросы (если надо переставить местами два поля)
1. Это будет делать тот, что владеет дизайнером отчетов в Fast Report. Перепрограммировать ничего не надо.

2. Результат модификации - новый шаблон отчета (файл), чтобы система его подцепила, надо указать его в настройках. Можно в том же шаблоне отчета поменять поля местами, тогда настраивать ничего не надо.

Вы что, никогда не создавали шаблонов в Эксель? Это то же самое.
Если надо ихменить существующий шаблон, то просто сохраняете изменение в файле, если надо поменять поля местами в новом файле, то просто сохраняете измененный файл под новым именем. Только в этом случае файл с новым именем надо указать в настройках клиента.

Ничего программировать не надо, если не добавляется новых полей (которых еще нет нигде в этом отчете), и если не изменяется алгоритм заполнения полей.

Расположение полей в отчете не имеет никакого значения для программиста.
Старый 12.10.2011, 16:29   #9  
Ace of Database is offline
Ace of Database
Участник
Аватар для Ace of Database
 
877 / 649 (23) +++++++
Регистрация: 14.10.2004
Цитата:
Сообщение от Владимир Максимов Посмотреть сообщение
Вы по прежнему думаете как программист
Я думаю не как программист. Зачем вы вешаете ярлыки, не зная всех моих мотивов?
Скорее, я думаю как коммерсант.

У меня есть пара коробочных продуктов. Через некоторое время я их представлю, и может быть получу даже заказы на внедрение

Один из этих продуктов я вкратце описал здесь. Fast Report сам по себе тоже пришлось допиливать, чтобы получился гибкий функционал.

Просто так проекты к этим продуктам разместить не могу, т.к. требуется внедрение, обучение. Все заработает скорее всего на первый же день. Просто интрумент настолько гибкий и мощный, что придется какое-то время консультировать заказчиков по его использованию.

Еще пока до конца не уверен, стоит ли ввязываться во все это
Старый 12.10.2011, 17:21   #10  
Владимир Максимов is offline
Владимир Максимов
Участник
КОРУС Консалтинг
 
1,719 / 1204 (44) ++++++++
Регистрация: 13.01.2004
Записей в блоге: 3
Цитата:
Сообщение от Ace of Database Посмотреть сообщение
Я думаю не как программист. Зачем вы вешаете ярлыки, не зная всех моих мотивов?
Скорее, я думаю как коммерсант.
Ну, я исходил из предложенного Вами способа решения поставленной задачи. Чисто программистский. Написать код, изменить шаблон. Это не есть работа пользователя. Если обидел, то извините. Ничего плохого не имел в виду...
Старый 12.10.2011, 12:01   #11  
ice is offline
ice
Участник
Аватар для ice
Лучший по профессии 2014
 
1,822 / 402 (17) +++++++
Регистрация: 23.03.2006
Цитата:
Сообщение от Владимир Максимов Посмотреть сообщение
Я не про изменение дизайна, а про изменение содержимого существующих полей. Если отвлечся от конкретных значений, то бланк, например, товарной накладной ТОРГ-12, имеет следующие "поля"
  • Организация-грузоотправитель
  • Структурное подразделение
  • Грузополучатель
  • Поставщик
  • Плательщик
  • Основание
Судя по Вашему описанию, Вы формируете, например, значение поля "Организация-грузоотправитель" примерно так

"Организация-грузоотправитель" = "Название" + "Адрес" + "Телефон" + "Факс"

Т.е. фактически, в отчете, программно формируете содержимое одного поля отчета.

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

"Организация-грузоотправитель" = "Название" + "Адрес" + "Факс" + "Телефон"

Так вот, Ваша реализация предполагает, что это будет либо новый дизайн, либо новый класс. Т.е. предполагает работу программиста. Хотя очевидно, что, если предоставить некую специфическую форму по формированию содержимого полей отчета это вполне мог бы сделать и пользователь. Явно ведь, что это чисто "настроечная" задача.

"Поле отчета" - это "Организация-грузоотправитель", а "Название", "Адрес", "Факс", "Телефон" - это некие условные "слагаемые", некие "кубики" из которых пользователь через специальную настроечную форму будет "складывать" содержимое "поля"

Подобная схема позволяет именно через настройки легко менять содержимое без изменения дизайна. Например, хочет клиент вместо юридического адреса указывать адрес доставки - пожалуйста. Хочет кроме адреса добавить еще и банковские реквизиты - не проблема! И все это исключительно настройками. Без программирования!

Хотя, конечно, изменение дизайна тоже могут потребоваться. Но объем работы программиста существенно снизится. Т.е. эта настроечная форма будет дополнением к Вашей схеме, а не ее заменой.
вы предпологаете что пользователь знает структуру данных, что может так запросто менять выводимую информацию? простое, на первый взгляд, поле в печатной форме может содержать информацию из целой кучи несвязанных таблиц

Последний раз редактировалось ice; 12.10.2011 в 12:04.
Старый 12.10.2011, 12:24   #12  
Владимир Максимов is offline
Владимир Максимов
Участник
КОРУС Консалтинг
 
1,719 / 1204 (44) ++++++++
Регистрация: 13.01.2004
Записей в блоге: 3
Цитата:
Сообщение от ice Посмотреть сообщение
вы предпологаете что пользователь знает структуру данных, что может так запросто менять выводимую информацию? простое, на первый взгляд, поле в печатной форме может содержать информацию из целой кучи несвязанных таблиц
Пользователю это знать не надо. Пользователь видит некоторые условные "кубики". Например, "Телефон", "Название клиента", "Юридический адрес". И используя эти "кубики" формирует требуемый текст. А уже программный код, по названию "кубика" сам "понимает" откуда надо взять информацию.
Миниатюры
Нажмите на изображение для увеличения
Название: screen1.jpg
Просмотров: 365
Размер:	115.9 Кб
ID:	7217  
Старый 12.10.2011, 12:31   #13  
Ace of Database is offline
Ace of Database
Участник
Аватар для Ace of Database
 
877 / 649 (23) +++++++
Регистрация: 14.10.2004
Да, то это альтернатива, согласен
Но у всего есть свои плюсы и минусы. В Fast Report пользователь сразу видит поля на своем месте. Недостаток конечно есть в том, что поля обозначаются латинскими буквами, и если надо добавить новое поле, то пользователь не знает как оно называется.
Старый 12.10.2011, 12:34   #14  
Ace of Database is offline
Ace of Database
Участник
Аватар для Ace of Database
 
877 / 649 (23) +++++++
Регистрация: 14.10.2004
Но копировать, размножать и переставлять местами поля в Fast Report одно удовольствие.
Всякие линии там рисовать
Старый 16.10.2011, 21:17   #15  
RVS is offline
RVS
Сенбернар
Аватар для RVS
Злыдни
 
696 / 130 (6) +++++
Регистрация: 27.02.2003
Адрес: Королев МО
Цитата:
Сообщение от Ace of Database Посмотреть сообщение
Но копировать, размножать и переставлять местами поля в Fast Report одно удовольствие.
Всякие линии там рисовать
Так и Ёксель тоже все это с удовольствием делает...

Цитата:
Сообщение от Maxim Gorbunov Посмотреть сообщение
А по цене FastReport Вы не могли бы сориентировать? Что-то я у них на сайте посмотрел, разные комплекты поставки стоят от 500 до 3,500 долларов. Какой именно набор их продуктов Вы использовали? И как он лицензируется?
Максим, это намек. На то, что Excel практически бесплатен
__________________
Best Regards,
Roman
Старый 12.10.2011, 12:43   #16  
Владимир Максимов is offline
Владимир Максимов
Участник
КОРУС Консалтинг
 
1,719 / 1204 (44) ++++++++
Регистрация: 13.01.2004
Записей в блоге: 3
Цитата:
Сообщение от Ace of Database Посмотреть сообщение
Да, то это альтернатива, согласен
Как я уже говорил, я рассматриваю эту схему не как "замену", а как "дополнение". Цель - хотя бы часть работы по настройке печатных форм переложить на пользователя. Однако, к сожалению, совсем исключить из этой цепочки программиста - не получается

Цитата:
Сообщение от Ace of Database Посмотреть сообщение
Но у всего есть свои плюсы и минусы. В Fast Report пользователь сразу видит поля на своем месте. Недостаток конечно есть в том, что поля обозначаются латинскими буквами, и если надо добавить новое поле, то пользователь не знает как оно называется.
Дело вовсе не в названии. Запомнить пару десятков "кодов" - не проблема. Просто в Вашем случае необходимо создавать новые шаблоны, когда без этого можно обойтись. Один и тот же шаблон вполне можно использовать для разных клиентов, просто заполняя поля отчета разными способами.

Цитата:
Сообщение от Ace of Database
Но копировать, размножать и переставлять местами поля в Fast Report одно удовольствие.
Всякие линии там рисовать
Да какая разница где рисовать! Я же пытаюсь хотя бы в некоторых случаях обойтись вообще БЕЗ рисования.
Старый 12.10.2011, 12:55   #17  
Pustik is offline
Pustik
Участник
 
807 / 372 (14) ++++++
Регистрация: 04.06.2004
Цитата:
Сообщение от Владимир Максимов Посмотреть сообщение
Запомнить пару десятков "кодов" - не проблема.
У нас есть пользователи, которых пользоваться стандартными фильтрами за годы так и не научить. Некоторые просто не хотят включать мозги. Административные методы не помогают
__________________
-Ты в гномиков веришь?
-Нет.
-А они в тебя верят, смотри, не подведи их.
Старый 12.10.2011, 13:22   #18  
Ace of Database is offline
Ace of Database
Участник
Аватар для Ace of Database
 
877 / 649 (23) +++++++
Регистрация: 14.10.2004
Цитата:
Сообщение от Владимир Максимов Посмотреть сообщение
Как я уже говорил, я рассматриваю эту схему не как "замену", а как "дополнение". Цель - хотя бы часть работы по настройке печатных форм переложить на пользователя. Однако, к сожалению, совсем исключить из этой цепочки программиста - не получается
Кстати, можно было бы докрутить класс, который выводит данные в Fast Report, чтобы он преобразовывал поля используя представленную вами на экране форму. Вполне выполнимая задача. Если был бы мотив, чтобы её исполнить.
Некие "метаданные" разработать.

Но все-таки я представил, как бы это работало на нашем предприятии. Мне кажется, все-таки это дополнительно усложнит модификацию печатных форм. т.к. в случае добавления нового поля, нужно будет добавить это поле
1) в таблицу Аксапты
2) в шаблон отчета
3) в код, который выводит данные
4) в метаданные

А без использования метаданных остается только 3 пункта.

Последний раз редактировалось Ace of Database; 12.10.2011 в 13:25.
Старый 12.10.2011, 13:01   #19  
ice is offline
ice
Участник
Аватар для ice
Лучший по профессии 2014
 
1,822 / 402 (17) +++++++
Регистрация: 23.03.2006
Цитата:
Сообщение от Владимир Максимов Посмотреть сообщение
Пользователю это знать не надо. Пользователь видит некоторые условные "кубики". Например, "Телефон", "Название клиента", "Юридический адрес". И используя эти "кубики" формирует требуемый текст. А уже программный код, по названию "кубика" сам "понимает" откуда надо взять информацию.
а каким образом связь между таблицами настраивается? а если данные должны по условию меняться? а добавление новых полей на печатную форму? вообщем случае задача не решаема, нужно исходить из требований
Старый 12.10.2011, 14:25   #20  
Владимир Максимов is offline
Владимир Максимов
Участник
КОРУС Консалтинг
 
1,719 / 1204 (44) ++++++++
Регистрация: 13.01.2004
Записей в блоге: 3
Цитата:
Сообщение от ice Посмотреть сообщение
а каким образом связь между таблицами настраивается?
Это Вы о чем? Вы не знаете какой именно документ печатаете? Какая запись из каких таблиц соответствует конкретному печатаемому документу?

Цитата:
Сообщение от ice Посмотреть сообщение
а если данные должны по условию меняться?
Так не бывает. Один документ (заказ) - один, вполне конкретный, способ формирования данных.

Если Вы имеет в виду, что в зависимости от неких реквизитов документа надо печатать по другому, то пользователь сам, в зависимости от этих самых реквизитов, и должен указать соответствующий набор печатных форм (с соответствующими настройками способа формирования)

Цитата:
Сообщение от ice Посмотреть сообщение
а добавление новых полей на печатную форму?
Это уже задача программиста. Изменение дизайна отчета настройками, в общем случае, не решается

Цитата:
Сообщение от ice Посмотреть сообщение
вообщем случае задача не решаема, нужно исходить из требований
Так я и не говорил, что это решение для общего случая. Я говорил, что подобное решение позволит ЧАСТЬ задач по настройке печатных форм переложить на пользователя. Причем довольно существенную часть
Теги
как правильно, накладная, печатная форма, полезное, счет-фактура

 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
Что делает кнопка "Упорядочить" в форме разноски накладной? Bega DAX: Функционал 1 10.01.2006 12:25
"Сливание" строк с одинаковой номенклатурой в печатных формах. NJD DAX: Функционал 9 24.06.2004 19:41
Что такое "накладные расходы" в отчете по распределению расходов Tony Green DAX: Функционал 0 01.03.2004 12:25
Axapta 2.5 - Система не поддерживает настройку "непрерывности" номерной серии Базо_1 SDA DAX: Администрирование 8 02.10.2003 21:05
Установка "тонкого" клиента MIkeFW DAX: Администрирование 9 04.06.2002 09:31

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход

Рейтинг@Mail.ru
Часовой пояс GMT +3, время: 15:24.