Текущее время: Пн, июл 21 2025, 14:59

Часовой пояс: UTC + 3 часа


Правила форума


ВНИМАНИЕ!

Вопросы по SAP Query и Quick View - сюда



Начать новую тему Ответить на тему  [ Сообщений: 22 ]  На страницу 1, 2  След.
Автор Сообщение
 Заголовок сообщения: Запись в файл (во время работы)
СообщениеДобавлено: Пт, дек 01 2006, 10:30 
Менеджер
Менеджер
Аватара пользователя

Зарегистрирован:
Пн, окт 16 2006, 07:31
Сообщения: 628
Откуда: СССР
Пол: Мужской
Коллеги!
У меня возникла необходимость записывать в файл на локальном диске данные во время работы ABAP программы, а точнее во время выполнения пакетного ввода.
Это обусловлено тем, что в случае возникновения Disconnecta с сервером, мы сможем иметь на локальном диске все данные об уже выполненных транзакциях пакетного ввода... в противном случае может возникнуть потребность восстанавливать мандант!

Кто что может подсказать по этому вопросу?

Спасибо!


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Запись в файл (во время работы)
СообщениеДобавлено: Пт, дек 01 2006, 10:38 
Гуру-эксперт
Гуру-эксперт

Зарегистрирован:
Вт, сен 07 2004, 17:47
Сообщения: 2988
Rednaxela написал:
Коллеги!
У меня возникла необходимость записывать в файл на локальном диске данные во время работы ABAP программы, а точнее во время выполнения пакетного ввода.
Это обусловлено тем, что в случае возникновения Disconnecta с сервером, мы сможем иметь на локальном диске все данные об уже выполненных транзакциях пакетного ввода... в противном случае может возникнуть потребность восстанавливать мандант!

Кто что может подсказать по этому вопросу?

Спасибо!
Что это за транзакция, пакетник которой может обрушить целый мандант? А для пакетника используйте SM35 и не надо никаких локальных файлов. В крайнем случае если вы делаете call transaction из своей программы, можно сохранять сообщения в системном журнале (тр. slg1)

_________________
"После" - не значит "вследствие"


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Запись в файл (во время работы)
СообщениеДобавлено: Пт, дек 01 2006, 10:44 
Менеджер
Менеджер
Аватара пользователя

Зарегистрирован:
Пн, окт 16 2006, 07:31
Сообщения: 628
Откуда: СССР
Пол: Мужской
sy-uname написал(а):
Что это за транзакция, пакетник которой может обрушить целый мандант?


Это загрузка неудаляемых объектов с внутренней нумерацией,
например таких как Основные записи материалов, основных средств, и т.п., в количестве сразу нескольких десятков тысяч...

При дисконнекте, необходимо знать, какие номера до данного момента были уже созданы а какие нет, эти данные хранятся в sy- переменных внутри программы...
Поэтому и возникает необходимость их куданибудь писать,
или подскажите где можно посмотреть лог по созданным номерам объектов?


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Запись в файл (во время работы)
СообщениеДобавлено: Пт, дек 01 2006, 11:02 
Почетный гуру
Почетный гуру
Аватара пользователя

Зарегистрирован:
Ср, ноя 23 2005, 13:37
Сообщения: 1805
Откуда: ECC 6.0
Пол: Мужской
Rednaxela написал:
При дисконнекте, необходимо знать, какие номера до данного момента были уже созданы а какие нет, эти данные хранятся в sy- переменных внутри программы...


Когда связь оборвётся, то на фронтэнд всё равно ничего не успет записаться.

Если связь неустойчивая, то можно загнать файлы на сервер приложений и читать оттуда. Или сразу всё считывать в память, если, конечно, поместится.

Чтобы велосипед не изобретать, можно загрузку делать с помощью Data Transfer Workbench (тр. sxda).


Последний раз редактировалось sibrin Пт, дек 01 2006, 11:07, всего редактировалось 1 раз.

Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Запись в файл (во время работы)
СообщениеДобавлено: Пт, дек 01 2006, 11:04 
Менеджер
Менеджер
Аватара пользователя

Зарегистрирован:
Пн, окт 16 2006, 07:31
Сообщения: 628
Откуда: СССР
Пол: Мужской
sibrin написал:
Если связь неустойчивая, то можно загнать файлы на сервер приложений и читать оттуда.


Сервер находиться очень далеко, политики компании строгие, это очень сложно...

sibrin написал:
Или сразу всё считывать в память, если, конечно, поместится.


Каким образом стесняюсь спросить? Во внутреннюю таблицу?


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Запись в файл (во время работы)
СообщениеДобавлено: Пт, дек 01 2006, 11:08 
Почетный гуру
Почетный гуру
Аватара пользователя

Зарегистрирован:
Ср, ноя 23 2005, 13:37
Сообщения: 1805
Откуда: ECC 6.0
Пол: Мужской
Rednaxela написал:
Во внутреннюю таблицу?

