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

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 01.10.2004, 12:46   #1  
demID is offline
demID
Участник
 
61 / 12 (1) ++
Регистрация: 16.08.2004
Адрес: Москва
Angry Отображение названия вместо кода!
Замучала меня Аксапта тем, что везде вместо названия показывает код!

У нас в lookup'ах очень часто используется различная номенклатура - готовая продукция, сырье и материалы и т.д. При этом названия номенклатуры очень длинные - их сокращения не влезают в 20 символов аксаптовского EDT ItemId - постоянно получаются дубликаты.
Например, есть "Гофротара ДА 2л без кр. Италия 350*159*249", а есть "Гофротара ДА 2л без кр. Италия 288x194x255" - как такие названия запихнуть в коды, чтобы коды были "говорящими"?

Расширять EDT ItemId не имеет смысла - нельзя ключевые поля делать длинными.

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

Вот так я решаю эту проблему.
а) Во всех таблицах, где есть сслыка на InventTable по ItemId я создал display metod, который возвращает наименование номенклатуры по коду.
б)Отображаю этот display metod в форме
d) Рядом справа размещаю поле ItemId и делаю его ширину равной 15, чтобы оствавлась видимой только кнопка lookup button.
в) В результате эта конструкция работает как раскрывающийся список, из которого пользователь выбирает номенклатуру и видит название, а не код видимой номенклатуры.

Два вопроса:
1. Есть ли более разумные и быстрые способы отображения вместо кода номенклатуры ее названия с возможность lookup-выбора? (Такая функциональность, например, есть в MS Access).
2. Как сделать цвет фона поля, основанного на display metod'е белым? А то он все время серый!
__________________
Когда гестапо перекрыло все выходы, Штирлиц вышел через вход!
Старый 01.10.2004, 12:58   #2  
George Nordic is offline
George Nordic
Модератор
Аватар для George Nordic
Злыдни
 
4,479 / 1250 (50) ++++++++
Регистрация: 17.12.2003
Адрес: Moscow
Записей в блоге: 9
1) Перекрой лукап. Создай свой на InventTable и убери из него упоминание о ItemId - оставь только ItemName.
2) Не вижу смысла в edit методе... а display не подходит? Он вроде белый фон не гриде дает.. пока не в фокусе...

С Уважением,
Георгий
Старый 01.10.2004, 13:08   #3  
ax_f is offline
ax_f
Участник
 
179 / 10 (1) +
Регистрация: 04.06.2004
Адрес: Россия
2demID
Мне, кажется, что такой подход не очень удачный.

На первый взгяд, часть названия логично перенестив складскую аналитику.

Например:
350*159*249" - в аналитику Размер
ДА 2л без кр - в другую
Италия - в третью

А код будет Гофротара.


Это был пример, можно по другому.
Старый 01.10.2004, 13:19   #4  
demID is offline
demID
Участник
 
61 / 12 (1) ++
Регистрация: 16.08.2004
Адрес: Москва
to George Nordic
Опечатался, у меня не edit, а display-метод. Сейчас отредактирую свое сообщение.
Display-метод не в гриде, а прямо на форме дает серый цвет.
Сейчас попробую перекрыть lookup.

to ax_f - нам очень важно, чтобы это была как отдельная номенклатура. Аналитика - очень абстрактное понятие для пользователей. Да и вдобавок, во-первых, нам не нужна отчетность в разрезе размеров, во-вторых - это будет бесконечное число комбинаций аналитик ( с крышкой/без крышки и т.д. там еще много всяких параметров). В-третьих, у нас вся номенклатура закачивается из других программ, а не редактируется вручную. А в других программах информация о размере хранится только в названии.
__________________
Когда гестапо перекрыло все выходы, Штирлиц вышел через вход!
Старый 01.10.2004, 13:22   #5  
George Nordic is offline
George Nordic
Модератор
Аватар для George Nordic
Злыдни
 
4,479 / 1250 (50) ++++++++
Регистрация: 17.12.2003
Адрес: Moscow
Записей в блоге: 9
согласен с ax_f. Попробуйте делать как можно меньше номенклатур и больше конфигураций.

Удачи!
Георгий
Старый 01.10.2004, 13:36   #6  
ax_f is offline
ax_f
Участник
 
179 / 10 (1) +
Регистрация: 04.06.2004
Адрес: Россия
Цитата:
Изначально опубликовано demID

