AXForum  
Zurück   AXForum > Microsoft Dynamics AX > DAX: Программирование
All
Kennwort vergessen?
Registrieren Forum Rules Hilfe Benutzerliste Heutige Beiträge Suchen

 
 
Themen-Optionen Thema durchsuchen Ansicht
Alt 13.01.2010, 14:38   #1  
Вата ist offline
Вата
Участник
 
71 / 0 (1) +
Registriert seit: 20.09.2008
Нужная конфигурация из командной строки
Аксапта 3 SP 6. AOS
Всем привет.

Вопрос, как из командной строки запустить класс с параметрами, при этом в нужной конфигурации Аксапты ( файл.ахс)? Сейчас возникла проблема в нужной конфигурации аксапты.
Alt 13.01.2010, 14:59   #2  
Вата ist offline
Вата
Участник
 
71 / 0 (1) +
Registriert seit: 20.09.2008
Может не понятно написал..
Хотелось бы при запуске аксапты (из коммандной строки) избежать запуска формы, выбора Сервера АОС.
Alt 13.01.2010, 15:36   #3  
Andrey Peganov ist offline
Andrey Peganov
Участник
 
10 / 27 (1) +++
Registriert seit: 19.01.2007
Просто сделайте пользователю ярлык на файл .axc. Аксапта запустится с конфигурацией из этого файла, где Вы, видимо, прописали имя хоста и АОСа
Для входа на определенный АОС без окна выбора этого достаточно. Если действительно нужно после запуска Аксапты запустить какой-то класс с параметрами, то потребуется модификация
Alt 13.01.2010, 15:49   #4  
Wamr ist offline
Wamr
----------------
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
 
1.737 / 868 (32) +++++++
Registriert seit: 15.01.2002
Ort: Москва
Blog-Einträge: 7
startupcmd
autorun
Alt 13.01.2010, 15:54   #5  
Вата ist offline
Вата
Участник
 
71 / 0 (1) +
Registriert seit: 20.09.2008
Это все я знаю.. приведенные ссылки читал.. Спасибо..

Я так понимаю ответ: "Никак".. Плохо..
Вариант с ярлыком не подходит, так как хотел из аксапты запускать другой экземпляр аксапты (как альтернатива не работающим в 3ке потокам), с параметрами..
Alt 13.01.2010, 16:05   #6  
George Nordic ist offline
George Nordic
Модератор
Benutzerbild von George Nordic
Злыдни
 
4.480 / 1255 (50) ++++++++
Registriert seit: 17.12.2003
Ort: Moscow
Blog-Einträge: 9
Использовать COM?
Alt 13.01.2010, 16:15   #7  
Вата ist offline
Вата
Участник
 
71 / 0 (1) +
Registriert seit: 20.09.2008
СОМ?! Интересно.. Это как?
Я думал использовать WinAPI::shellExecute()

Geändert von Вата (13.01.2010 um 16:26 Uhr)
Alt 13.01.2010, 17:07   #8  
Вата ist offline
Вата
Участник
 
71 / 0 (1) +
Registriert seit: 20.09.2008
Придумал!
Буду открывать .axc файл, и прописывать там параметр
X++:
startupcmd,Text,
Изврат конечно, но работает
Alt 13.01.2010, 17:20   #9  
George Nordic ist offline
George Nordic
Модератор
Benutzerbild von George Nordic
Злыдни
 
4.480 / 1255 (50) ++++++++
Registriert seit: 17.12.2003
Ort: Moscow
Blog-Einträge: 9
Да запустите COM-конектор, пусть он класс как раз на выполнение и запускает. Лицензию на клиента съэкономите.

С Уважением,
Георгий
Alt 13.01.2010, 17:44   #10  
Вата ist offline
Вата
Участник
 
71 / 0 (1) +
Registriert seit: 20.09.2008
Хмм.. А можно в меня примером кинуть, что то не нашел на форуме?!
В Коме я боюсь не наглядно будет, завершился процес или нет..
Alt 13.01.2010, 18:15   #11  
Andrey Peganov ist offline
Andrey Peganov
Участник
 
