Отчеты и документооборот в SAP R/3 Необходим перепост. Газета "Компьютерные вести" kv.by/index2010473801.htm Опубликовав "SAP-вуду, или О чем не говорят саперы" (pcmag.ru/solutions/detail_print.php?ID=3421) и "Безопасность стран на примере экономической и информационной безопасности SAP" (kv.by/index2010423801.htm), по многочисленным просьбам и в связи с глубоким информационным вакуумом расскажу об отчетах и документообороте SAP. Помимо чисто практической пользы, несаперы могут составлять свое впечатление об этой системе и определяться, стоит ли с нею связываться (помните об отсутствии документации). Отчеты Везде в тексте настоящей статьи под словом «отчет» будем понимать отчет в обычном офисном, IT-шном значении этого слова – такие отчеты генерируют, например, программы Cristal Reports и др. (сравните с определением, которое мы дали отчету в первой упомянутой статье). Итак… Каждый отчет генерируется report’ом (но не каждый report генерирует отчет). Создать отчет и создать report – одно и то же, для этого нужно последовательно запустить транзакции SQ03, SQ02 и SQ01 (вас смущает последовательность цифр 3, 2, 1? не отчаивайтесь, это – по-саповски). Запустите транзакцию SQ03 – в ней выбирают группу пользователей, по которой будет производиться отчет. По умолчанию запросы меж-мандантны (создаются для всех мандантов сразу, значение термина «мандант» см. в первой статье), и у вас может не быть полномочий на их создание. Для создания отчета только в одном манданте (в том, на который у вас есть полномочия) в меню клиентской программы откройте «Среда/Рабочие области» (это нельзя проделать в SPRO, только в SQ03). Рис. 1 в появившемся следом окне Рис. 2 выберите «стандартная область» (этот выбор будет подразумеваться и в транзакциях SQ02, SQ01, применяемых далее). После этого в поле «группа пользователей» основного экрана укажите по каким пользователям будет выполнен отчет (их можно выбрать, воспользовавшись средством поиска – серой овальной кнопкой в правой части поля, появляющейся сразу же, как только курсор попадет в поле. Кнопка выводит отдельное окно с перечнем всех допустимых вариантов ввода, в окне нужно выбрать необходимые варианты и нажать кнопку «Ввод» этого окна). Рис. 3 Вернувшись в основной экран, нажмите на кнопку «присвоить пользоват. и инфо-наборы» и в появившемся экране введите логины пользователей, которые могут просматривать данный отчет. Сохранитесь, выйдите. Рис. 4 Запустите транзакцию SQ02 – в ней создают инфонабор (это то же самое, что «инфогруппа», infoset, объяснение этого термина дается в ранее упомянутых статьях). В поле «инфо-набор» введите идентификатор инфонабора (это то же самое, что и «инфогруппа», значение термина «инфогруппа» см. в первой статье), начиная его с буквы “Z” (вы не можете начинать идентификатор с произвольного символа). Нажмите кнопку «создать». Рис. 5 В появившемся окне укажите название логической базы “PNPCE” (эта наиболее новая). Рис. 6 В следующем окне поставьте галочки напротив тех данных, которые вам нужны. Рис. 7 В последующем окне нажмите кнопку «сгенерировать» (третья кнопка слева в верхнем ряду, Shift-F6), выйдите (кнопка «назад», F3), генерация сохранила автоматически. Рис. 8 Вы попадете снова на начальный экран транзакции SQ02 (рис. 5). Нажмите кнопку «просвоение ролям/группам пользов.». В появившемся окне в первой колонке «присвоено» поставьте галочки напротив тех групп пользователей, по которым будет выполнен отчет. Сохранитесь. Рис. 9 Снова вернувшись в начальный экран транзакции SQ02, выйдите. Запустите транзакцию SQ01 – в ней создают отчет по инфонабору. По умолчанию вы увидите запросы не по той группе пользователей, которую указали в SQ03 и SQ02, а по той, название которой первое в алфавитном порядке. Чтобы увидеть запросы по той группе пользователей, которая вам нужна, смените группу пользователей в меню клиентской программы «Обработать/Сменить группу пользователей» (но не в меню экрана, не знаешь – не догадаешься). Рис. 10 Вернувшись в основной экран, в поле «запрос» введите идентификатор запроса, начиная его с буквы “Z”. Нажмите кнопку создать. Рис. 11 В появившемся окне укажите идентификатор вашего инфонабора (колонка «текст» – это его описание). Рис. 12 В следующем окне сохранитесь и нажмите «следующий экран» (кнопка «=>»). В последующем окне поставьте галочки напротив тех групп полей, которые вам нужны. Сохранитесь, нажмите «следующий экран». Рис. 13 В новом окне поставьте галочки напротив тех полей, которые вам нужны – поля расположены на нескольких страницах (не зная этого можно не догадаться о существовании полей, которые расположены на всех страницах кроме первой), для перехода между ними нажимайте кнопки «предыдущая страница» (стрелка вверх), «следующая страница» (стрелка вниз. К сожалению скроллинга с помощью стандартной линейки прокрутки здесь нет, стереотипы использования, положенные в основу системы, отнюдь не современны). Сохранитесь, нажмите «следующий экран». Рис. 14 В последующем окне поставьте галочки напротив тех экранных полей, которые вам нужны, укажите порядковый номер колонки, в которой они должны выводиться (рекомендуется шаг изменения номеров больше 1, чтобы между любыми двумя колонками можно было вставить третью, установив номер экранного поля меньше номера первого поля, но большим второго – примерно как в BASIC). Сохранитесь, нажмите «статистика» (эта кнопка видна на предыдущем рис. 14). Рис. 15 В следующем окне укажите порядковый номер колонки (еще раз), в которой данные должны выводиться, сохранитесь, нажмите кнопку «тест» (Ctrl-F8; в появившемся окне нажмите кнопку «дальше», в последующем окне нажмите кнопку «выполнить»). Рис. 16 Ну, а теперь скажите, зачем вам все это нужно? SAP представляет собой коллекцию программ, написанных без всякой связи друг с другом, а затем собранных соедино. Во времена ABAP, Clipper и Fox эту компиляцию еще можно было чем-то оправдать, но сегодня – когда задача решается посылкой примитивной SQL-строчки в СУБД – оправать уже невозможно. И по этому поводу никогда не возражают! – по этому поводу только спрашивают «а почему другие …» ☺ Отчеты в SAP не графические, а текстовые – времен Clipper и Fox. Тело отчета с допотопных времен называется листом. Обзор будет не полным, если не упомянуть, что компания synactive.com (кто только не хочет денег) добавила GuiXT, позволяющий соединить SAP с браузером. Однако все саперы поголовно признают, что такое соединение – уже полное изголение. И еще одно… Документооборот Извлечение пользователем Word’овых или Excel’ных документов из SAP (транзакции SCASEPS, SCASE, SRMregedit), ввод в них данных, последующее сохранение в SAP – глупость чистейшей воды в то время, как данные вносятся в транзакциях в поля ввода. Кроме немотивированности подобной затеи, получаете вредный эффект – наличие двух наборов не согласующихся данных (в таблицах/инфотипах и в означенных документах). Как и во всех остальных АСУ, впрочем. Дмитрий ТЮРИН, dima.turin@gmail.com