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

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 11.10.2005, 16:10   #1  
vorslov is offline
vorslov
Участник
 
7 / 10 (1) +
Регистрация: 05.10.2005
вопрос про TableBox
Добрый день всем!
Есть таблица region_rmm в которой есть поля No - code - номер менеджера; Name - text 250 - имя менеджера и др...
Есть таблица region_RMM2Partner в которой rmmid - номер менеджера; pid - номер партнера таблыца region_rmm связана с region_RMM2Partner по прлям No <-> rmmid
Есть таблица Customer в которой есть поля No., Name и прочие.
Таблица region_RMM2Partner связана с Customer полем pid <-> No.
Таким образом одному менеджеру из region_rmm привязаны несколько партнеров из Customer.

Создана форма region_rmm в которой отображаются карточки менеджеров эта форма привязана к таблице region_rmm. В эту таблицу помещено поле TableBox в которое должно выводится все привязанные к менеджеру партнеры. К элементу TableBox в поле SourceExp указано TCustomer.Name.

(Не надо предлагать сделать встроенную форму и все реализовать через нее, я на данный момент пытаюсь разобратся с программированием)
В TableBox вставлено поле, которое ссылается на глобальную преременную TCustomer, которая является record -> customer
В коде Form.onAfterGetCurrRecord я пишу следующий код:


TCustomer.RESET;
TRmm2Client.SETFILTER(TRmm2Client.rmmid, Rec.No); // TRmm2Client - record -> region_RMM2Partner
IF TRmm2Client.FIND('-') THEN REPEAT
TCustomer.SETFILTER("No.", TRmm2Client.pid);
TCustomer.FIND('-');

MESSAGE(TCustomer.Name);
UNTIL TRmm2Client.NEXT = 0;

При запуске формы выводятся все партнеры привязанные к менеджеру по средством MESSAGE, но в поле TableBox выводится только последний партнер...
я понимаю, что что то не так делаю и хочу спросить, что не так и как лучше сделать так чтобы все работало.

Спасибо!
Старый 11.10.2005, 16:20   #2  
Rokhay is offline
Rokhay
Участник
 
154 / 15 (1) ++
Регистрация: 02.10.2003
Адрес: Ебург
попробуйте перенести код в метод AfterGetRecord
Старый 11.10.2005, 16:23   #3  
Rokhay is offline
Rokhay
Участник
 
154 / 15 (1) ++
Регистрация: 02.10.2003
Адрес: Ебург
Замечания:
PHP код:
TCustomer.SETFILTER("No."TRmm2Client.pid);
TCustomer.FIND('-'); 
Помойму лучче использовать
PHP код:
      TCustomer.Get(TRmm2Client.pid
И еще не очень понятно, зачем цикл использовать.
Старый 11.10.2005, 16:29   #4  
vorslov is offline
vorslov
Участник
 
7 / 10 (1) +
Регистрация: 05.10.2005
Тот же самый результат за исключением того, что получил последних партнеров для каждого менеджера а не для текущего.
Я пытаюсь разобрался как все это работает и пока не получается...
Старый 11.10.2005, 16:36   #5  
Rokhay is offline
Rokhay
Участник
 
154 / 15 (1) ++
Регистрация: 02.10.2003
Адрес: Ебург
Мда. Прочитал внимательнее.

Цитата:
TableBox в которое должно выводится все привязанные к менеджеру партнеры
Как Вы себе это представляете?
Приведите пример.
Старый 11.10.2005, 16:40   #6  
vorslov is offline
vorslov
Участник
 
7 / 10 (1) +
Регистрация: 05.10.2005
как это должно быть в navision пока не представляю...
идеологически
select pid from region_RMM2Partner where rmmid="No"
{
select name from Customer where No.=row[0]
{
TableBox.add(row1[0])
}
}
Старый 11.10.2005, 16:46   #7  
Rokhay is offline
Rokhay
Участник
 
154 / 15 (1) ++
Регистрация: 02.10.2003
Адрес: Ебург
Мне интересно как это будет выглядить у пользователя, и какой практический смысл. )))

Если сильно хочется, можно для каждой записи формировать строчку, куда запихиватьвсех клиентов.
Хотя такое решение не могу порекомендовать - нужно аккуратно следить за длиной получаемой строки.
Старый 11.10.2005, 16:59   #8  
vorslov is offline
vorslov
Участник
 
7 / 10 (1) +
Регистрация: 05.10.2005
Хочу что бы выглядело это примерно так: см. атач
Миниатюры
Нажмите на изображение для увеличения
Название: nav-1.gif
Просмотров: 383
Размер:	9.3 Кб
ID:	733  
Старый 11.10.2005, 17:47   #9  
Шрэк is offline
Шрэк
Участник
Аватар для Шрэк
 
644 / 24 (2) +++
Регистрация: 09.02.2004
Адрес: Москва
Если я правильно понял задачу, то нужно использовать не TableBox, а суб форму.
Старый 11.10.2005, 18:00   #10  
vorslov is offline
vorslov
Участник
 
7 / 10 (1) +
Регистрация: 05.10.2005
Как сделать с помошью SubForm я разобрался, а вот можно ли это же сделать с помошью TableBox - я просто пытаюсь разобратся с языком и средой. (пусть через одно место, но есть ли принципиальная возможность это сделать?)
 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
Обновление TableBox Iskatel NAV: Программирование 1 22.09.2006 07:50
Простой вопрос. RemO NAV: Программирование 4 16.08.2005 23:39
Вопрос по демо версии от новичка 2novice NAV: Программирование 5 08.02.2005 11:58
еще вопрос по управлению формами DmitryShm NAV: Программирование 1 04.08.2004 17:11
Опции темы Поиск в этой теме
Поиск в этой теме:

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

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

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

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