07.08.2008, 14:42 | #1 |
Участник
|
Частичное архивирование базы
Здравствуйте! Подскажите, пож-та, как можно реализовать следующее..
Появилась потребность архивировать некоторые таблицы базы, урезанные по определенному критерию..Поступило предложение использовать DTS, и при нажатии на кнопку в Аксапте запускать уже настроенные DTS. Как реализовать вызов в Аксапте? Может кто-то уже сталкивался с подобной задачей? |
|
07.08.2008, 16:50 | #2 |
Axapta
|
Цитата:
Execute a DTS package from X++
Recently someone asked how to execute a DTS package from X++. This was a great question and great timing because I had just recently completed a project that had to execute a DTS package. Below is the code that will allow you to do this: X++: protected void runDTSpkg() { OdbcConnection cn; ResultSet rs; Statement s; str SQL; str temp; ; // Open up a connection to the Master Database, and execute the DTS package cn = this.CN("master"); s = cn.createStatement(); SQL = "xp_cmdshell 'dtsrun /SVSQL /Usomeuser /Pblocked /NPumpOverCS_SHIP'"; rs = s.executeQuery(SQL); while(rs.next()) { // Here you could see if an error occurs, or just use this loop to allow the DTS to finsih. temp = rs.getString(1); MMI_ErrLog::logError("PkgScoop",strfmt("%1",temp)); } } xp_cmdshell 'dtsrun /SVSQL /Usomeuser /Pblocked /NPumpOverCS_SHIP' The /S = Server Name, /U = User Name, /P = Password /N = Name of DTS package to execute. Notice that the parms are ran together with what your passing. This Must happen or you get an error. Another thing I wanted to point out was that I do a while(rs.next()) {...} for the resultset. When executing a DTS package through the stored procedure xp_cmdshell results are returned telling you about what is going on. You can read these results and act on them, or do like I do and just put them into a general log table. Whatever you do though, you must preform the while(rs.next()) {...} so you can allow the DTS to fully finish before you continue to your next block of code that I assume would operate on the data that the DTS package brought in / manipulated, etc. |
|
07.08.2008, 17:06 | #3 |
Модератор
|
ммм.. разрешенный xp_cmdshell.. несекьюрно как-то
__________________
-ТСЯ или -ТЬСЯ ? |
|
08.08.2008, 11:31 | #4 |
Участник
|
oip, спасибо! попробуем..
|
|
Теги |
документация |
|
Похожие темы | ||||
Тема | Ответов | |||
Ищу готовые базы Axapta | 25 | |||
Размер базы | 13 | |||
Вопрос по журналу базы данных(лог) | 2 | |||
Отдельные базы, Компании или Фин. аналитика? | 11 | |||
Частичное списание стоимости ОС | 9 |
|