10 / 27 (1) +++
Registriert seit: 19.01.2007
Как раз наглядно: вызванная через COM функция вернется с результатом, но только после того как отработает до конца. Т.е. задачу распараллеливания потоков так не решить.
Поясните, какая цель вызова Аксапты из Аксапты? Может быть, есть способ проще.
Через пакетные задания, например
Alt 13.01.2010, 18:28   #12  
Вата ist offline
Вата
Участник
 
71 / 0 (1) +
Registriert seit: 20.09.2008
Задача: Разноски большого кол-ва строк журнала.. Пакеты выполняемые последовательно не справляются с таким объемом.. Поэтому есть желание распараллеить этот процесс, так как сама разноска занимает много времени.
Alt 13.01.2010, 18:58   #13  
Andrey Peganov ist offline
Andrey Peganov
Участник
 
10 / 27 (1) +++
Registriert seit: 19.01.2007
Пакеты можно выполнять параллельно: создайте по пакетному заданию на каждый журнал и поднимите столько пакетных серверов, сколько нужно.
Точнее, сколько потянет СУБД и позволит логика разноски. Потому как главное ограничение параллелизма - блокировки на объектах базы данных.
Alt 13.01.2010, 19:50   #14  
Владимир Максимов ist offline
Владимир Максимов
Участник
КОРУС Консалтинг
 
1.720 / 1207 (44) ++++++++
Registriert seit: 13.01.2004
Blog-Einträge: 3
Zitat:
Zitat von Вата Beitrag anzeigen
Задача: Разноски большого кол-ва строк журнала.. Пакеты выполняемые последовательно не справляются с таким объемом..
Что именно подразумевается под фразой "не справляются"? Чего они не могут сделать?

По какой причине эта операция вообще выносится в отдельный процесс?
Alt 13.01.2010, 22:15   #15  
Vadik ist offline
Vadik
Модератор
Benutzerbild von Vadik
Лучший по профессии 2017
Лучший по профессии 2015
 
3.631 / 1853 (69) ++++++++
Registriert seit: 18.11.2002
Ort: гражданин Москвы
Zitat:
Zitat von Вата Beitrag anzeigen
Задача: Разноски большого кол-ва строк журнала.. Пакеты выполняемые последовательно не справляются с таким объемом..
Вы периодически разносите небольшое количество журналов с большим (>10k) строк (возможно, проводите амортизацию ОС) ? В таком случае, смотрите Ошибка при разноске большого ж-ла ОС.
Если же у Вас в систему постоянно "льется" такой поток больших журналов для разноски, что один пакетный сервер не успевает его "переваривать" (разносить) - наверное, Вы автоматизируете какой-то мегауспешный бизнес, в этом случае можно и денег попросить на апгрейд до AX2009
__________________
-ТСЯ или -ТЬСЯ ?
Alt 14.01.2010, 10:14   #16  
Вата ist offline
Вата
Участник
 
71 / 0 (1) +
Registriert seit: 20.09.2008
Zitat:
Zitat von Andrey Peganov Beitrag anzeigen
Пакеты можно выполнять параллельно: создайте по пакетному заданию на каждый журнал и поднимите столько пакетных серверов, сколько нужно.
Пакеты выполнять параллельно нельзя! Это я попробовал в первую очередь.. Параллельности не увидел.. Делал все на одной машине (может нужно на разных? Что тоже не естьгуд) так, на одно и тоже время назначил две задачи, в результате выполнилась вначале одна и только потом вторая! Поэтому этот вариант не подходит..


Zitat:
Zitat von Vadik Beitrag anzeigen
Если же у Вас в систему постоянно "льется" такой поток больших журналов для разноски, что один пакетный сервер не успевает его "переваривать" (разносить) - наверное, Вы автоматизируете какой-то мегауспешный бизнес, в этом случае можно и денег попросить на апгрейд до AX2009
Успешный бизнес он наверное от того и успешный, что пытается из всего выжать максимум. Да и подход "купите новый продукт, так как старый не делает того, что должен был делать" весьма сомнительный аргумент.
Alt 14.01.2010, 10:37   #17  
Вата ist offline
Вата
Участник
 
71 / 0 (1) +
Registriert seit: 20.09.2008
бл@#%$..
Следующий момент вылез.. Не могу запустить, из xml файла нужный метод класса!
Вот такой код ХМЛ нормально отрабатывает:

