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

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 10.12.2005, 18:42   #1  
newikov is offline
newikov
Участник
 
7 / 10 (1) +
Регистрация: 11.11.2005
Народ, подскажите, пожалуйста. Такая проблема. Мне нужно создать выпадывающий список и чтобы значения в нем были результатом некоторой выборки из таблицы. Ну скажем там, названия документов. Я нашел в tutorials пример такой формы, но че-то не могу разобраться. Помогите, пожалуйста. Заранее спасибо.

P.s. Прощу прощения, если я спрашиваю о том, что уже где-то обсуждалось на форуме.
Старый 10.12.2005, 19:58   #2  
mazzy is offline
mazzy
Участник
Аватар для mazzy
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
29,472 / 4494 (208) ++++++++++
Регистрация: 29.11.2001
Адрес: Москва
Записей в блоге: 10
Выпадающий список - это lookup.
ищите в руководстве по этому ключевому слову.

Если ваша выборка является статичной - то:
1. создайте новый тип,
2. укажите что он расширяет нужный вам и
3. задайте relation на этом типе.
В этом случае вам ничего программировать не нужно, просто вытащите на форму контрол вашего типа.

Если ваша выборка зависит от других параметров динамически, то вам нужно переопределить метод lookup у контрола или у датасорса формы. Читайте руководство.
__________________
полезное на axForum, github, vk, coub.
Старый 10.12.2005, 20:10   #3  
newikov is offline
newikov
Участник
 
7 / 10 (1) +
Регистрация: 11.11.2005
Спасибо большое. Попробую почитать.
Старый 11.12.2005, 10:09   #4  
newikov is offline
newikov
Участник
 
7 / 10 (1) +
Регистрация: 11.11.2005
А вот еще. Как можно взять данные из полей выпадывающего списка? В строку или переменную. Вот к примеру в lookup'е у меня 3 поля: имя документа, номер, дата. Имя документа вытащить получается, а вот как остальные поля не знаю. Интересно также как можно забрать данные из неотображаемых в lookup'е полей?

Подскажите, пожалуйста.
Старый 11.12.2005, 11:16   #5  
mazzy is offline
mazzy
Участник
Аватар для mazzy
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
29,472 / 4494 (208) ++++++++++
Регистрация: 29.11.2001
Адрес: Москва
Записей в блоге: 10
Это неправильная постановка задачи.
Суть lookup'а:
1. у вас есть ОДНО поле, в которое надо установить значение
2. вместо того, чтобы набирать руками, вы можете подставить ОДНО значение из списка.

Поэтому вопрос - КУДА вы собираетесь подставить 3 поля?
Вы сейчас будете много программировать. А на самом деле вам надо понять суть того, что вы делаете.
__________________
полезное на axForum, github, vk, coub.
Старый 11.12.2005, 19:17   #6  
newikov is offline
newikov
Участник
 
7 / 10 (1) +
Регистрация: 11.11.2005
Да собственно уже почти все сделал. Процентов на 90. Задача следующая: Перегрузка документов в файл. Есть форма, в которой существует lookup. Есть таблица, в которой три поля: имя документа, номер, дата. Список выпадывает и выдает все записи из этой таблицы. Это все прекрасно работает. Я выбираю один из документов. В string edit'е я ввожу имя файла, в который я перегружаю соответствующие данные. Теперь мне необходимо по нажатию на кнопку перегрузить в соответствующий файл значения всех полей с выбранным документов. У меня получается выбрать название документа [выбранного в lookup'e]. Это делается с помощью метода dragtext. Мне удается его записать в файл. Вопрос в том, как забрать данные из полей номер документа (int) и дата документа (date). И как сделать, если в lookup'е отображаются эти три поля, а в соответствующей таблице имеются 10 полей и как мне значения из оставшихся 7 выбрать?

Я вот пытался написать какой-то запрос. Получал из lookup'а значение документа [записывал его в строковую переменную] и пытался подставлять переменную в запрос. Не работает. Наверное, мне нужны какие-то средства динамического формирования запросов. И как-то это выполнять. Я новичок в Axapt'е. Поэтому возникают такие проблемы.
Старый 12.12.2005, 08:26   #7  
mazzy is offline
mazzy
Участник
Аватар для mazzy
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
29,472 / 4494 (208) ++++++++++
Регистрация: 29.11.2001
Адрес: Москва
Записей в блоге: 10
Цитата:
Сообщение от newikov Посмотреть сообщение
Вопрос в том, как забрать данные из полей номер документа (int) и дата документа (date). И как сделать, если в lookup'е отображаются эти три поля, а в соответствующей таблице имеются 10 полей и как мне значения из оставшихся 7 выбрать?
Забрать? Почему забрать? Почему забрать из lookup'а?
Говорю же, вы не с того конца задачу решаете.

Еще раз повторю.
Суть lookup'а:
1. у вас есть ОДНО поле, в которое надо установить значение
2. вместо того, чтобы набирать руками, вы можете подставить ОДНО значение из списка.
Лукап не используется для решения других задач. Только для этой.

Вы должны получить одно поле.
Затем по нему выполнить поиск в таблице и однозначно найти выбранную вами запись.

Т.е. вам не нужно ЗАБИРАТЬ что-либо из лукапа.
Вам нужно выполнить поиск в таблице, используя выбранное вами значение.
__________________
полезное на axForum, github, vk, coub.
 


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

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

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