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

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 22.12.2001, 06:03   #1  
Anton Sk. is offline
Anton Sk.
Участник
 
35 / 11 (1) +
Регистрация: 14.11.2002
Переход в другую компанию в программном коде
Всего навсего:

ChangeCompany("DMR")
{
......... //какие-то действия
}

где DMR - название компании

Спасибо за помощь Сергею Мазуркину.
__________________
Антон Скоробогатов
Старый 24.12.2001, 12:42   #2  
Роман Кошелев is offline
Роман Кошелев
Продавец игрушек
Аватар для Роман Кошелев
 
433 / 73 (3) ++++
Регистрация: 22.11.2001
Адрес: Москва
Совершенно не понятно что тут написано.
Это что, надо создать метод такой "ChangeCompany"?
Ерунда. Антон, напиши попонятнее.
__________________
С уважением, Роман Кошелев.
Старый 24.12.2001, 13:34   #3  
Anton Sk. is offline
Anton Sk.
Участник
 
35 / 11 (1) +
Регистрация: 14.11.2002
Это оператор языка. Если надо проделать какие-то действия в другой компании под названием, например, DMR, то необходимо в коде написать этот оператор - ChangeCompany("DMR"){}. Где в круглых скобках указано название компании, а в фигурных - действия, которые мы проделываем в этой компании.

Пример из "Classes\LedgerConsolidate\exportTransact":

X++:
 changecompany(_companyId)
    {
        ttsbegin;

        while select _sumTransact
        {
           .............................................
        }
       .................................................
    }
__________________
Антон Скоробогатов
Старый 19.06.2002, 17:34   #4  
SergS is offline
SergS
Участник
 
8 / 13 (1) ++
Регистрация: 19.06.2002
Адрес: Балашиха
Если положем вам нужно работать с данными из азных компания (всех компаний)

While Select * from dataarea
{
changeCompany(dataarea.Id)
{
AnyTable.Clear();
....
AnyTable.Insert();
}
}

в этом примере все записи будут добавлены только в первую компанию т.к. метод clear() не очищает системные поля (DataAreaId)
Чтобы добавлять записи во все компании необходимо внутри While Select по компаниям создавать экземпляры таблиц, т.е. запускать новый метод, где табличные переменные будут локальными. Пример:

While Select * from dataarea
{
changeCompany(dataarea.Id)
{
this.InsertToTable();
}
}

void InsertToTable()
{
AnyTable anyTable;
;
anyTable.Clear();
.......
anyTable.Insert();
}
Старый 01.08.2002, 20:29   #5  
PlasticinE is offline
PlasticinE
Смотрящий поверх деревьев (Варварский отморозок)
 
243 / 10 (1) +
Регистрация: 06.12.2001
<Зохавано мудератором>
за неуплату
__________________
It's a dirty job, but someone's got to do it. So?
Старый 02.08.2002, 14:18   #6  
mazzy is offline
mazzy
Участник
Аватар для mazzy
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
29,472 / 4494 (208) ++++++++++
Регистрация: 29.11.2001
Адрес: Москва
Записей в блоге: 10
дык,
changecompany принимает в качестве аргемента строку. Строка интерпретируется как идентификатор компании. dataArea.id как раз такая строка и есть

Твой код вставляет строку во все компании, которые перечислены в списке компаний.
Кстати, раз пошла такая пьянка... В своем коде, ты не проверяешь на виртуальные компании. Могут быть проблемы, если myTable входит в табличную коллекцию и входит хотя бы в одну виртуальную компанию.
 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
Lookup в другую компанию CDR DAX: Программирование 21 18.05.2009 12:01
Проблемы при передаче ОС в другую компанию LGray DAX: Функционал 7 21.05.2008 10:04
Как переместить данные в другую компанию? dzeaman DAX: Программирование 5 13.01.2006 20:34
Копирую компанию - меняется ledgertabletrans... Елена Сысовская DAX: Функционал 2 30.05.2003 09:30
Как в коде Axapta перейти в другую Компанию? Anton Sk. DAX: Программирование 2 05.07.2002 19:09

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

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

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