История ввода для полей на экране — трюк

Я и раньше подмечал, что у истории ввода есть некоторое запрограммированное поведение – для коротких оно работает, а вот для длинных – не хочет.

История ввода включается автоматически, однако при разработке интерфейса для элементов на экране можно задать опцию “No input history” – в этом случае история ввода никогда не будет сохраняться для этого поля. Но нет опций жёсткого включения истории при разработке экранов.

Ковырнул, и вот что узнал:

(далее…)

Дополнительная таблица в сплиттинге

Запишу себе, чтоб не забыть: В настройках сплиттинга есть настроечная таблица T8G10, не включенная в настройки.

В ней можно присвоить транзакции настройкам по сплиттингу (Операции и варианту).

В некоторых особых случаях при проводке можно получить сообщение об ошибке вида GLT2 051 “Чему-то там не присвоена ни одна хозяйственная операция” – и данная настроечка может помочь решить эту проблемку.

Диапазоны номеров

В отличие от многих других диапазонов в SNRO для бухгалтерских документов есть годовая зависимость – их нужно продлевать каждый год. Кроме всего прочего есть и зависимость от БЕ.

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

Поэтому есть две помогательные транзакции:

OBH1 – копирование из БЕ в БЕ

OBH2 – копирование из года в год

Копирование диапазонов из года в год

 

ЗЫ. Один из вариантов – создать условный “эталоный” диапазон в году с номером 9999 – и копировать именно его.

ЗЗЫ. И не забывайте, что есть проблема скидывания счётчиков при переносе диапазонов в запросе. Если вы перенесёте запрос в мандант с имеющимися документами, то создание документов будет спотыкаться – в ручном режиме потребуется смотреть последний номер фактического документа и нагонять эту цифру в диапазоне.

Разминка для программистов — говнокод

Читаю периодически Хабр, там многое бывает полезно даже не в области SAP/ABAP, а имеет смысл и само по себе.

В частности, в одном из недавних постов была приведена задачка:

Напечатать на экране следующее:
1
2-1
1-2-3
4-3-2-1
1-2-3-4-5
6-5-4-3-2-1
(Естественно, вместо 6 может быть любое число).

(далее…)

Добавление колонок в таблицу

Наблюдал у товарища при определённом стечении обстоятельств совершенно неожиданное поведение простого ракурса  — несколько колонок из одной таблицы и условие поле “Скрыть” не равно крестику.

Чудило вплоть до эффектов “в таблице 200 записей, три записи помечены крестиком, но ракурс показывает три записи без крестика”, а тестовое условие было “равно крестику”.

Я аж собственным глазам не поверил.

(далее…)

Шаманство вокруг поздней активации сплиттинга

Вот в одной конторе есть ситуация с поздней активацией сплиттинга.

Открытые позиции, созданные с момента активации отказываются выравниваться: говорит, что GLT0002 и хоть трава не расти.

Методов несколько.

Наиболее цивилизованным (вроде бы) является процедура миграции, там есть определённый сценарий "Subsequent Implementation of Document Splitting". Инструмент миграции (будто бы) является особой услугой – но на сайте как-то невнятно всё написано. Сами пумпочки этой функциональности в SPRO по этому поводу начинают спрашивать какие-то лицензии.  Боязливо ввязываться в такие действа. А мне-то хотелось всего лишь самому кнопочки понажимать…

Самым нецивилизованным способом является ручное струяченье записей сплиттинга в соответствующую таблицу. Тоже боязливо – за изменение таблиц SAP.

В качестве баланса между ними можно использовать метод, в котором запускаются поочерёдно три волшебные служебные программы в SA38.

Простые документы нормально обработались, но вот один из них споткнулся с расстройством настроек по сплиттингу. По счетам ГК – платёж, а по виду документа – фактура. Система встала в позу, и я её хорошо понимаю.

Так что потребовалось изменить настройки, прогнать документ, вернуть настройки обратно.

Каждый документ пропихивать вручную – сомнительное удовольствие, но требуется ли писать мега-программу (впрочем простую и небольшую), вызывающую три волшебных программы, особенно с учётом возможных раскоряков по настройкам… ?

Дату активации сплиттинга в продуктивной системе, так сложилось, что никто точно не знает. Забавен быстрый способ по которому это дело можно посмотреть… Узнаём имя ракурса, по которым проходит такая настройка, затем в системе настройки в служебной таблице ищем запросы, связанные с этим ракурсом. Осталось по журналам транспортной системы посмотреть дату импорта запроса.

С полученной датой активации можно отфильтровать таблицы открытых позиций контрагентов по полю CPUDT для пущей надёжности.

Получено число порядка четырёх сотен. Это не много, но и не мало…

Проводки между филиалами – БЕ против БС

Видел несколько вариантов реализаций большой организации с филиалами:

  • Несколько балансовых единиц
  • Только одна балансовая единица и несколько бизнес-сфер 

Я для себя дилемму решаю таким образом – разные юридические лица должны иметь разные БЕ.

(далее…)