to ax_f - нам очень важно, чтобы это была как отдельная номенклатура. Аналитика - очень абстрактное понятие для пользователей. Да и вдобавок, во-первых, нам не нужна отчетность в разрезе размеров, во-вторых - это будет бесконечное число комбинаций аналитик ( с крышкой/без крышки и т.д. там еще много всяких параметров). В-третьих, у нас вся номенклатура закачивается из других программ, а не редактируется вручную. А в других программах информация о размере хранится только в названии.
1.
>>Аналитика - очень абстрактное понятие для пользователей.
1. Пользователей уволить или объяснить им, что такое аналитика и как ей пользоваться.

2.
>>нам очень важно, чтобы это была как отдельная номенклатура
нам это кому? пользователям? Вопрос решен в пункте 1. Пользователям теперь важно что бы это была аналитика.

3.
>>нам не нужна отчетность в разрезе размеров
смысл отчета не изменится

4.
>>это будет бесконечное число комбинаций аналитик ( с крышкой/без крышки и т.д. там еще много всяких параметров)

Вот как раз в этом случае аналитика и нужна
Это лучше, чем заводить отдельную номенклатуру для нового размера, цвета одного и т.д.

5.
>>в других программах информация о размере хранится только в названии.
Вопрос также решаем.


Решать Вам.
Можно и аксапту, конечно, переписать полностью по причине того, что в другой программе аналитика в названии хранится или потому что интерфейс отличается от 1С.....
Старый 01.10.2004, 14:19   #7  
demID is offline
demID
Участник
 
61 / 12 (1) ++
Регистрация: 16.08.2004
Адрес: Москва
Вопрос состоял не в том, переписывать ли Аксапту, а в том, как в Аксапте вместо ItemId отображать ItemName, и при этом чтобы выбирался ItemId - чисто программерский вопрос.

Настраивание аналитик - не мое дело.
И еще - хочется развеять миф о том, что один программист на Дельфи или VB может сделать больше, чем команда из 20 консультантов и программистов в Аксапте.
__________________
Когда гестапо перекрыло все выходы, Штирлиц вышел через вход!
Старый 01.10.2004, 15:21   #8  
mazzy is offline
mazzy
Участник
Аватар для mazzy
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
29,472 / 4494 (208) ++++++++++
Регистрация: 29.11.2001
Адрес: Москва
Записей в блоге: 10
Цитата:
Изначально опубликовано demID
Вопрос состоял не в том, переписывать ли Аксапту, а в том, как в Аксапте вместо ItemId отображать ItemName, и при этом чтобы выбирался ItemId - чисто программерский вопрос.
Нет. Это идеологический вопрос. И вопрос производительности.

Вопрос лукапов обсуждался здесь несколько раз.
В двух словах - Аксапта построена на естественных ключах.
Код - естественный ключ - должен быть понятным для человека.
Если вы будете требовать другого - вы погрязнете в программировании.

Поищите обсуждения на форуме.
Старый 01.10.2004, 15:29   #9  
Rokhay is offline
Rokhay
Участник
 
154 / 15 (1) ++
Регистрация: 02.10.2003
Адрес: Ебург
Цитата:
Изначально опубликовано demID
Вопрос состоял не в том, переписывать ли Аксапту, а в том, как в Аксапте вместо ItemId отображать ItemName, и при этом чтобы выбирался ItemId - чисто программерский вопрос.

Настраивание аналитик - не мое дело.
И еще - хочется развеять миф о том, что один программист на Дельфи или VB может сделать больше, чем команда из 20 консультантов и программистов в Аксапте.
В качестве примера можно посмотреть форму

Поставщики->Контакты-> Контактное лицо.

Связь м.у таблицами VendTable.ContactPerson->EmplTable.EmplId, а пользователь фактически видит только EmplTable.Name

Чисто по программистски это - решение для конкретного случая. Вероятно, его можно расширить и для общего случая, если сильно захотеть. Только надо ли? Как бы не действительно не получилось бы переписывание Аксапты.
Старый 01.10.2004, 15:39   #10  
George Nordic is offline
George Nordic
Модератор
Аватар для George Nordic
Злыдни
 
4,479 / 1250 (50) ++++++++
Регистрация: 17.12.2003
Адрес: Moscow
Записей в блоге: 9
Цитата:
Изначально опубликовано Rokhay
Вероятно, его можно расширить и для общего случая, если сильно захотеть.
Боюсь, что нет.. на каждой форме надо перекрывать... можно, правда, попробовать убрать из группы AutoLookup таблицы InventTable поле ItemId и оставить только ItemName.
A Axapty переписывать надо - все-таки он для этого, в частности, и предназначена... правда, это надо делать аккуратно и по делу.

