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

Часовой пояс: 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 часа


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

Сейчас этот форум просматривают: нет зарегистрированных пользователей


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

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