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

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 27.05.2018, 02:02   #1  
AlexSD is offline
AlexSD
Microsoft Dynamics
Сотрудники Microsoft Dynamics
 
257 / 302 (11) ++++++
Регистрация: 14.10.2003
Создание меток для AX7
Где-то чуть менее года назад мне надоело пользоваться notepade.exe для создания меток в Ax7 (встроенное средство еще более неудобное, чем notepade.exe). Сделал себе тогда небольшую утилитку, которая значительно упростила мне эту задачу. Основной сценарий использования - скопировать из спеки текст метки в поле на форме, форма при этом преобразует текст в CamelCase строку, которую можно использовать в качестве метки или имени объекта (EDT, имя поля, класса, таблицы и т.д.)

Надеюсь, там все интуитивно понятно. Особо детально описывать нечего. В поле Label file нужно предварительно выбрать файл, в котором будут создаваться метки. Утилита изначально создавалась для ввода меток на английском языке. Обычно у нас на проектах одновременно создаются метки для двух языков (en-nz, en-au). Но бывают проекты с 4-мя и более языками (например, en-nz, en-au, en-us, en-ca). В таких случаях утилита еще более незаменима по сравнению с notepad.exe.

В настройках есть пара параметров, Ignore words file и Replace chars table file. Первый параметр позволяет указать файл со списком слов (предлоги), которые нужно игнорировать в преобразованной CamelCase строке. Второй параметр позволяет указать файл с таблицей авто замены символов. Это было сделано для того, чтобы обеспечить возможность транслитерации текста метки с "не английского" языка в код метки с буквами латинского алфавита. Примеры обоих файлов прилагаются.

Утилита выпущена под MIT License (все бесплатно, я ни в чем не виноват )

Upd: куда-то делись ссылка и картинка из сообщения. Ссылка на утилиту http://www.axbackup.com/AxLabelCreator/


Последний раз редактировалось AlexSD; 27.05.2018 в 02:35.
За это сообщение автора поблагодарили: Vadik (1), sukhanchik (2), trud (5), raz (5), Logger (7).
Старый 27.05.2018, 08:04   #2  
sukhanchik is offline
sukhanchik
Administrator
Аватар для sukhanchik
MCBMSS
Злыдни
Лучший по профессии 2015
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
3,305 / 3533 (124) ++++++++++
Регистрация: 13.06.2004
Адрес: Москва
Глупый вопрос, но чем неудобно встроенное средство в Visual Studio?
Придумываешь код метки, копируешь его в 2 файла и в 2-х файлах пишешь на разных языках. Потом вставляешь, как метку в объект (опять-таки через буфер обмена все формируется правильно). Готов согласиться, что редактировать одновременно 4 файла менее удобно, чем 2.Также готов согласиться, что при открытии меточные файлы разово тупят, как и для каждого объекта тупит разово непосредственная вставка кода метки.
Но... как бы это относительно мелочи и даже массовое создание меток (допустим сразу штук 10) вполне себе нормальное и терпимое.
В чем было исходное неудобство, которое побудило разработать утилиту?
__________________
Возможно сделать все. Вопрос времени
Старый 27.05.2018, 08:38   #3  
trud is offline
trud
Участник
Лучший по профессии 2017
 
1,039 / 1630 (57) ++++++++
Регистрация: 07.06.2003
Записей в блоге: 1
Цитата:
Сообщение от AlexSD Посмотреть сообщение
Обычно у нас на проектах одновременно создаются метки для двух языков (en-nz, en-au). Но бывают проекты с 4-мя и более языками (например, en-nz, en-au, en-us, en-ca). В таких случаях утилита еще более незаменима по сравнению с notepad.exe.
Еще вопрос - а зачем вести 4 меточных файла, вроде они все английские. т.е. в этом случае достаточно одного (en-us) и аксапта будет подставлять метки из него. т.е. там алгоритм такой - если файла для с языком пользователя нет(например en-au), то АХ ищет файл с en-us
Старый 27.05.2018, 09:26   #4  
AlexSD is offline
AlexSD
Microsoft Dynamics
Сотрудники Microsoft Dynamics
 
