Последние сообщения

Страницы: [1] 2 3 ... 10
1
ABAP - Инструментальные средства / Re: Как НЕ НАДО писать на ABAP
« Последний ответ от Uukrul Июнь 28, 2022, 07:40:49 pm »
Давно как-то не писалось, но тут одну программу попросили посмотреть. Ну что могу сказать, вот так там написано:
Код: You are not allowed to view links. Register or Login
  IF so_dat-low IS INITIAL.
    so_dat-low = sy-datum.
  ENDIF.

  IF so_dat-low IS NOT INITIAL.
    <Какой-то еще код> 
  ENDIF.
Вопрос в студию, как во втором условии so_dat-low может быть не пустым? Не я понимаю, компилятор, даже в байт-код, для многих вещь в себе, но не до такой же степени  8)
2
ABAP - Инструментальные средства / Re: Кто создал правило в GGB0
« Последний ответ от Uukrul Июнь 02, 2022, 08:42:36 pm »
You are not allowed to view links. Register or Login
Добрый день всем.

Не знаю к какому из разделов форума отнести этот вопрос, поэтому пишу здесь, потому как с программированием тоже связано. Как узнать кто создал проверку в GGB0, ну т.е. имя юзера ? Полазил по пунктам меню, но ничего не нашёл. Может быть как то по другому надо?
Ну если по правильному то ее переносили в запросе, значит надо поискать объект в запросе и уже по запросу узнать пользователя кто создавал.
3
Контроллинг (CO) / Bus.Transaction
« Последний ответ от themax Июнь 02, 2022, 02:49:18 pm »
Добрый день Всем.

Есть транзакция KSS2 - разделение затрат по работам. Так вот, мне нужны записи сформировавшиеся в таблице COSS в результате этого разделения. В этой таблице есть поле Bus.Transaction и оно заполняется неким идентификатором, который определяет в результате какой операции сформировалась запись в таблице. Есть три идентификатора KSI1, KSI2 и KSI3. Который из них относится к KSS2 ?
4
ABAP - Инструментальные средства / Кто создал правило в GGB0
« Последний ответ от themax Июнь 01, 2022, 12:09:54 pm »
Добрый день всем.

Не знаю к какому из разделов форума отнести этот вопрос, поэтому пишу здесь, потому как с программированием тоже связано. Как узнать кто создал проверку в GGB0, ну т.е. имя юзера ? Полазил по пунктам меню, но ничего не нашёл. Может быть как то по другому надо?
5
В общем так как постоянно писать какие-то обработки текстов нет необходимости, то когда возникает проблема снова найти в тексте дату или еще какое-то значение, оптимальным вариантом является использование регулярных выражений, но как обычно? все забывается и потом снова теряешь пару часов, чтобы или вспомнить или найти, так как точно уже такое или сам делал или кто-то делал. Кстати с кто-то делал не всегда хорошо получается так как примеры часто могут быть под другие языки и не работать в ABAP.

Традиционное найти дату формата ДД.ММ.ГГГГ или ДД-ММ-ГГГГ (да, дата берется из диапазона 2000 по 2099):
Код: You are not allowed to view links. Register or Login
  DATA: l_moff TYPE sytabix,
        l_mlen TYPE sytabix.

* Find date in string
  FIND REGEX '(?:0?[1-9]|[12][0-9]|3[01])(?:.|-)(?:0?[1-9]|1[0-2])(?:.|-)(?:20[0-9][0-9])(?!\d)'
  IN iv_bktxt MATCH OFFSET l_moff
             MATCH LENGTH l_mlen.
  IF sy-subrc = 0. RV_date = iv_bktxt+l_moff(l_mlen). ENDIF.

Найти номер документа в строке, причем номер начинается с символа № потом идут цифры. Между символом номера могут быть пробелы а могут и небыть, но в результате пробелы между символом номера и самим номером убираются, возвращается что-то типа №1234:
Цитировать
  DATA: l_moff TYPE sytabix,
        l_mlen TYPE sytabix.

* Find number of document
  FIND REGEX '№+\s*(\d{1,})' IN iv_bktxt MATCH OFFSET l_moff
                                        MATCH LENGTH l_mlen.
  IF sy-subrc = 0.
    rv_number = iv_bktxt+l_moff(l_mlen).
    CONDENSE rv_number NO-GAPS.
  ENDIF.
6
Попалась одна очень старая системка, ну что можно сказать, это где-то лет 15 системе. Да и в этой системе пользователи не любят стандарт, поэтому все что можно и нельзя там переписали и закрыли Z-том. Пока можно сделать вывод:

2 Года = 2300 объектов
5 лет = 7800 объектов
15 лет = 15 000 объектов

В общем пока на бигдатут не тянет, выводы делать рано  8)
7
You are not allowed to view links. Register or Login
Странно как-то, вроде как должно брать из заказа ТОРО. Там контировки переносятся вроде как.
Ну хоть через энхансмент или так стандартный код поломал?

Стандартом копируется только номер заказа, МВЗ оставляет пустое поле. Сделал через энхансмент, вроде бы работает.
8
You are not allowed to view links. Register or Login
Стандартом сделать не получилось
Странно как-то, вроде как должно брать из заказа ТОРО. Там контировки переносятся вроде как.

You are not allowed to view links. Register or Login
ФМ CO_ZF_FILL_EBAN_FROM_AFVGD.
На 715 строке вставил строчку EBKN_EXP-KOSTL = CAUFVD-KOSTL и вуаля. МВЗ копируется в PR-ку вместе с заказом ТОРО.
Ну хоть через энхансмент или так стандартный код поломал?
9
Стандартом сделать не получилось, но нашёл один ФМ CO_ZF_FILL_EBAN_FROM_AFVGD.

На 715 строке вставил строчку EBKN_EXP-KOSTL = CAUFVD-KOSTL и вуаля. МВЗ копируется в PR-ку вместе с заказом ТОРО.
10
Там контировка типа F, если правильно помню. Надо открыть поле МВЗ для вида контировки и оно будет браться из ТОРО заказа, опять же если правильно все помню.
Страницы: [1] 2 3 ... 10