Альфа и Номер счёта
Предыстория
Вот создали вы собственную Z-таблицу с полем типа HKONT. Счёт главной книги используется восьмизначный.
И вот вы начали заполнять её данными вручную или грузить напрямую из файла без использования SM30.
wa-HKONT = ‘10100000’.
insert into zhkont values wa.
Что важно помнить про LSMW
Как пользоваться LSMW я уже рассказал тут: Закачка начальных данных в LSMW
Главными преимуществами LSMW над собственной программой (с пакетным вводом или BAPI)являются:
- тюнинг в продуктивной системе без переносов
- использование без привлечения ABAP-разработчиков
Собственная программа даёт большую гибкость, поэтому я предпочитаю ABAP-код: трудозатраты примерно сравнимы. Но я скорее опытный разработчик, чем консультант.
Но если от консультанта будет постановка на разработку, то условные затраты будут в три раза выше: время разработчика + время консультанта + издержки коммуникации.
Теперь о нескольких напутствиях начинающим:
Вспомогательная программа для импорта и экспорта данных
Программка – самая тривиальная, но многоцелевая.
Задачи две:
- Сохранять данные из таблицы SAP в файл. Тип файла – tab-separated
- Загружать в таблицу SAP данные из файла. Тип файла – tab-separated
Пригодна для:
- загрузки данных в Z-таблицы
- перенос оперативных данных Z-таблиц между мандантами и системами
- сохранение SAP-таблиц “на всякий пожарный” или в целях сравнения, отслеживания изменений
Самое большое предупреждение – полностью давать себе отчёт в действиях при импорте данных в таблицу и наставить проверок побольше, на всякий случай. Это всё-таки большая кувалда, она должна уметь не выстрелить себе в голову, по крайней мере без нудных предупреждений.
Исходник положил сюда: http://pastebin.com/tg1Q2nTk
UPD. Время идёт, программа меняется:
Проводка документа через BAPI с расширенными параметрами
Исходные данные: Проводится документ через BAPI, однако не все поля доступны в параметрах функционального модуля BAPI_ACC_DOCUMENT_POST.
Первоначальный ввод с некорректными IBAN
Исходные данные:
Казахстан. Через LSMW грузится пачка кредиторов с банковскими данными и счетами IBAN, по одному счёту IBAN для каждого кредитора.
Проблема:
Часть кредиторов падает с ошибкой о неправильном номере IBAN.
Место ABAP в общей среде
Понятно, что ABAP в среде SAP является одним из базовых. В разных системах могут использоваться разные языки (второй по значимости — Java), хотя знание базового ANSI SQL никогда не помешает.
В рамках мировой IT-инфраструктуры он занимает 28-ое место, если верить индексу TPCI.
Полпроцента… много это или мало?
Для тех, кто хочет почувствовать себя крутым абапером
Сделайте следующее:
1. Окружите себя людьми, перед которыми надо продемонстрировать свои навыки
2. Откройте страницу https://entropii.net/sap/abap_typer/
3. Сделайте умное лицо
4. Начните набирать программу…
Всё, что вы хотели знать о диапазонах номеров, но боялись спросить…
Может быть громко звучит для начала, но, возможно информация тут накопится.
Использование регулярных выражений (RegExp) для анализа строк
В старом добром АБАПе разбор строк – достаточно муторная операция.
Вот предположим, что у нас есть строка вида:
:86:Операция:Платеж,БИК:12345678,Счет:987654
321,Контрагент:ТОО ТЕСТ,РНН:120100000001,Вып
лата за XYZ /KNP/1719311 /BCLASS/
И требуется выкусить из неё нужные значения: Контрагент, РНН и Описание операции.
Возиться с регэкспами на классах меня особенно не тянет.