257 / 302 (11) ++++++
Регистрация: 14.10.2003
Цитата:
Сообщение от sukhanchik Посмотреть сообщение
но чем неудобно встроенное средство в Visual Studio?
Честно говоря, я не помню уже. Мне сразу было удобнее пользоваться notepad.exe. А тула стала для еще удобнее, чем notepad.exe.
Наверно, стандартный редактор меток был (есть) слишком тормознутный и/или модальный по отношению к остальной студии. Его нужно было открывать мышкой из меню (шорткат вроде есть, но я его не осилил запомнить, возраст ) вместо alt-tab. Прошу прощения, лень запускать рабочий ноут и открывать аксапту. Завтра на работе посмотрю, как там сейчас все работает в стандарте.
Главные достоинства тулы для меня заключается в том, что не надо придумывать код метки и не надо редактировать несколько файлов.

Upd: Дополню, что преобразование текста в CamelCase строку весьма удобное средство для получения имен объектов. Самую первую версию этой тулы у меня выхватил и забрал себе, еще неостывшую, прямо из под компилятора, разработчик на c#. Там вроде народ тоже страдает "придумыванием" кодов для текстовых ресурсов.

Последний раз редактировалось AlexSD; 27.05.2018 в 09:37.
За это сообщение автора поблагодарили: sukhanchik (2).
Старый 27.05.2018, 09:30   #5  
AlexSD is offline
AlexSD
Microsoft Dynamics
Сотрудники Microsoft Dynamics
 
257 / 302 (11) ++++++
Регистрация: 14.10.2003
Цитата:
Сообщение от trud Посмотреть сообщение
Еще вопрос - а зачем вести 4 меточных файла, вроде они все английские. т.е. в этом случае достаточно одного (en-us) и аксапта будет подставлять метки из него. т.е. там алгоритм такой - если файла для с языком пользователя нет(например en-au), то АХ ищет файл с en-us
Скорее всего так происходит в случае, когда файл с языком полностью отсутствует. А если меточный файл уже есть (а он есть, потому что его создали до меня и с определенной целью), то вместо текста будет отображаться код метки.

Последний раз редактировалось AlexSD; 27.05.2018 в 09:38.
Старый 27.05.2018, 12:03   #6  
trud is offline
trud
Участник
Лучший по профессии 2017
 
1,039 / 1630 (57) ++++++++
Регистрация: 07.06.2003
Записей в блоге: 1
Цитата:
Сообщение от AlexSD Посмотреть сообщение
Главные достоинства тулы для меня заключается в том, что не надо придумывать код метки... Там вроде народ тоже страдает "придумыванием" кодов для текстовых ресурсов.
Кстати интерестный момент, а как вы ведете меточные файлы при нескольких разработчиках? у каждого разработчика свой файл или все пишут в один файл, потом решают конфликты?
я просто сам задумывался как называть метки и пока решил называть их так же как в ах2012, просто последовательным номером, закрепив за собой диапазон, но с тулзой наверное удобнее будет как-то по другому
еще бы на гитхаб ее
Старый 27.05.2018, 12:18   #7  
AlexSD is offline
AlexSD
Microsoft Dynamics
Сотрудники Microsoft Dynamics
 
257 / 302 (11) ++++++
Регистрация: 14.10.2003
Цитата:
Сообщение от trud Посмотреть сообщение
Кстати интерестный момент, а как вы ведете меточные файлы при нескольких разработчиках? у каждого разработчика свой файл или все пишут в один файл, потом решают конфликты?
Все разработчики используют один файл. Из-за того, что метки не серийные, все конфликты разрешаются полуавтоматически в пару кликов в окне мерджа при чекине кода.

Я думал про гитхаб, но это мой учебный проект. Прототип. Там исходный код "неидеальный"
Я хочу интерфейс с WinForms переделать на Electron, отрефакторить код, добавить плагины, добавить создание меток из исходного текста по проекту. Или попробовать встроить в студию. Хотя пока мне нравится, что можно по alt-tab переключаться.
Старый 27.05.2018, 12:46   #8  
trud is offline
trud
Участник
Лучший по профессии 2017
 
