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

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 20.08.2013, 16:14   #1  
vmoskalenko is offline
vmoskalenko
Участник
Аватар для vmoskalenko
 
145 / 334 (12) ++++++
Регистрация: 25.01.2007
Адрес: Toronto
Цитата:
Сообщение от penguin2000 Посмотреть сообщение
В поле Адрес таблицы Address или одноименное поле таблицы CustTable?
Если заливать одной строкой в Address, при создании заказа на продажу, ничего не заполняется в полях раздела "Адрес доставки", например. Если заполнить каждое поле в карточке клиента, например, Город, Индекс, Улица, то все ок.
Вы точно не били всю строку адреса на Город, Индекс, Улица и т.д.?
Ещё раз по порядку.
1. Адрес как просто адрес - не интересен. Интересен адрес клиента или адрес поставщика.
2. Не надо заниматься сортировкой апельсинов и раскладывать по ячейкам улицы, города, области, дома и квартиры. Достаточно запхнуть эту информацию в поле Address. Для печатных форм - самое оно. Но если какой-то пользователь случайно что-то поменяет в таком адресе, то ему (этому пользователю) придётся вводить адрес уже по правилам Аксапты.
P.S. Хотя, у меня на одном проекте было всего около 1500 контрагентов и помошники со стороны клеинта вручную разложили адрес по нужным ячейкам в Экселе. Так и импортировал.

Делюсь опытом как я выполнял миграцию адресов в Аксапту. (На основе статьи)
Кратко:
1. Создаём группу импорта через Мастер импорта из Эксель
2. Поле telex используем как CustTable.AccountNum (или Vendtable.AccountNum)
3. Настраиваем в группе импорта Настройка таблиц - Конвератция. Я использовал свой код:
X++:
// Add code - Start
str account;
str party;
;
// If address is for a customer , and recid for customer is not specificed
if (address.AddrTableId == tablenum(CustTable) && !address.AddrRecId)
{
   account = address.Telex;
   party = CustTable::find(account).PartyId; // Fetch PartyId of customer
   address.AddrRecId = DirPartyTable::find(party).RecId; // fetch RecId of party
   address.AddrTableId = tablenum(DirPartyTable); //fetch number of party table
   address.Telex = ''; //clear
} 
else if (address.AddrTableId == tablenum(VendTable) && !address.AddrRecId)
{
   account = address.Telex;
   party = VendTable::find(account).PartyId; // Fetch PartyId of customer
   address.AddrRecId = DirPartyTable::find(party).RecId; // fetch RecId of party
   address.AddrTableId = tablenum(DirPartyTable); //fetch number of party table
   address.Telex = ''; //clear
}
4. Настраиваем Настройка таблиц - Критерий импорта:
X++:
;

Address.insert(); // Insert method called to import the data
return false; // Bypass the standard AX data import code.
Импортируем наш экселевский файлик через нашу настроенную Группу определений. Да, клиенты и поставщики уже должны быть в системе.
Теги
кладр

 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
amer-ax: It was a great day! Blog bot DAX Blogs 3 29.12.2012 01:02
ax-erp: Creating SSRS-Reports in Dynamics AX 2012 – What’s no longer possible in AX-reports Blog bot DAX Blogs 0 18.07.2012 12:11
emeadaxsupport: New Content for Microsoft Dynamics AX 2012 : October 2011 Blog bot DAX Blogs 0 27.10.2011 17:11
axinthefield: Dynamics AX Event IDs Blog bot DAX Blogs 0 01.03.2011 22:11
daxdilip: Whats New in Dynamics AX 2012 (A brief extract from the recently held Tech Conf.) Blog bot DAX Blogs 7 31.01.2011 12:35
Опции темы Поиск в этой теме
Поиск в этой теме:

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

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

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

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