Warhorse Simulations

Automated Card Tracking System: Home

Paths of Glory: Kim Dae Young's Game Journal

Number of entries per page:
  Sort order:
Most recent entries first
Oldest entries first

Filter on: (filter will search Player, Title, and Entry)

View elapsed game time

Next 100 entries

Entry # Time Turn Player Title Entry
5 9/21/2018 1:00:00 AM August 1914 Central Powers Message * MOVE '숫자 타입이 아닌 값이 있습니다!' TO .
= |{ LT_INTERN-VALUE } { TEXT-T01 } |.
ELSE.
MESSAGE E000 WITH LT_INTERN-VALUE TEXT-T01.
ENDIF.
ENDIF.
WHEN 'INT1' OR 'INT2' OR 'INT4' OR 'INT8'.
* REPLACE ALL OCCURRENCES OF SPACE IN LT_INTERN-VALUE WITH ''.
IF LS_USR01_EXP-DCPFM = 'X'.
REPLACE ALL OCCURRENCES OF ',' IN LT_INTERN-VALUE WITH ''.
ELSE.
REPLACE ALL OCCURRENCES OF '.' IN LT_INTERN-VALUE WITH ''.
ENDIF.
CONDENSE LT_INTERN-VALUE NO-GAPS.
IF LT_INTERN-VALUE CO C_ALLOWABLE_INT.

ELSE.
IF LS_DFIES-FIELDNAME = 'MSG'.
ASSIGN COMPONENT LV_LINE OF STRUCTURE P_ETAB TO .
* MOVE '숫자 타입이 아닌 값이 있습니다!' TO .
= |{ LT_INTERN-VALUE } { TEXT-T01 } |.
ELSE.
MESSAGE E000 WITH LT_INTERN-VALUE TEXT-T01.
ENDIF.
ENDIF.
WHEN OTHERS.
ENDCASE.
*
ENDIF.

TRY .
MOVE LT_INTERN-VALUE TO .

CATCH CX_ROOT INTO LCX_ERROR.
ASSIGN COMPONENT LV_LINE OF STRUCTURE P_ETAB TO .
IF IS INITIAL.
= LCX_ERROR->GET_TEXT( ). "得到错误信息
ENDIF.
ENDTRY.

AT END OF ROW.

APPEND P_ETAB.
CLEAR: P_ETAB.

ENDAT.

CLEAR LT_INTERN.

ENDLOOP.

ENDIF.

ENDFORM. " EXCLE_DATA_UPLOAD
4 9/21/2018 12:58:00 AM August 1914 Central Powers Message REPLACE ALL OCCURRENCES OF '年' IN LT_INTERN-VALUE WITH ''.
REPLACE ALL OCCURRENCES OF '月' IN LT_INTERN-VALUE WITH ''.
REPLACE ALL OCCURRENCES OF '日' IN LT_INTERN-VALUE WITH ''.
CONDENSE LT_INTERN-VALUE NO-GAPS.

CLEAR LV_ERROR.
CALL FUNCTION 'CONVERT_DATE_TO_INTERNAL'
EXPORTING
DATE_EXTERNAL = LT_INTERN-VALUE
IMPORTING
DATE_INTERNAL = LT_INTERN-VALUE
EXCEPTIONS
DATE_EXTERNAL_IS_INVALID = 1
OTHERS = 2.
IF SY-SUBRC <> 0.
LV_ERROR = 'X'.
ENDIF.

IF LT_INTERN-VALUE CO C_ALLOWABLE_NUM
AND LV_ERROR IS INITIAL.

ELSE.
IF LS_DFIES-FIELDNAME = 'MSG'.
ASSIGN COMPONENT LV_LINE OF STRUCTURE P_ETAB TO .
* MOVE '은(는) 날짜가 아닙니다!!' TO .
= |{ LT_INTERN-VALUE } { TEXT-T04 } |.
ELSE.
MESSAGE E000 WITH LT_INTERN-VALUE TEXT-T04.
ENDIF.
ENDIF.

WHEN 'TIMS'.
REPLACE ALL OCCURRENCES OF ':' IN LT_INTERN-VALUE WITH ''.
REPLACE ALL OCCURRENCES OF '시' IN LT_INTERN-VALUE WITH ''.
REPLACE ALL OCCURRENCES OF '분' IN LT_INTERN-VALUE WITH ''.
REPLACE ALL OCCURRENCES OF '초' IN LT_INTERN-VALUE WITH ''.
REPLACE ALL OCCURRENCES OF '时' IN LT_INTERN-VALUE WITH ''.
REPLACE ALL OCCURRENCES OF '分' IN LT_INTERN-VALUE WITH ''.
REPLACE ALL OCCURRENCES OF '秒' IN LT_INTERN-VALUE WITH ''.
CONDENSE LT_INTERN-VALUE NO-GAPS.

