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

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 13.03.2012, 16:43   #1  
JuniorAx is offline
JuniorAx
Участник
 
134 / 20 (1) +++
Регистрация: 20.07.2011
Адрес: Санкт-Петербург
Запрос к Cust и Vend Trans на разных базах
Здравствуйте уважаемые участники форума!
Суть проблемы с которой столкнулся: Написал отчёт который бегает по CustTrans и VendTrans, отбирает открытые проводки по профилю разноски (поле LedgerAccount).
Разработку и тестирование отчета проводил на тестовой базе, всё прошло ОК!
Перенес на рабочую (импорт/экспорт) и поведение отчета изменилось, выбирает открытые проводки, не фильтруя по заданному в диалоге значению профиля разноски!
Может кто сталкивался с подобным??? На всякий случай ниже текст запроса для CustTrans:
X++:
 qbds = query.addDataSource(tablenum(CustTrans));
    qbds.addRange(fieldnum(CustTrans, LedgerAccount)).value(LedgerAccount);
    qbds.addRange(fieldnum(CustTrans, TransDate)).value(strfmt("..%1", reportDate));
    qbds.addSortField(fieldnum(CustTrans, AccountNum), sortorder::Ascending);

    qbds2 = qbds.addDataSource(tablenum(CustTransOpen));
    qbds2.joinMode(joinmode::ExistsJoin);
    qbds2.relations(true);
Для VendTrans все аналогично.
Структура этих таблиц на тестовой и рабочей базе одинакова.
Ax 3.0 SP5 FP2
Спасибо!
Старый 13.03.2012, 16:55   #2  
Владимир Максимов is offline
Владимир Максимов
Участник
КОРУС Консалтинг
 
1,701 / 1195 (43) ++++++++
Регистрация: 13.01.2004
Записей в блоге: 3
Насколько я в курсе, провиль разноски - это поле PostingProfile. А поля с именем LedgerAccount в таблицах CustTrans и VendTrans - не существует. Имею в виду, в стандарте не существует. Вероятно, это Ваша доработка. Поэтому убедитесь, что это поле есть как в тестовой, так и в рабочей базе.

Кроме того, если поле закрыто Security Key, то, кажется в итоговый запрос оно не добавляется. Т.е. проверьте права на это поле в тестовой и рабочей Axapta.
__________________
- Может, я как-то неправильно живу?!
- Отчего же? Правильно. Только зря...
Старый 13.03.2012, 17:10   #3  
JuniorAx is offline
JuniorAx
Участник
 
134 / 20 (1) +++
Регистрация: 20.07.2011
Адрес: Санкт-Петербург
У нас поле LedgerAccount и PostingProfile означают одно и тоже. т.е. профиль разноски и бухгалтерский счет равны.
А вот, про права вашу теорию нужно будет проверить. Спасибо!
Старый 13.03.2012, 17:19   #4  
Ivanhoe is offline
Ivanhoe
Участник
Аватар для Ivanhoe
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
 
4,143 / 2156 (80) +++++++++
Регистрация: 29.09.2005
Адрес: Санкт-Петербург
Вы написали про фильтр, задаваемый в диалоге. У вас корректно обрабатывается эта ситуация? Возможно, ошибка в работе с предыдущим сохраненным значением фильтра? В тесте работает при указании разных фильтров в диалоге?
__________________
Ivanhoe as is..
Старый 13.03.2012, 17:20   #5  
JuniorAx is offline
JuniorAx
Участник
 
134 / 20 (1) +++
Регистрация: 20.07.2011
Адрес: Санкт-Петербург
Только что проверил, права в порядке. Да и тестовая база является полной копией рабочей, включая права и настройки и всё всё!
Старый 13.03.2012, 20:11   #6  
vallys is offline
vallys
Developer
 
146 / 108 (0) +++++
Регистрация: 18.01.2005
Проверте значения (Value) фильтров (Report\Data Sources\Query\Data Sources\Table\Ranges\Field)
AX 3 не всегда корректно экспортирует/импортирует значения фильтров. Подробности уже не помню.
Старый 13.03.2012, 20:41   #7  
Владимир Максимов is offline
Владимир Максимов
Участник
КОРУС Консалтинг
 