1,039 / 1630 (57) ++++++++
Регистрация: 07.06.2003
Записей в блоге: 1
Вообще идеально было бы наверное переписать на Excel, и чтобы можно было создавать несколько меток одновременно, при этом имея возможность "подправить" результат перед записью.
интерестно что предложит для этого МС, сейчас идея Option to create or edit labels from the objects стоит как Planned – Mid-Term
https://experience.dynamics.com/idea...0-00155d7cb38d
в любой случае за тулзу спасибо
Старый 27.05.2018, 13:00   #9  
AlexSD is offline
AlexSD
Microsoft Dynamics
Сотрудники Microsoft Dynamics
 
257 / 302 (11) ++++++
Регистрация: 14.10.2003
Спасибо!
Excel - да, уже реквистировали такую фичу
Что бы импортировать текст из Excel. Не знаю только, как получится сделать по времени. Пока мучаюсь с electron-edge. Что-то не срастается он у меня с electron.

Upd. А не, вот только что сросся

Последний раз редактировалось AlexSD; 27.05.2018 в 13:02.
Старый 03.06.2018, 08:02   #10  
AlexSD is offline
AlexSD
Microsoft Dynamics
Сотрудники Microsoft Dynamics
 
257 / 302 (11) ++++++
Регистрация: 14.10.2003
К вопросу об удобстве записал небольшое видео про добавление новых полей в таблицу с использованием AxLabelCreator. Примерно таким образом я использую эту тулу.

https://www.youtube.com/watch?v=LGgK3kAxNYU
Старый 03.06.2018, 10:18   #11  
AlexSD is offline
AlexSD
Microsoft Dynamics
Сотрудники Microsoft Dynamics
 
257 / 302 (11) ++++++
Регистрация: 14.10.2003
Перезалил из-за заканчивающейся на середине видео музыки

https://www.youtube.com/watch?v=CslN26yqQ4Y
Старый 05.10.2018, 11:00   #12  
Pokersky09 is offline
Pokersky09
Участник
 
43 / 60 (3) ++++
Регистрация: 15.11.2012
Адрес: Turkey
Отличная тулза, очень полезная.

Было бы здорово решить вопрос со вставкой значения перевода.
Например на проекте могут быть совершенно разные языки,
En-US
En-Br
Ge-at
Ge

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

В целом идея отличная!

Есть ли код в открытом доступе? Возможно вместе могли бы доработать.
Старый 06.10.2018, 00:12   #13  
AlexSD is offline
AlexSD
Microsoft Dynamics
Сотрудники Microsoft Dynamics
 
257 / 302 (11) ++++++
Регистрация: 14.10.2003
Спасибо за отзыв.
Я пока погряз в пучинах html и jquery в попытке сделать Electron версию тулы. В данный момент реализовано процентов на 60-70 от функционала прототипа.
У меня была идея подключить какой-нибудь онлайн сервис для автоматического перевода меток, а так же онлайн проверку орфографии. Не знаю, доберутся ли когда-нибудь руки до этого.
Я не планировал дополнять функционал прототипа до окончания разработки Electron версии тулы, что бы функционально они были одинаковые. Но, за время прошедшее с момента выхода актуальной версии накопилось несколько поводов, что бы дополнить функционал и сделать еще один выпуск. Правда исходный код прототипа я перепахал, что бы перенести функционал в длл-ки и сделать его отдельным от интерфейса. Не уверен, что я исправил все баги после этого разделения.
Постараюсь на неделе подумать, как можно реализовать дополнительные строки для ввода текста меток на разных языках. А так же решить, делать ли еще один релиз прототипа с дополнительным функционалом до Electron версии или нет.

Исходники пока никуда не выкладывал.
Старый 12.10.2018, 17:09   #14  
Pokersky09 is offline
Pokersky09
Участник
 
43 / 60 (3) ++++
Регистрация: 15.11.2012
Адрес: Turkey
Еще было бы здорово добавить туда же утилиту поиска существующих меток, хотябы в SYS базовых меточных файлах
Старый 14.10.2018, 23:08   #15  
AlexSD is offline
AlexSD
Microsoft Dynamics
Сотрудники Microsoft Dynamics
 