Code:
<AxaptaAutoRun version="3.0" exitWhenDone="true" logFile="D:\Work\AxRun\AxaptaAutorun.log">
   <Run 	type="class" name="CommandRunClass_FL" method="main"  />

</AxaptaAutoRun>
А вот такой работать не хочет:
Code:
 <Run 	type="class" name="CommandRunClass_FL" method="run" parameters="'axxml',7" />
Пораждает в логе ошибку:
[Run] - Ошибка: метод не должен требовать параметров.
[Execute] - Ошибка: не удается исполнить команду: Run.

Тоесть у меня счас проблема передать парамметр.

Сам метод выглядит так
X++:
void run(str _sS = '', int _i = 0)
{
    str s;
    ;
    s   =  StrFmt('Класс отработал. Получен параметр %1, %2', _sS, _i)  ;
    info(s );
       
}
Alt 14.01.2010, 10:44   #18  
Andrey Peganov ist offline
Andrey Peganov
Участник
 
10 / 27 (1) +++
Registriert seit: 19.01.2007
Zitat:
Пакеты выполнять параллельно нельзя! Это я попробовал в первую очередь.. Параллельности не увидел.. Делал все на одной машине (может нужно на разных? Что тоже не естьгуд) так, на одно и тоже время назначил две задачи, в результате выполнилась вначале одна и только потом вторая! Поэтому этот вариант не подходит..
Налицо блокировки объектов базы данных и запуск двух процессов даст тот же результат, что и двух пакетных серверов: разноски выполнятся последовательно.
Копать нужно в эту сторону - выяснить что именно блокируется.

Если таблица или индекс целиком, настраивать сервер БД, чтобы блокировки были на уровне записи. Если две разноски меняют одни и те же данные, то чисто технически проблему не решить. Например, если это складские журналы, меняющие остатки одних и тех же номенклатур с одинаковыми аналитиками.

Какая используется СУБД?
Какие журналы разносятся?
Сколько строк в журналах?
Есть ли и, если есть, то какие блокировки в БД, во время параллельной разноски двух журналов?
Alt 14.01.2010, 10:56   #19  
Вата ist offline
Вата
Участник
 
71 / 0 (1) +
Registriert seit: 20.09.2008
Я запускал в пакетах просто циклы, без обращения к БД. До вопроса блокировок ещё не дошел..
Alt 14.01.2010, 11:08   #20  
raz ist offline
raz
NavAx
Benutzerbild von raz
NavAx Club
Лучший по профессии 2014
Лучший по профессии 2009
 
1.499 / 1097 (39) ++++++++
Registriert seit: 22.07.2003
Ort: МО
Zitat:
Zitat von Вата Beitrag anzeigen
Пакеты выполнять параллельно нельзя! Это я попробовал в первую очередь.. Параллельности не увидел.. Делал все на одной машине (может нужно на разных? Что тоже не естьгуд) так, на одно и тоже время назначил две задачи, в результате выполнилась вначале одна и только потом вторая! Поэтому этот вариант не подходит...
Можно! НО! В разных аксаптах. Запустите несколько аксапт в режиме пакетного сервера, каждая со своей пакетной группой. Дальше запускайте обработки в пакетном режиме, с разными пакетными группами.

пакетное задание
пакетная обработка

Geändert von raz (14.01.2010 um 11:14 Uhr)
This post has been rated by: Andrey Peganov (1).
Stichworte
ax3.0, запуск, конфигурационная утилита, параметры

 

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Остановка и запуск сервера из командной строки KiselevSA DAX: Администрирование 13 17.11.2006 14:37
Как открыть ax32.exe из командной строки без ввода пароля? Morpheus DAX: Администрирование 6 16.11.2006 14:57
Как отпроцессить куб из командной строки? slava09 DAX: Программирование 6 01.06.2006 13:51
Параметры командной строки конфигурации listener DAX: Администрирование 3 18.12.2004 00:21
При создании строки в закупке статус строки становится "Отменено" AlexUnik DAX: Функционал 4 27.09.2004 16:05

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Gehe zu

Рейтинг@Mail.ru
Alle Zeitangaben in WEZ +3. Es ist jetzt 04:10 Uhr.
Powered by vBulletin® Version 3.8.5 (Deutsch)
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.