Ну да. И запускать в фоне.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Запись в файл (во время работы)
СообщениеДобавлено: Пт, дек 01 2006, 11:10 
Менеджер
Менеджер
Аватара пользователя

Зарегистрирован:
Пн, окт 16 2006, 07:31
Сообщения: 628
Откуда: СССР
Пол: Мужской
sibrin написал:
Ну да. И запускать в фоне.

Ну данные у меня и так подымаются из Excel во нутреннюю таблицу, а вот запускать в фоне :roll: в смысле job-ом? Можно поподробнее с этого места?


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Запись в файл (во время работы)
СообщениеДобавлено: Пт, дек 01 2006, 11:15 
Почетный гуру
Почетный гуру
Аватара пользователя

Зарегистрирован:
Чт, окт 06 2005, 16:44
Сообщения: 3080
Откуда: Москва
Rednaxela написал:
Это загрузка неудаляемых объектов с внутренней нумерацией,
например таких как Основные записи материалов, основных средств, и т.п., в количестве сразу нескольких десятков тысяч...

LSMW поможет. При загрузке через LSMW файл целиком загружается на сервер приложений, а уж там при запуске проблем при дисконнекте не возникнет.
Подробная информация - здесь

_________________
С уважением,
Удав.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Запись в файл (во время работы)
СообщениеДобавлено: Пт, дек 01 2006, 11:20 
Менеджер
Менеджер
Аватара пользователя

Зарегистрирован:
Пн, окт 16 2006, 07:31
Сообщения: 628
Откуда: СССР
Пол: Мужской
Удав написал(а):
LSMW поможет.

У меня в LSMW не хватило функциональности, потому что при создании используется алгоритм создания sub-номеров и есть исключения, и LSMW насколько я знаю, не возвращает созданные SAPом внутренние номера, причем эти внутренние номера должны быть в виде соответствия с условными загрузочными номерами в Excele которые в SAP не грузятся.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Пт, дек 01 2006, 11:27 
Почетный гуру
Почетный гуру
Аватара пользователя

Зарегистрирован:
Чт, окт 06 2005, 16:44
Сообщения: 3080
Откуда: Москва
Ну тогда можно обойтись application log.

_________________
С уважением,
Удав.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Запись в файл (во время работы)
СообщениеДобавлено: Пт, дек 01 2006, 11:43 
Почетный гуру
Почетный гуру
Аватара пользователя

Зарегистрирован:
Ср, ноя 23 2005, 13:37
Сообщения: 1805
Откуда: ECC 6.0
Пол: Мужской
Rednaxela написал:
а вот запускать в фоне :roll: в смысле job-ом? Можно поподробнее с этого места?


Нет, не job'ом.

CALL FUNCTION func IN BACKGROUND TASK
TABLES
ALL_DATA =


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Запись в файл (во время работы)
СообщениеДобавлено: Пт, дек 01 2006, 11:57 
Менеджер
Менеджер
Аватара пользователя

Зарегистрирован:
Пн, окт 16 2006, 07:31
Сообщения: 628
Откуда: СССР
Пол: Мужской
sibrin написал:
CALL FUNCTION func IN BACKGROUND TASK
TABLES
ALL_DATA =


У меня нет CALL FUNCTION. У меня пакетный ввод в программе типа perform open_group.
perform bdc_dynpro...
perform bdc_field... .

Или можно всю это подпрограмму оформить как функцию а потом вызвать ее как баггроунд таск?


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Запись в файл (во время работы)
СообщениеДобавлено: Пт, дек 01 2006, 12:29 
Почетный гуру
Почетный гуру
Аватара пользователя

Зарегистрирован:
Ср, ноя 23 2005, 13:37
Сообщения: 1805
Откуда: ECC 6.0
Пол: Мужской
Rednaxela написал:
perform open_group.
perform bdc_dynpro...
perform bdc_field... .


Да, про это я забыл. Так не пройдёт.

Не зря советуют использовать bapi.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Пт, дек 01 2006, 14:05 
Директор
Директор
Аватара пользователя

Зарегистрирован:
Ср, сен 22 2004, 08:42
Сообщения: 1079
Откуда: Москва
Пол: Мужской
А почему нельзя просто рестартануть сеанс пакетного ввода?


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Пт, дек 01 2006, 14:25 
Менеджер
Менеджер
Аватара пользователя

Зарегистрирован:
Пн, окт 16 2006, 07:31
Сообщения: 628
Откуда: СССР
Пол: Мужской
Mike1 написал:
А почему нельзя просто рестартануть сеанс пакетного ввода?


Те записи которые уже созданы имеют уникальные системные номера, и при рестарте, создадутся дубликаты основных записей с другими номерами...

Рестартануть можно только после backup манданта. :shock:


Принять этот ответ
Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 22 ]  На страницу 1, 2  След.

Часовой пояс: UTC + 3 часа


Кто сейчас на конференции

Сейчас этот форум просматривают: Google [Bot]


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

Найти:
Перейти:  
cron
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Русская поддержка phpBB