257 / 302 (11) ++++++
Регистрация: 14.10.2003
Цитата:
Сообщение от Pokersky09 Посмотреть сообщение
Еще было бы здорово добавить туда же утилиту поиска существующих меток
Да, самому часто нужна эта фича
Занес в список.

Мне осталось немного доделать Electron UI для тулы. При удачном стечении обстоятельств, это должно занять пару недель (пару weekend-ов). После этого начну добавлять новый функционал.
Старый 15.10.2018, 12:31   #16  
trud is offline
trud
Участник
Лучший по профессии 2017
 
1,039 / 1630 (57) ++++++++
Регистрация: 07.06.2003
Записей в блоге: 1
Цитата:
Сообщение от AlexSD Посмотреть сообщение
Мне осталось немного доделать Electron UI для тулы. При удачном стечении обстоятельств, это должно занять пару недель (пару weekend-ов). После этого начну добавлять новый функционал.
Извиняюсь за офф топ, то это действительно занимает такое время - сделать 1 форму? т.е. мы зря ругаем новую D365, еще есть куда расти
Старый 15.10.2018, 12:46   #17  
AlexSD is offline
AlexSD
Microsoft Dynamics
Сотрудники Microsoft Dynamics
 
257 / 302 (11) ++++++
Регистрация: 14.10.2003
Ну, я же над тулой не работаю по 8 часов в день
Может по часику в день могу выкроить и то редко. В выходные удается подольше посидеть, но далеко не каждый раз. С такими интервалами и перерывами навык набирается с трудом. Тут мне каждый контрол приходится гуглить, прикручивать и докручивать, что бы выглядело плюс-минус органично. Ну и не сравнить, конечно, скорости разработки формы в MorphX, в котором я 15 лет копаюсь, и HTML, CSS, JScript, JQuery, Electron и т.д.
За это сообщение автора поблагодарили: trud (2).
Старый 18.10.2018, 08:25   #18  
f18 is offline
f18
Участник
Аватар для f18
Дети Юза
 
188 / 101 (4) +++++
Регистрация: 09.08.2005
Мы взяли за исходное идею кого-то и доработали...
Делаем записи в несколько языков, потому что есть разница и потом проще подправить ...
( color != colour ) и тд
https://github.com/SmartBusinessLLC/...ster/README.md

Описание С картинками, и более того, мы активно поддерживаем и фиксим, если есть что
За это сообщение автора поблагодарили: trud (10).
Старый 18.10.2018, 09:17   #19  
AlexSD is offline
AlexSD
Microsoft Dynamics
Сотрудники Microsoft Dynamics
 
257 / 302 (11) ++++++
Регистрация: 14.10.2003
Цитата:
Сообщение от f18 Посмотреть сообщение
Мы взяли за исходное идею кого-то и доработали...
Поправьте: "Was tesded on Environment:"
Старый 26.10.2018, 13:17   #20  
Pokersky09 is offline
Pokersky09
Участник
 
43 / 60 (3) ++++
Регистрация: 15.11.2012
Адрес: Turkey
Цитата:
Сообщение от AlexSD Посмотреть сообщение
Перезалил из-за заканчивающейся на середине видео музыки

https://www.youtube.com/watch?v=CslN26yqQ4Y
После просмотра видео стало понятнее, зачем столько полей)

Прикрепите ссылку на ваш офф сайт
Теги
label, label editor

 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
переименовать файл меток в D365 (AX7) alicedr DAX: Программирование 24 14.11.2017 12:27
Создание одинаковых меток Skolos DAX: Программирование 2 12.05.2017 12:25
patrickmouwen: 1yr with AX7 Data Management – My top 12 learnings Blog bot DAX Blogs 2 12.10.2016 15:14
patrickmouwen: AX7 – My top 12 highlights Blog bot DAX Blogs 0 27.02.2016 13:11
mfp: What is new in X++ in AX7? Blog bot DAX Blogs 2 10.02.2016 00:29

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

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

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