IF LT_INTERN-VALUE CO C_ALLOWABLE_NUM.

ELSE.
IF LS_DFIES-FIELDNAME = 'MSG'.
ASSIGN COMPONENT LV_LINE OF STRUCTURE P_ETAB TO .
* MOVE '은(는) 시간이 아닙니다!' TO .
= |{ LT_INTERN-VALUE } { TEXT-T05 } |.
ELSE.
MESSAGE E000 WITH LT_INTERN-VALUE TEXT-T05.
ENDIF.
ENDIF.

WHEN 'CHAR'.

WHEN 'DEC'.
* REPLACE ALL OCCURRENCES OF SPACE IN LT_INTERN-VALUE WITH ''.
IF LS_USR01_EXP-DCPFM = 'X'.
REPLACE ALL OCCURRENCES OF ',' IN LT_INTERN-VALUE WITH ''.
ELSE.
REPLACE ALL OCCURRENCES OF '.' IN LT_INTERN-VALUE WITH ''.
ENDIF.
CONDENSE LT_INTERN-VALUE NO-GAPS.
IF LT_INTERN-VALUE CO C_ALLOWABLE_DEC.

ELSE.
IF LS_DFIES-FIELDNAME = 'MSG'.
ASSIGN COMPONENT LV_LINE OF STRUCTURE P_ETAB TO .
* MOVE '숫자 타입이 아닌 값이 있습니다!' TO .
= |{ LT_INTERN-VALUE } { TEXT-T01 }|.
ELSE.
MESSAGE E000 WITH LT_INTERN-VALUE TEXT-T01.
ENDIF.
ENDIF.
WHEN 'NUMC'.
* REPLACE ALL OCCURRENCES OF SPACE IN LT_INTERN-VALUE WITH ''.
IF LS_USR01_EXP-DCPFM = 'X'.
REPLACE ALL OCCURRENCES OF ',' IN LT_INTERN-VALUE WITH ''.
ELSE.
REPLACE ALL OCCURRENCES OF '.' IN LT_INTERN-VALUE WITH ''.
ENDIF.
CONDENSE LT_INTERN-VALUE NO-GAPS.
IF LT_INTERN-VALUE CO C_ALLOWABLE_NUM.

ELSE.
IF LS_DFIES-FIELDNAME = 'MSG'.
ASSIGN COMPONENT LV_LINE OF STRUCTURE P_ETAB TO .
* MOVE '숫자 타입이 아닌 값이 있습lj
3 9/21/2018 12:58:00 AM August 1914 Central Powers Message IF LS_DFIES-FIELDNAME = 'MSG'.
ASSIGN COMPONENT LV_LINE OF STRUCTURE P_ETAB TO .
* MOVE '숫자 타입이 아닌 값이 있습니다!' TO .
= |{ LT_INTERN-VALUE } { TEXT-T01 } |.
ELSE.
MESSAGE E000 WITH LT_INTERN-VALUE TEXT-T01.
ENDIF.
ENDIF.
WHEN 'UNIT'.
CONDENSE LT_INTERN-VALUE NO-GAPS.
IF LT_INTERN-VALUE IS NOT INITIAL.
TRANSLATE LT_INTERN-VALUE TO UPPER CASE.

* REPLACE ALL OCCURRENCES OF SPACE IN LT_INTERN-VALUE WITH ''.

PERFORM CUNIT_INPUT(ZCM2R20010) USING LT_INTERN-VALUE
CHANGING LV_MSEHI_TMP.

IF LV_MSEHI_TMP IS INITIAL.
LV_MSEHI_TMP = LT_INTERN-VALUE.
ENDIF.

IF LV_MSEHI_TMP IS NOT INITIAL.
SELECT SINGLE MSEHI
INTO @DATA(LV_MSEHI)
FROM T006A
WHERE SPRAS = @SY-LANGU
AND MSEHI = @LV_MSEHI_TMP.