1,701 / 1195 (43) ++++++++
Регистрация: 13.01.2004
Записей в блоге: 3
Кстати, да. Процедура переноса через xpo может "сносить" некоторые настройки, сделанные через дизайнер. Не в коде. Ну, там, Range на DataSource, например.
__________________
- Может, я как-то неправильно живу?!
- Отчего же? Правильно. Только зря...
Старый 14.03.2012, 09:49   #8  
JuniorAx is offline
JuniorAx
Участник
 
134 / 20 (1) +++
Регистрация: 20.07.2011
Адрес: Санкт-Петербург
Добрый день! Для большей ясности немного опишу принцип работы отчёта, в стандартном диалоге 2 поля - дата и профиль разноски. Данные выводятся в Excel, с с использованием буфера. Под отладчиком смотрел текст запроса, всё ОК, т.е. в запрос передается именно тот профиль который указываем в диалоге, т.е. при указании разных профилей фильтрация корректно проходит, а на рабочей какой профиль не укажи все время одно и тоже выводит!
Спасибо!

Последний раз редактировалось JuniorAx; 14.03.2012 в 10:04.
Старый 14.03.2012, 10:08   #9  
Raven Melancholic is offline
Raven Melancholic
Участник
Аватар для Raven Melancholic
Самостоятельные клиенты AX
Лучший по профессии 2015
 
2,164 / 1296 (48) ++++++++
Регистрация: 21.03.2005
Адрес: Москва-Петушки
Если учесть, что у автора Ax3.0, то есть предположение, что разработка велась на двухуровневой конфигурации. Рабочая версия исполняется на 3-х звенке, причем выполнение на сервере. Передача параметров между сервером и клиентом не реализована (на двухзвенке это не проявлялось, так как не было разделения на клиента и сервер).
Посмотрите, правильно ли упаковываются и распаковываются параметры (методы pack/unpack)
За это сообщение автора поблагодарили: S.Kuskov (2).
Старый 14.03.2012, 10:56   #10  
JuniorAx is offline
JuniorAx
Участник
 
134 / 20 (1) +++
Регистрация: 20.07.2011
Адрес: Санкт-Петербург
Спасибо всем участникам за ваши ответы! Вроде решил проблему.
В алгоритме у меня используются 2 временные таблицы, при импорте проекта на рабочую базу, выдавал ошибку что в раб. базе существуют другие объекты с таким ID. Я решил просто руками пересоздать эти таблицы, благо там всего по 6 полей. Видимо ошибка закралась на этом этапе! Сейчас напрямую в .xpo исправил id таблиц, импортировал - всё заработало!
Теперь возник вопрос - где хранятся id объектов, и увеличит ли система его значение, если я сам впишу его для своих таблиц??
Старый 14.03.2012, 11:09   #11  
S.Kuskov is offline
S.Kuskov
Участник
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
 
3,440 / 1775 (66) ++++++++
Регистрация: 28.04.2007
Адрес: Калуга
Цитата:
Сообщение от JuniorAx Посмотреть сообщение
Я решил просто руками пересоздать эти таблицы
Можно было просто на диалоге при импорте *.xpo снять галку "Ипортировать со значениями кодов"
За это сообщение автора поблагодарили: JuniorAx (1).
 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
Запрос с начальным фильтром по-умолчанию yuriy_acti DAX: Программирование 10 17.12.2012 12:38
Ax2009 RU5: класс CustVendAutoSettlement_Cust_RU, метод description() Damn DAX: Программирование 4 18.12.2010 15:42
передача параметров в запрос while select tolstjak DAX: Программирование 13 15.02.2009 19:39
Подскажите пожалуйста, как реализовать запрос через QueryBuild vesna DAX: Программирование 3 24.02.2005 06:52
LedgerTrans -> Cust(Vend)Trans TravellerInTime DAX: Программирование 1 29.06.2004 11:35

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

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

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