Вот такая гадость у меня запускается в 00-15 и выдает на гора все смешаные документы (черно-красные) за ВЧЕРА, т.е. по итогам дня.
Конечно есть возможность запустить по году.
Code:
REPORT ZZ_TCH_1_C_E01
LINE-COUNT 65(2)
LINE-SIZE 80
NO STANDARD PAGE HEADING.
* REPORT ZZ_TCH_1_C_E01
* Автор: Oleg G. Tchirva, oleg@tch.kiev.ua
* Копирование, внесение изменений в отчет или прилагающиеся INCLUDE
* без предварительного согласования с автором - НЕ РЕКОМЕНДУЕТСЯ.
TABLES: BKPF, BSEG.
PARAMETERS DAT LIKE SY-DATUM.
PARAMETERS Y AS CHECKBOX DEFAULT ''.
DATA:
BEGIN OF E01 OCCURS 10,
BUKRS LIKE BKPF-BUKRS,
BELNR LIKE BKPF-BELNR,
GJAHR LIKE BKPF-GJAHR,
USNAM LIKE BKPF-USNAM,
BLACK TYPE I,
RED TYPE I,
END OF E01,
COUNT TYPE I,
DATUM LIKE SY-DATUM.
START-OF-SELECTION.
IF DAT IS INITIAL.
DATUM = SY-DATUM.
DATUM = DATUM - 1.
ELSE.
DATUM = DAT.
ENDIF.
IF Y EQ ''.
SELECT * FROM BKPF CLIENT SPECIFIED WHERE CPUDT EQ DATUM.
IF BKPF-STBLG IS INITIAL.
CLEAR E01.
E01-BUKRS = BKPF-BUKRS.
E01-BELNR = BKPF-BELNR.
E01-GJAHR = BKPF-GJAHR.
E01-USNAM = BKPF-USNAM.
APPEND E01.
ENDIF.
ENDSELECT.
ELSE.
SELECT * FROM BKPF CLIENT SPECIFIED WHERE GJAHR EQ DATUM+0(4).
IF BKPF-STBLG IS INITIAL.
CLEAR E01.
E01-BUKRS = BKPF-BUKRS.
E01-BELNR = BKPF-BELNR.
E01-GJAHR = BKPF-GJAHR.
E01-USNAM = BKPF-USNAM.
APPEND E01.
ENDIF.
ENDSELECT.
ENDIF.
LOOP AT E01.
DO 1000 TIMES.
SELECT SINGLE * FROM BSEG WHERE BUKRS EQ E01-BUKRS
AND BELNR EQ E01-BELNR
AND GJAHR EQ E01-GJAHR
AND BUZEI EQ SY-INDEX.
IF SY-SUBRC EQ 4. EXIT. ENDIF.
IF BSEG-HKONT+0(1) NE 'Z'.
IF BSEG-XNEGP EQ 'X'. E01-RED = E01-RED + 1. ENDIF.
IF BSEG-XNEGP EQ ''. E01-BLACK = E01-BLACK + 1. ENDIF.
ENDIF.
ENDDO.
MODIFY E01.
ENDLOOP.
LOOP AT E01 WHERE RED > 0 AND BLACK EQ 0. DELETE E01. ENDLOOP.
LOOP AT E01 WHERE RED EQ 0 AND BLACK > 0. DELETE E01. ENDLOOP.
LOOP AT E01 WHERE RED EQ 0 AND BLACK EQ 0. DELETE E01. ENDLOOP.
SORT E01 BY USNAM BUKRS GJAHR.
LOOP AT E01. COUNT = COUNT + 1. ENDLOOP.
IF COUNT > 0.
LOOP AT E01.
WRITE: /5 SY-VLINE,
E01-USNAM, SY-VLINE,
E01-BUKRS, SY-VLINE,
E01-BELNR, SY-VLINE,
E01-GJAHR, SY-VLINE,
(13) E01-BLACK, SY-VLINE,
(14) E01-RED, SY-VLINE.
ENDLOOP.
ULINE /5(76).
SKIP.
WRITE: /10 'Выборка произведена:' COLOR COL_TOTAL,
/10 'Пользователь - ', SY-UNAME,
/10 SY-DATUM, SY-UZEIT.
IF SY-BATCH EQ 'X'.
WRITE /10 'Отчет обработан в фоновом режиме'.
ENDIF.
IF SY-LINNO NE 63. RESERVE 63 LINES. ENDIF.
ENDIF.
TOP-OF-PAGE.
ULINE /5(76).
WRITE: /5 SY-VLINE,
15 'Ошибка ''E1'' - ''Зебра''. Дата выборки:',
DATUM,
80 SY-VLINE.
ULINE /5(76).
WRITE: /5 SY-VLINE,
(12) 'Автор' CENTERED COLOR COL_HEADING,
SY-VLINE,
(4) 'БЕ' CENTERED COLOR COL_HEADING,
SY-VLINE,
(10) '№ докум.' CENTERED COLOR COL_HEADING,
SY-VLINE,
(4) 'ФГод' CENTERED COLOR COL_HEADING,
SY-VLINE,
(13) '''Черных''' CENTERED COLOR COL_HEADING,
SY-VLINE,
(14) '''Красных''' CENTERED COLOR COL_HEADING,
SY-VLINE.
ULINE /5(76).
END-OF-PAGE.
* REPORT ZZ_TCH_1_C_E01
* Автор: Oleg G. Tchirva, oleg@tch.kiev.ua
* Копирование, внесение изменений в отчет или прилагающиеся INCLUDE
* без предварительного согласования с автором - НЕ РЕКОМЕНДУЕТСЯ.
выкладываю "как есть"... точнее отрезал отдельные инклюды, их вызовы и вообще текстовые элементы.