С Уважением,
Георгий
Старый 01.10.2004, 15:41   #11  
Rokhay is offline
Rokhay
Участник
 
154 / 15 (1) ++
Регистрация: 02.10.2003
Адрес: Ебург
Цитата:
Изначально опубликовано George Nordic


A Axapty переписывать надо - все-таки он для этого, в частности, и предназначена... правда, это надо делать аккуратно и по делу.

С Уважением,
Георгий
Аккуратно и по делу - ключевые слова))))) Согласен на 100 %
Старый 01.10.2004, 16:02   #12  
mazzy is offline
mazzy
Участник
Аватар для mazzy
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
29,472 / 4494 (208) ++++++++++
Регистрация: 29.11.2001
Адрес: Москва
Записей в блоге: 10
Цитата:
Изначально опубликовано Rokhay
Связь м.у таблицами VendTable.ContactPerson->EmplTable.EmplId, а пользователь фактически видит только EmplTable.Name
НИ В КОЕМ СЛУЧАЕ НЕ ДЕЛАЙТЕ ТАК!

Это пример крайне неудачного использования Аксапты!
Эту часть явно делал человек, который Аксапту не знает!

В качестве проверки - попробуйте найти что-нибудь в открывшемся списке сотрудников. Получается? А сортировка? А распечатать? Фильтры?
Нет? Ну надо же!

Все это вас ждет, если вы реализуете 1Совский подход.

Но! Это не все. После того, как вы весь функционал ядра по поиску таки перепишете руками, попрофилируйте получившиеся запросы и ужаснитесь! Что будет с производительностью на большом объеме (около 100тыс записей)?

Если у кого-то осталось желание работать руками, а не головой, попробуйте ответить вот на этот вопрос.
http://www.axforum.info/forums/showt...&threadid=2832
Ну как? Нашли приемлимое решение? Именно такие вопросы вас ожидают, если вы реализуете подход - показывать наименование вместо кода.

Еще раз - поищите обсуждения на этом форуме.
Вопрос поднимался неоднократно.
Старый 01.10.2004, 16:03   #13  
demID is offline
demID
Участник
 
61 / 12 (1) ++
Регистрация: 16.08.2004
Адрес: Москва
Talking
Это то, что я и хотел услышать: Аксапту нельзя переписывать, но надо! Это шутка.

На самом деле я свято отношусь к стандартному функционалу Аксапты.
Но в данном случае хочется видеть название, а не код.

Я, кстати сделал - красиво получилось. Если меня кто-нибудь научит вставлять картинки на этом форуме, то я покажу.

PS. Я делаю свой интерфейс в Аксапте для того, чтобы люди с ней работали, так как я знаю требования людей и бизнес-процессы в компании, в которой работаю.
Далее, придут консультанты из консалтинговой конторы, настроят Аксапту так как им надо. А я сделаю мостик между моим функционалом и их. И все будут довольны - и пользователи, и консультанты.
__________________
Когда гестапо перекрыло все выходы, Штирлиц вышел через вход!
Старый 01.10.2004, 16:08   #14  
mazzy is offline
mazzy
Участник
Аватар для mazzy
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
29,472 / 4494 (208) ++++++++++
Регистрация: 29.11.2001
Адрес: Москва
Записей в блоге: 10
Цитата:
Изначально опубликовано demID
Я, кстати сделал - красиво получилось.
Да? Поиск, фильтрация, сортировка, автоотчет работают?
Какова производительность?
Каков объем работ для одной формы/отчета?

Как картинки вставлять - написано здесь
http://www.axforum.info/forums/showt...=&threadid=171
Старый 01.10.2004, 16:10   #15  
mazzy is offline
mazzy
Участник
Аватар для mazzy
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
29,472 / 4494 (208) ++++++++++
Регистрация: 29.11.2001
Адрес: Москва
Записей в блоге: 10
Даю маячок - я ответ знаю
Старый 01.10.2004, 16:10   #16  
George Nordic is offline
George Nordic
Модератор
Аватар для George Nordic
Злыдни
 
4,479 / 1250 (50) ++++++++
Регистрация: 17.12.2003
Адрес: Moscow
Записей в блоге: 9
А видно только из одной формы или изо всех?
Мой совет, случаем, не пробовали?
Кстати, тему действительно мусолили неоднократно... с печальными, между прочим, выводами

С Уважением,
Георгий.
Старый 01.10.2004, 16:35   #17  
demID is offline
demID
Участник
 
