Меню

Инструкция по работе с транзакцией MASS - Массовое изменение данных

|

1. Введение

Довольно часто, возникает необходимость массового изменения данных различных объектов. Например, это данные логистических заказов или данные контрагентов. Так как сделать обновление данных неросредственно в таблицах системы недопустимо, это следует делать, используя стандартные транзакции системы (при этом информация об изменениях осталается в журналах обработки). В системе есть транзакция для таких операций – MASS.
С помощью этой транзакции можно изменить данные следующих объектов системы [1]:

  • BUS0015 Profit center                                     (МВП)
  • BUS1001 Materials (industry)                          (материалы - производство)
  • BUS1001001 Materials (retail)                         (материалы – продажи)
  • BUS1133 Rental units                                      (аренда)
  • BUS2012 Purchase orders                               (логистические заказы)
  • BUS2032 Sales orders                                    (сбытовые заказы)
  • BUS2104 Appropriation reqs                           (записи присвоения)
  • BUS2105 Purchase requisition                         (логистические заявки)
  • BUS3003 Purchasing info recs                        (инфо данные логистики)
  • BUS3006 G/L accounts                                    (счета Главной книги)
  • KNA1 Customers                                             (дебиторы)
  • LFA1 Vendors                                                 (кредиторы)

Транзакция обычно используется для создания или обновления основных данных. В случае, если необходимы комплексные проверки при создании или изменении данных, лучше использовать транзакцию LSMW.
Последовательность работы с транзакцией MASS:

  • Запустить транзакцию  MASS
  • Выбрать тип объекта
  • Выбор таблиц и полей для изменений
  • Выбрать данные для измений
  • Ввод и сохранение новых значений данных

Например,для кредиторов (объект LFB1) необходимо изменить контрольный счет (поле AKONT). Старое значение PCH1T10004 изменить на новое PCH1T10018.

2. Работа с транзакцией MASS

2.1. Запуск транзакции MASS

Имя транзакции Массовое изменение данных
Код транзакции MASS
Путь по меню

SAP: Логистика > Центральные функции > Массовое ведение > Обработка в диалоге
SAP Menu: Logistics > Central Functions > Mass Maintenance > Mass Maintenance > Dialog Processing

2.2. Выбор типа объекта

Рис. 1 Первый экран транзакции MASS

Поле Действия оператора Значение

Обязательность ввода
О- обязательно
Н-необязательно

Тип объекта Выбрать из справочника
Тип объекта
  O
Имя варианта Выбрать из справочника Имя варианта, если вариант был ранее сохранен, иначе оставить поле пустым   H

Таблица 1. Работа с первым экраном транзакции MASS

Нажать Выполнить .

В случае, если транзакция выполняется впервые, появиться сообщение с описанием того, что необходимо будет сделать (рис.2).

Рис. 2 Сообщение – описание необходимых изменений

После ознакомления, нажать на кнопку «Далее» .

Чтобы сообщение больше не выводилось, необходимо в поле  «Более не выводить

Если хотите прочитать статью полностью и оставить свои комментарии присоединяйтесь к sapland

У вас уже есть учетная запись?

Войти

Обсуждения Количество комментариев4

Комментарий от  

Олег Точенюк

  |  18 декабря 2013, 16:05

Мне кажется, что статья Марка Чалфена более подробно описывает механизмы работы с MASS: sapland.ru/articles/spj
 
Например, что при выборе объектов для изменений, рисунок 7, можно добавить практически любые критерии, которые есть в описываемом объекте, а не только по ключевым полям как в представленном примере БЕ+Кредитор. Далее не описан вариант запуска изменений в фоне, а это существенный плюс, когда вы все подготавливаете, а затем планируете применение изменений в фоновом режиме например ночью.
 
Не раскрыт вопрос возможности загрузки изменений как из файла того же EXCEL или же из буфера обмена.
 
Не отмечено что вы можете менять много полей или же в момент применения значений например отключить изменения для некоторых строк или колонок, отменив выбор строки или колонки в таблице.
 
Что касается ввода изменений, все очень как-то просто, ввели значение и применили, но почему-то не сказано, что например можно нажать кнопку "Ограничения" и сказать что например заменить только поля где нет введенных значений или где текущее значение содержит определенный код. Но самое интересное мне кажется это использование режима ABAP-кодировки, значок суммы на рисунке 10, при нажатии этой кнопки откроется окно где вы выбираете поле и нажимаете кнопку кода ABAP, вам будет представлен редактор в котором вы имеете доступ к выбранной таблице и можете сформировать новое значение которое будет возвращено в переменной X.
 