IF SY-SUBRC NE 0.
IF LS_DFIES-FIELDNAME = 'MSG'.
ASSIGN COMPONENT LV_LINE OF STRUCTURE P_ETAB TO .
* MOVE '등록되지 않은 단위 입니다!' TO .
= |{ LT_INTERN-VALUE } { TEXT-T02 }|.
ELSE.
MESSAGE E000 WITH LT_INTERN-VALUE TEXT-T02.
ENDIF.
ENDIF.
ENDIF.
ENDIF.
WHEN 'CURR'.
* REPLACE ALL OCCURRENCES OF SPACE IN LT_INTERN-VALUE WITH ''.
IF LS_USR01_EXP-DCPFM = 'X'.
REPLACE ALL OCCURRENCES OF ',' IN LT_INTERN-VALUE WITH ''.
ELSE.
REPLACE ALL OCCURRENCES OF '.' IN LT_INTERN-VALUE WITH ''.
ENDIF.
CONDENSE LT_INTERN-VALUE NO-GAPS.
IF LT_INTERN-VALUE CO C_ALLOWABLE_DEC.

ELSE.
IF LS_DFIES-FIELDNAME = 'MSG'.
ASSIGN COMPONENT LV_LINE OF STRUCTURE P_ETAB TO .
* MOVE '숫자 타입이 아닌 값이 있습니다!' TO .
= |{ LT_INTERN-VALUE } { TEXT-T01 } |.
ELSE.
MESSAGE E000 WITH LT_INTERN-VALUE TEXT-T01.
ENDIF.
ENDIF.
WHEN 'CUKY'.
CONDENSE LT_INTERN-VALUE NO-GAPS.
* REPLACE ALL OCCURRENCES OF SPACE IN LT_INTERN-VALUE WITH ''.

SELECT SINGLE WAERS
INTO @DATA(LV_WAERS)
FROM TCURT
WHERE SPRAS = @SY-LANGU
AND WAERS = @LT_INTERN-VALUE.

IF SY-SUBRC NE 0.
IF LS_DFIES-FIELDNAME = 'MSG'.
ASSIGN COMPONENT LV_LINE OF STRUCTURE P_ETAB TO .
* MOVE '등록되지 않은 통화 입니다!' TO .
= |{ LT_INTERN-VALUE } { TEXT-T03 } |.
ELSE.
MESSAGE E000 WITH LT_INTERN-VALUE TEXT-T03.
ENDIF.
ENDIF.

WHEN 'DATS'.
* REPLACE ALL OCCURRENCES OF SPACE IN LT_INTERN-VALUE WITH ''.
REPLACE ALL OCCURRENCES OF '-' IN LT_INTERN-VALUE WITH ''.
REPLACE ALL OCCURRENCES OF '/' IN LT_INTERN-VALUE WITH ''.
REPLACE ALL OCCURRENCES OF '.' IN LT_INTERN-VALUE WITH ''.
REPLACE ALL OCCURRENCES OF '년' IN LT_INTERN-VALUE WITH ''.
REPLACE ALL OCCURRENCES OF '월' IN LT_INTERN-VALUE WITH ''.
REPLACE ALL OCCURRENCES OF '일' IN LT_INTERN-VALUE WITH ''.
REPLACE ALL OCCURRENC
2 9/21/2018 12:55:00 AM August 1914 Central Powers Message FORM EXCLE_DATA_UPLOAD_1 TABLES P_ETAB "파일 업로드
USING PV_FILE
P_BEGIN_COL
P_BEGIN_ROW.

DATA : LV_ERROR.
DATA : LV_BEGIN_ROW TYPE INDEX,
LV_END_ROW TYPE INDEX.

DATA : LCX_ERROR TYPE REF TO CX_ROOT. "cx_sy_sql_error . "cx_sy_open_sql_db.

CONSTANTS : C_ALLOWABLE_ALP(52) TYPE C VALUE ' ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz', " ALPHABET
C_ALLOWABLE_SYM(28) TYPE C VALUE ' `~!@#$%^&*()_+=[]{}\|;:"<>/?'. " SYMBOL

CONSTANTS : C_ALLOWABLE_DEC(14) TYPE C VALUE ' 1234567890,.-',
C_ALLOWABLE_NUM(11) TYPE C VALUE ' 1234567890',
C_ALLOWABLE_INT(12) TYPE C VALUE ' 1234567890-'.

