четверг, 22 августа 2013 г.
среда, 21 августа 2013 г.
вторник, 20 августа 2013 г.
Ожидание предыдущего прогона цепочки
*&---------------------------------------------------------------------*
*& Report ZPC_CHECK_PREV_RUN_CHAIN
*&
*&---------------------------------------------------------------------*
*&
*&
*&---------------------------------------------------------------------*
REPORT ZPC_CHECK_PREV_RUN_CHAIN.
DATA: L_STATUS TYPE RSPC_STATE.
PARAMETERS L_CHAIN TYPE RSPC_CHAIN.
BREAK-POINT.
DO 3600 TIMES.
SELECT SINGLE ANALYZED_STATUS
FROM RSPCLOGCHAIN BYPASSING BUFFER
INTO L_STATUS
WHERE CHAIN_ID = L_CHAIN
AND DATUM = SY-DATUM
AND ANALYZED_STATUS EQ 'A'.
IF SY-SUBRC NE 0.
EXIT.
ELSEIF SY-INDEX = 3600.
MESSAGE 'ОШИБКА! ДЕЛАЕМ ЦЕПОЧКУ КРАСНОЙ' TYPE 'E'. STOP.
ENDIF.
WAIT UP TO 1 SECONDS.
ENDDO.
*& Report ZPC_CHECK_PREV_RUN_CHAIN
*&
*&---------------------------------------------------------------------*
*&
*&
*&---------------------------------------------------------------------*
REPORT ZPC_CHECK_PREV_RUN_CHAIN.
DATA: L_STATUS TYPE RSPC_STATE.
PARAMETERS L_CHAIN TYPE RSPC_CHAIN.
BREAK-POINT.
DO 3600 TIMES.
SELECT SINGLE ANALYZED_STATUS
FROM RSPCLOGCHAIN BYPASSING BUFFER
INTO L_STATUS
WHERE CHAIN_ID = L_CHAIN
AND DATUM = SY-DATUM
AND ANALYZED_STATUS EQ 'A'.
IF SY-SUBRC NE 0.
EXIT.
ELSEIF SY-INDEX = 3600.
MESSAGE 'ОШИБКА! ДЕЛАЕМ ЦЕПОЧКУ КРАСНОЙ' TYPE 'E'. STOP.
ENDIF.
WAIT UP TO 1 SECONDS.
ENDDO.
понедельник, 12 августа 2013 г.
Читаем период из TVARV
*&---------------------------------------------------------------------*
*& Include RSBC_SEL_ROUTINE_TPL
*&---------------------------------------------------------------------*
program conversion_routine.
* Type pools used by conversion program
type-pools: rsarc, rsarr, rssm.
tables: rssdlrange.
* Global code used by conversion rules
*$*$ begin of global - insert your declaration only below this line *-*
* TABLES: ...
* DATA: ...
*$*$ end of global - insert your declaration only before this line *-*
* -------------------------------------------------------------------
* Fieldname = FISCPER
* data type = NUMC
* length = 000007
* -------------------------------------------------------------------
form c_FISCPER
tables l_t_range structure rssdlrange
using i_r_request type ref to IF_RSBK_REQUEST_ADMINTAB_VIEW
i_fieldnm type RSFIELDNM
changing p_subrc like sy-subrc.
* Insert source code to current selection field
*$*$ begin of routine - insert your code only below this line *-*
DATA
: ls_tvarvc TYPE tvarvc
.
* Находим период закрытия
SELECT SINGLE * INTO ls_tvarvc
FROM tvarvc
WHERE type = 'S' AND name EQ 'Y_KPS_CLOSE_FISCPER_BE1000'.
IF sy-subrc EQ 0.
IF ls_tvarvc-high+4(3) = '012'.
ls_tvarvc-high(4) = ls_tvarvc-high(4) + 1.
ls_tvarvc-high+4(3) = '000'.
ENDIF.
l_t_range-fieldname = 'FISCPER'.
l_t_range-sign = 'I'.
l_t_range-option = 'EQ'.
l_t_range-low = ls_tvarvc-high + 1.
APPEND l_t_range.
ELSE.
p_subrc = sy-subrc.
ENDIF.
*$*$ end of routine - insert your code only before this line *-*
endform.
______________________________________________________________________________
Ещё вкусный вариант с дополнительной проверкой:
*&---------------------------------------------------------------------*
*& Include RSBC_SEL_ROUTINE_TPL
*&---------------------------------------------------------------------*
PROGRAM conversion_routine.
* Type pools used by conversion program
TYPE-POOLS: rsarc, rsarr, rssm.
TABLES: rssdlrange.
* Global code used by conversion rules
*$*$ begin of global - insert your declaration only below this line *-*
* TABLES: ...
* DATA: ...
*$*$ end of global - insert your declaration only before this line *-*
* -------------------------------------------------------------------
* Fieldname = CALDAY
* data type = DATS
* length = 000008
* -------------------------------------------------------------------
FORM compute_CALDAY
TABLES l_t_range STRUCTURE rssdlrange
CHANGING p_subrc LIKE sy-subrc.
* Insert source code to current selection field
*$*$ begin of routine - insert your code only below this line *-*
DATA: ls_tvarvc TYPE tvarvc.
SELECT SINGLE *
INTO ls_tvarvc
FROM tvarvc
WHERE type = 'S'
AND name EQ 'ZSO_REVERSE_TURNOVER'.
IF sy-subrc EQ 0.
* Защита от дурака, если не поставят "между" или "равно"
IF ls_tvarvc-opti IS INITIAL.
IF ls_tvarvc-high IS NOT INITIAL.
ls_tvarvc-opti = 'BT'.
ELSE.
ls_tvarvc-opti = 'EQ'.
ENDIF.
ENDIF.
* Защита от дурака, если не поставят "включительно"
IF ls_tvarvc-sign IS INITIAL.
ls_tvarvc-sign = 'I'.
ENDIF.
l_t_range-fieldname = 'CALDAY'.
l_t_range-sign = ls_tvarvc-sign.
l_t_range-option = ls_tvarvc-opti.
l_t_range-low = ls_tvarvc-low.
l_t_range-high = ls_tvarvc-high.
APPEND l_t_range.
ELSE.
p_subrc = sy-subrc.
ENDIF.
*$*$ end of routine - insert your code only before this line *-*
ENDFORM. "compute_CALDAY
*& Include RSBC_SEL_ROUTINE_TPL
*&---------------------------------------------------------------------*
program conversion_routine.
* Type pools used by conversion program
type-pools: rsarc, rsarr, rssm.
tables: rssdlrange.
* Global code used by conversion rules
*$*$ begin of global - insert your declaration only below this line *-*
* TABLES: ...
* DATA: ...
*$*$ end of global - insert your declaration only before this line *-*
* -------------------------------------------------------------------
* Fieldname = FISCPER
* data type = NUMC
* length = 000007
* -------------------------------------------------------------------
form c_FISCPER
tables l_t_range structure rssdlrange
using i_r_request type ref to IF_RSBK_REQUEST_ADMINTAB_VIEW
i_fieldnm type RSFIELDNM
changing p_subrc like sy-subrc.
* Insert source code to current selection field
*$*$ begin of routine - insert your code only below this line *-*
DATA
: ls_tvarvc TYPE tvarvc
.
* Находим период закрытия
SELECT SINGLE * INTO ls_tvarvc
FROM tvarvc
WHERE type = 'S' AND name EQ 'Y_KPS_CLOSE_FISCPER_BE1000'.
IF sy-subrc EQ 0.
IF ls_tvarvc-high+4(3) = '012'.
ls_tvarvc-high(4) = ls_tvarvc-high(4) + 1.
ls_tvarvc-high+4(3) = '000'.
ENDIF.
l_t_range-fieldname = 'FISCPER'.
l_t_range-sign = 'I'.
l_t_range-option = 'EQ'.
l_t_range-low = ls_tvarvc-high + 1.
APPEND l_t_range.
ELSE.
p_subrc = sy-subrc.
ENDIF.
*$*$ end of routine - insert your code only before this line *-*
endform.
______________________________________________________________________________
Ещё вкусный вариант с дополнительной проверкой:
*&---------------------------------------------------------------------*
*& Include RSBC_SEL_ROUTINE_TPL
*&---------------------------------------------------------------------*
PROGRAM conversion_routine.
* Type pools used by conversion program
TYPE-POOLS: rsarc, rsarr, rssm.
TABLES: rssdlrange.
* Global code used by conversion rules
*$*$ begin of global - insert your declaration only below this line *-*
* TABLES: ...
* DATA: ...
*$*$ end of global - insert your declaration only before this line *-*
* -------------------------------------------------------------------
* Fieldname = CALDAY
* data type = DATS
* length = 000008
* -------------------------------------------------------------------
FORM compute_CALDAY
TABLES l_t_range STRUCTURE rssdlrange
CHANGING p_subrc LIKE sy-subrc.
* Insert source code to current selection field
*$*$ begin of routine - insert your code only below this line *-*
DATA: ls_tvarvc TYPE tvarvc.
SELECT SINGLE *
INTO ls_tvarvc
FROM tvarvc
WHERE type = 'S'
AND name EQ 'ZSO_REVERSE_TURNOVER'.
IF sy-subrc EQ 0.
* Защита от дурака, если не поставят "между" или "равно"
IF ls_tvarvc-opti IS INITIAL.
IF ls_tvarvc-high IS NOT INITIAL.
ls_tvarvc-opti = 'BT'.
ELSE.
ls_tvarvc-opti = 'EQ'.
ENDIF.
ENDIF.
* Защита от дурака, если не поставят "включительно"
IF ls_tvarvc-sign IS INITIAL.
ls_tvarvc-sign = 'I'.
ENDIF.
l_t_range-fieldname = 'CALDAY'.
l_t_range-sign = ls_tvarvc-sign.
l_t_range-option = ls_tvarvc-opti.
l_t_range-low = ls_tvarvc-low.
l_t_range-high = ls_tvarvc-high.
APPEND l_t_range.
ELSE.
p_subrc = sy-subrc.
ENDIF.
*$*$ end of routine - insert your code only before this line *-*
ENDFORM. "compute_CALDAY
пятница, 9 августа 2013 г.
Зависла транзакция RSPC
There was an inconsistency in RSCOMPTLOGO:
TLOGO RSPC
APPLNM YPC_RSBU_SMETA_7 - имя инфообласти
PARENTNAME YPC_RSBU_SMETA
CHILDNAME
NEXTNAME YPC_RSBU_SMETA_7 - не должно совпадать с APPLNM!!!
TXTLG
Where the node above caused an infinite loop. I corrected this and now
RSA1 is accessible.
TLOGO RSPC
APPLNM YPC_RSBU_SMETA_7 - имя инфообласти
PARENTNAME YPC_RSBU_SMETA
CHILDNAME
NEXTNAME YPC_RSBU_SMETA_7 - не должно совпадать с APPLNM!!!
TXTLG
Where the node above caused an infinite loop. I corrected this and now
RSA1 is accessible.
среда, 7 августа 2013 г.
Зависание GUI SAP Logon 730
При переключении закладок зависать стал GUI. Замечено для 7.3 версии.
Решение - остановка службы и процесса tKnoa-sm-F14079C0 (SAP-шпион).
Решение - остановка службы и процесса tKnoa-sm-F14079C0 (SAP-шпион).
Подписаться на:
Сообщения (Atom)