* X is the value you must return
form GET_NEW_LFA1_ORT02
using segment structure LFA1
changing X.
 
endform.
 
Так сказать минимум ABAP, но варианты формирования значений полей, для изменений просто не ограничены ничем.
 
В общем транзакция MASS довольно мощный инструмент, при этом можно как изменять значения так и создавать новые объекты, те же ОЗМ например. Хотя тут LSMW кажется будет лучше, но все зависит от ситуации.
 
PS: В общем тема ...к не раскрыта, как мне кажется.

Комментарий от  

Андрей Высоцкий

  |  04 января 2014, 14:37

Мне кажется, что статья Марка Чалфена более подробно описывает механизмы работы с MASS: sapland.ru/articles/spj
 
Например, что при выборе объектов для изменений, рисунок 7, можно добавить практически любые критерии, которые есть в описываемом объекте, а не только по ключевым полям как в представленном примере БЕ+Кредитор. Далее не описан вариант запуска изменений в фоне, а это существенный плюс, когда вы все подготавливаете, а затем планируете применение изменений в фоновом режиме например ночью.
 
Не раскрыт вопрос возможности загрузки изменений как из файла того же EXCEL или же из буфера обмена.
 
Не отмечено что вы можете менять много полей или же в момент применения значений например отключить изменения для некоторых строк или колонок, отменив выбор строки или колонки в таблице.
 
Что касается ввода изменений, все очень как-то просто, ввели значение и применили, но почему-то не сказано, что например можно нажать кнопку "Ограничения" и сказать что например заменить только поля где нет введенных значений или где текущее значение содержит определенный код. Но самое интересное мне кажется это использование режима ABAP-кодировки, значок суммы на рисунке 10, при нажатии этой кнопки откроется окно где вы выбираете поле и нажимаете кнопку кода ABAP, вам будет представлен редактор в котором вы имеете доступ к выбранной таблице и можете сформировать новое значение которое будет возвращено в переменной X.
 
* X is the value you must return
form GET_NEW_LFA1_ORT02
using segment structure LFA1
changing X.
 
endform.
 
Так сказать минимум ABAP, но варианты формирования значений полей, для изменений просто не ограничены ничем.
 
В общем транзакция MASS довольно мощный инструмент, при этом можно как изменять значения так и создавать новые объекты, те же ОЗМ например. Хотя тут LSMW кажется будет лучше, но все зависит от ситуации.
 
PS: В общем тема ...к не раскрыта, как мне кажется.

Олег, меня очень заинтересовали описанные Вами возможности MASS, о которых не смог найти практически никакой полезной информации:
- вопрос возможности загрузки изменений как из файла того же EXCEL или же из буфера обмена;
- использование режима ABAP-кодировки;
- можно как изменять значения так и создавать новые объекты, те же ОЗМ например.
Может быть Вы смогли бы подробнее об этом рассказать?

Комментарий от  

Олег Башкатов

  |  14 января 2014, 23:18

Олег, меня очень заинтересовали описанные Вами возможности MASS, о которых не смог найти практически никакой полезной информации:
- вопрос возможности загрузки изменений как из файла того же EXCEL или же из буфера обмена;
- использование режима ABAP-кодировки;
- можно как изменять значения так и создавать новые объекты, те же ОЗМ например.
Может быть Вы смогли бы подробнее об этом рассказать?

а это не подойдет :-)
частично ответы есть.
 
sapland.ru/articles/stats
 
+ статья, на которую указывает Олег
sapland.ru/articles/spj
 
PS. Олег, в конце ссылки была точка, поэтому ссылка на статья Марка Чалфена не открывалась

Комментарий от  

Олег Точенюк

  |  15 января 2014, 12:14

а это не подойдет :-)
частично ответы есть.
 
sapland.ru/articles/stats
 
+ статья, на которую указывает Олег
sapland.ru/articles/spj
 
PS. Олег, в конце ссылки была точка, поэтому ссылка на статья Марка Чалфена не открывалась

Ага спасибо, но надо учесть что статья находится в закрытой части сайта, поэтому доступна только подписчикам журнала.
 
PS: Может быть в течении недели что-то набросаю по данным вопросам.