SAPфорум.RU https://www.sapboard.ru/forum/ |
|
Допил Корреспонденции счетаов (J3RKKRS) https://www.sapboard.ru/forum/viewtopic.php?f=5&t=97428 |
Страница 1 из 1 |
Автор: | Derian [ Ср, мар 06 2019, 17:12 ] |
Заголовок сообщения: | Допил Корреспонденции счетаов (J3RKKRS) |
Коллеги, может кто подскажет какие-то BADI или Enhancement'ы по Корреспонденции счетаов (J3RKKRS). Ситуация в следующем. Есть количественный учет на забалансе, который генерит в документах FI 0 строки: Пример: Examp 1 Через эти строки не хочет работать стандартная Корреспонденция счетаов (J3RKKRS). (И её можна понять ). Но нужно как-то придумать, что б автоматом эти строки цеплялись к какойто строке... Может кто-то, что-то подскажет. Буду безгранично благодарен. |
Автор: | Yozhhhhh [ Чт, мар 07 2019, 00:06 ] |
Заголовок сообщения: | Re: Допил Корреспонденции счетаов (J3RKKRS) |
Строки с нулевыми суммами система удаляет, есть такое дело. Удаляет вот тут: J_3RKORRSSP --> FORM read_bseg Поэтому сделать так, чтобы автоматом они цеплялись, стандартно не получится. Но SAP позволяет делать свою корреспонденцию вот тут J_3RKRLNF01 --> FORM move_krp_all * First interpret documents which can be interpreted by own algorithm * even they can be interpreted automatically IF NOT gref_exithandler IS INITIAL. CALL METHOD gref_exithandler->EXIT_J_3RKORRSSP_001 ... Внутри можно свою логику реализовать. Для этого придется перелить таблицы tbl_bseg, tbl_deb и tbl_kre заново и реализовать свою логику. И тогда чисто теоретически задача будет решаемая. Вариант второй - доцепить нужные позиции не перед стандартной обработкой, а после нее. Там же * customer funtion call IF NOT gref_exithandler IS INITIAL. CALL METHOD gref_exithandler->EXIT_J_3RKORRSSP_002 Внутри своего компонента можно доцепить уже чисто нулевые позиции (я полагаю, у Вас есть четкий критерий, что брать, а что нет, потому что нулевых позиций много генерит система стандартно: курсовые и пр.) |
Автор: | Kengur [ Чт, мар 07 2019, 13:36 ] |
Заголовок сообщения: | Re: Допил Корреспонденции счетаов (J3RKKRS) |
После первого экзита отработает стандартный механизм разбора. После второго все равно будет проверка на сумму по счету. т.е. если там нарисовать суммы, то добавится строка с минусом, а вот куда она ляжет в корреспонденцию не ясно. |
Автор: | Yozhhhhh [ Вс, мар 10 2019, 08:26 ] |
Заголовок сообщения: | Re: Допил Корреспонденции счетаов (J3RKKRS) |
Kengur написал(а): После первого экзита отработает стандартный механизм разбора. После второго все равно будет проверка на сумму по счету. т.е. если там нарисовать суммы, то добавится строка с минусом, а вот куда она ляжет в корреспонденцию не ясно. Да вот фигушки. IF result1proc = 1 OR do_st = 'X' . * Automatic document interpretation CALL FUNCTION 'J_3RK_KORRSCH_MOVE4_KRP_ALL' Стандартный разбор последует только при subrc = 1 или при do_st (do standard) = 'X', который, к слову, как раз в CHANGING. Чтобы не запускать стандартный механизм, достаточно всего лишь вернуть subrc = 0 или обнулить флаг do_st. Все там будет нормально работать после первого экзита. |
Автор: | Kengur [ Пн, мар 11 2019, 09:18 ] |
Заголовок сообщения: | Re: Допил Корреспонденции счетаов (J3RKKRS) |
Yozhhhhh написал: Kengur написал(а): После первого экзита отработает стандартный механизм разбора. После второго все равно будет проверка на сумму по счету. т.е. если там нарисовать суммы, то добавится строка с минусом, а вот куда она ляжет в корреспонденцию не ясно. Да вот фигушки. IF result1proc = 1 OR do_st = 'X' . * Automatic document interpretation CALL FUNCTION 'J_3RK_KORRSCH_MOVE4_KRP_ALL' Стандартный разбор последует только при subrc = 1 или при do_st (do standard) = 'X', который, к слову, как раз в CHANGING. Чтобы не запускать стандартный механизм, достаточно всего лишь вернуть subrc = 0 или обнулить флаг do_st. Все там будет нормально работать после первого экзита. Фигушки что? Предлагаешь переписать весь алгоритм интепретации в первом экзите? Не суетитесь под клиентом... |
Автор: | Yozhhhhh [ Пн, мар 11 2019, 14:49 ] |
Заголовок сообщения: | Re: Допил Корреспонденции счетаов (J3RKKRS) |
Хоспади, что там переписывать-то?))) Эту корреспонденцию писали два хромых инвалида. Предпочтительные пары не реализованы, в коде обрабатываются мертвые значения из J_3RKKRN, которых даже нет в доменных справочниках, в PAI на даты проводки в J3RKKRS какая-то дикость с открытыми периодами, алгоритм выбора приоритета по маске не продуман. Там половина функционала под снос. По-хорошему две таблицы с дебетами и кредитами в лупе прогнать, вот и весь разбор корреспонденции. Тем более назначение экзита именно в этом и есть - делать свою интерпретацию. * First interpret documents which can be interpreted by own algorithm * even they can be interpreted automatically Дальше каждый сам решает, переписывать или нет. Ну а конкретно в этой ситуации я бы воспользовался не первым экзитом, а вторым. То есть доверил бы стандартной обработке ненулевые позиции, а во втором экзите уже дополнительно выбрал нулевые позиции и дописал бы их в tbl_krp. |
Страница 1 из 1 | Часовой пояс: UTC + 3 часа |
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group http://www.phpbb.com/ |