61 / 12 (1) ++
Регистрация: 16.08.2004
Адрес: Москва
2mazzy
Поиск, фильтрация и сортировка - для этого создан свой иерархический классификатор наподобии того, который здесь публиковался. В автоотчетах, конечно, дисплей-метод не увидишь, но какой смысл видеть в автоотчете код вида '17583'?

mazzy, я Вас очень уважаю и не хочу с Вами пререкаться. Я просто делаю так, как могу.

Вот как это выглядит


У меня проблема - lookup-форма выравнивается по левому краю того поля, на котором вызывается. Можно ли сделать выравнивание по центру?

PS. Заметьте, мой lookup фильтрует номенклатуру и отображает только нужный тип. На самом деле, иерархия номенклатуры очень сложная.
Вложения
Тип файла: img45498-1 (704.7 Кб, 1175 просмотров)
__________________
Когда гестапо перекрыло все выходы, Штирлиц вышел через вход!
Старый 01.10.2004, 17:06   #18  
Vals is offline
Vals
Аманд
Аватар для Vals
Компания АМАНД
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2009
 
1,765 / 507 (20) +++++++
Регистрация: 27.02.2002
Адрес: Pass partout, Москва
Ещё раз консультантский взгляд на вещи:
Цитата:
"Гофротара ДА 2л без кр. Италия 350*159*249", а есть "Гофротара ДА 2л без кр. Италия 288x194x255"
хочу ещё раз обратить внимание на то, что уже было сказано:

Цитата:
На первый взгяд, часть названия логично перенестив складскую аналитику.
я ЗА-ЗА двумя руками за такое решение.
Ещё есть подозрение, что 350*159*249 это размерность упаковки "доморощенная". Всё, что касается упаковки достаточно стандартизировано, по крайней пере эта гофротара должна влезать на стандартную палету (поддон, если угодно). Ещё предположу, что упаковки могут обозначаться аналогично формату бумаги А4, А3 и т.д.
Если я не прав - пусть меня поправят.

А ещё, если вы будете использовать конфигурирование спецификаций, то с аналитиками это можно будет сделать проще (настройка правил)


Теперь по картинке:
Меня терзают смутные сомнения: на основе этой формы вы сгенерируете Спецификацию?
Если моё предположение верно, то лучше это всё на конфигураторе наваять.

Кстати, параметр "На палете" будет зависеть от упаковки (гофоротара) как вы это сделаете?

P.S. А вы соки производите?
Старый 01.10.2004, 17:15   #19  
demID is offline
demID
Участник
 
61 / 12 (1) ++
Регистрация: 16.08.2004
Адрес: Москва
2vals.
К сожалению, я не готов пока обсуждать консультантские вопросы.

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

Все, что я делаю, согласовано с консультантами.
__________________
Когда гестапо перекрыло все выходы, Штирлиц вышел через вход!
Старый 01.10.2004, 17:25   #20  
demID is offline
demID
Участник
 
61 / 12 (1) ++
Регистрация: 16.08.2004
Адрес: Москва
И еще, добавлю для всех.

Я ни в коем случае не подменяю стандартную функциональность Аксапты. Если вы заметили, на моем рисунке редактируется стандартное поле, основанное на ItemId. Оно просто сжато до маленьких размеров.

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

Все стандартные отчеты и формы останутся в рабочем и почти неизменном состоянии.

Все эти мои модификации относятся только к ИНТЕРФЕЙСУ и добавленным мною таблицам. Данные из этих моих таблиц затем будут программно копироваться в таблицы Аксапта по тем правилам, которые мне определят консультанты.
__________________
Когда гестапо перекрыло все выходы, Штирлиц вышел через вход!
 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
эффективное отображение исполнения кода Evgeniy2020 DAX: Программирование 8 31.07.2008 11:11
Отображение места выполнения кода в отладчике kashperuk DAX: Программирование 5 16.08.2006 12:17
проблема с настройкой штрихового кода Nic DAX: Функционал 4 27.12.2004 09:04
поставщик уведомляет о смене кода ОКПО и\или названия OlegKocherga DAX: Функционал 6 22.01.2004 19:45
Использование штрихового кода (barcode) в Аксапта Pavlo AKA Panok DAX: Функционал 9 17.10.2003 15:13
Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра

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

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

Рейтинг@Mail.ru
Часовой пояс GMT +3, время: 11:06.
Powered by vBulletin® v3.8.5. Перевод: zCarot
Контактная информация, Реклама.