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

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 06.08.2002, 11:53   #7  
mazzy is offline
mazzy
Участник
Аватар для mazzy
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
29,472 / 4494 (208) ++++++++++
Регистрация: 29.11.2001
Адрес: Москва
Записей в блоге: 10
2 mick_777:
вот я и говорю, переформулировать.

Идентификация в 1С на логическом уровне выглядит так:
= внутренний код (невидим для пользователя)
= код
= наименование

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

В даном случае будет так:
= идентификатор 1С -> код Аксапты
= комментарий в 1С -> наименование в Аксапте
= внутренний код в 1С -> реквизит

Здесь надо сказать следующее:
Ты скорее всего предполагаешь, что внутренний код не изменяется. Это не так. Никто этого никогда не гарантировал. Говорилось следующим образом: пользователь может менять код, а 1С гарантирует, что объект останется неизменным для системы. Заметь, что про внутренний идентификатор нигде не говорилось! Да, сейчас реализвация такова, что внутренний идентификатор практически никогда не меняется. Но это особенность реализации, а не инвариант. В данных идентификаторы пока нигде не меняются, а в конфигурации могут изменяться при объединении конфигураций.

Теперь рассмотрим код. Код (идентификатор для метаданных) может меняться пользователем. И никогда не меняется самой системой. Пока пропустим данные. Сосредоточимся на метаданных. Что значит изменился идентификатор? Это значит, что во всей конфигурации надо выполнить синтаксическое переименование. Вспомним, что это не Аксапта и синтаксическое переименование в 1С надо делать ручками. Вероятность изменения кода-идентификатора в конфигурации ничтожна. А уж если изменили, то: 1) явно по указанию пользователя, 2) происходит что-то из ряда вон выходящее.

Если еще заметить, что внутренние идентификаторы могут измениться без уведомления, то использование кода будет еще более предпочтительным.

Таким образом:
малой кровью можно обойтись, если идентификатор объекта использовать в Аксапте как код, комментарий объекта использовать как наименование, а внутренний идентификатор затолкать в реквизит. Дополнительно в группу AutoLookup можно затолкать все три поля, тогда их всех будет видно. В этом случае ничего в Аксапте переделывать не надо.

Если волнуют случаи, когда идентификаторы в 1С могут измениться, то можно сделать дополнительные проверки на соотвтетствие идентификатора и внутреннего идентификатора.

Кстати, похоже, что ты пользуешься только данными из SQL-я. ЛУчше подключись к 1С через OLE и получи нужные тебе данные о конфигурации с помощью объекта Метаданные.

2 olesh:
я все еще считаю, что не надо программировать низкоуровненвые вещи. Нужно по возможности использовать стандартные решения, а пргограммировать только там, где без этого действительно не обойтись.

Кстати, по этму лукапу больше всего дурацких вопросов - пользователи не понимают как он работает.
 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
gatesasbait: How to define a custom lookup form for an extended datatype Blog bot DAX Blogs 0 09.07.2008 22:05
Создание Lookup формы Maxim Gorbunov DAX: База знаний и проекты 9 26.06.2007 16:44
Нагло глючит lookup Sada DAX: Программирование 1 08.06.2006 10:32
Динамические Lookup формы. Андрей Василюк DAX: База знаний и проекты 0 07.12.2001 07:07
Произвольная Lookup форма Maxim Gorbunov DAX: База знаний и проекты 0 30.11.2001 21:59

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

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

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