DATA : LT_INTERN LIKE KCDE_CELLS OCCURS 0 WITH HEADER LINE.
DATA : LT_INT LIKE KCDE_CELLS OCCURS 0 WITH HEADER LINE.
DATA : LV_INDEX TYPE SY-TABIX. "Index 용 변수
DATA : LV_LINE TYPE I. "CAT전체 필드수
DATA : LV_COUNT TYPE I. "젠체 필드개수 COUNT

DATA : LV_MSEHI_TMP TYPE MSEHI.

CLEAR : P_ETAB, P_ETAB[], LT_INTERN[].

FIELD-SYMBOLS: .
FIELD-SYMBOLS: . " 메세지 필드

IF PV_FILE IS NOT INITIAL.

LV_END_ROW = 65536.
REFRESH LT_INT.
CALL FUNCTION 'KCD_EXCEL_OLE_TO_INT_CONVERT'
EXPORTING
FILENAME = PV_FILE
I_BEGIN_COL = P_BEGIN_COL
I_BEGIN_ROW = P_BEGIN_ROW
I_END_COL = 256
I_END_ROW = LV_END_ROW
TABLES
INTERN = LT_INTERN
EXCEPTIONS
INCONSISTENT_PARAMETERS = 1
UPLOAD_OLE = 2
OTHERS = 3.
IF SY-SUBRC <> 0.
MESSAGE i054(ZCM201).
STOP.
ENDIF.

REFRESH P_ETAB.
*--^_^ CAT 정의
DATA : GT_EXCAT TYPE LVC_T_FCAT .
DATA : LR_STRDESCR TYPE REF TO CL_ABAP_STRUCTDESCR,
LT_DFIES TYPE DDFIELDS,
LS_DFIES TYPE DFIES.

* DATA : GS_EXCEL LIKE LINE OF P_ETAB.

LR_STRDESCR ?= CL_ABAP_STRUCTDESCR=>DESCRIBE_BY_DATA( P_ETAB ).
LT_DFIES = CL_SALV_DATA_DESCR=>READ_STRUCTDESCR( LR_STRDESCR ).

CLEAR : LV_LINE.
* DESCRIBE TABLE P_FIELDCAT LINES LV_LINE.
LV_LINE = LINES( LT_DFIES ).
**--^_^ 엑셀 파일 건수 점검
* CLEAR : LT_INT, LT_INT[].
* LT_INT[] = LT_INTERN[].
* SORT LT_INT BY COL DESCENDING.
* READ TABLE LT_INT INDEX 1.
* CLEAR : LV_COUNT.
* LV_COUNT = LV_LINE.
* IF LT_INT-COL NE LV_COUNT.
* P_ERROR = 'X'.
* EXIT.
* ENDIF.

DATA : LS_USR01_EXP LIKE USR01.

CALL FUNCTION 'CETA_USR01_READ'
EXPORTING
BNAME = SY-UNAME
IMPORTING
USR01_EXP = LS_USR01_EXP
EXCEPTIONS
NO_ENTRY = 1
OTHERS = 2.
IF SY-SUBRC <> 0.
* Implement suitable error handling here
ENDIF.

LOOP AT LT_INTERN.
CLEAR : LV_INDEX.
MOVE LT_INTERN-COL TO LV_INDEX.
ASSIGN COMPONENT LV_INDEX OF STRUCTURE P_ETAB TO .

CLEAR : LS_DFIES.
READ TABLE LT_DFIES
INTO LS_DFIES
INDEX LV_LINE.

READ TABLE LT_DFIES
INTO DATA(LW_CAT)
INDEX LV_INDEX.
IF SY-SUBRC = 0.

CASE LW_CAT-DATATYPE.
WHEN 'QUAN'.
* REPLACE ALL OCCURRENCES OF SPACE IN LT_INTERN-VALUE WITH ''.
IF LS_USR01_EXP-DCPFM = 'X'.
REPLACE ALL OCCURRENCES OF ',' IN LT_INTERN-VALUE WITH ''.
ELSE.
REPLACE ALL OCCURRENCES OF '.' IN LT_INTERN-VALUE WITH ''.
ENDIF.
CONDENSE LT_INTERN-VALUE NO-GAPS.
IF LT_INTERN-VALUE CO C_ALLOWABLE_DEC.

ELSE.
IF LS_DFIES-FIELDNAME
1 9/21/2018 12:54:00 AM August 1914 Central Powers Message PERFORM excle_data_upload_1 IN PROGRAM zcm2r20010
TABLES gt_upload "업로드
USING p_file
1
2.

Next 100 entries

Copyright 2005 Warhorse Simulations