Documente Academic
Documente Profesional
Documente Cultură
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
PROGRAM trans_routine.
*---------------------------------------------------------------------*
*
CLASS routine DEFINITION
*---------------------------------------------------------------------*
*
*---------------------------------------------------------------------*
CLASS lcl_transform DEFINITION.
PUBLIC SECTION.
*
Attributs
DATA:
p_check_master_data_exist
TYPE RSODSOCHECKONLY READ-ONLY,
*Instance for getting request runtime attributs;
*
Available information: Refer to methods of
*
interface 'if_rsbk_request_admintab_view'
p_r_request
TYPE REF TO if_rsbk_request_admintab_view READ-ONLY.
PRIVATE SECTION.
TYPE-POOLS: rsd, rstr.
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
Date: 14.09.2015
Page : 2 / 7
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
*
*
*
*
*
*
*
*
*
*
/BIC/DTRPTFL21
TYPE /BIC/OIDTRPTFL21,
InfoObject: DTRPTFL22 DT Reporting Flag 22.
/BIC/DTRPTFL22
TYPE /BIC/OIDTRPTFL22,
InfoObject: DTRPTFL23 DT Reporting Flag 23.
/BIC/DTRPTFL23
TYPE /BIC/OIDTRPTFL23,
InfoObject: DTRPTFL24 DT Reporting Flag 24.
/BIC/DTRPTFL24
TYPE /BIC/OIDTRPTFL24,
InfoObject: DTRPTFL25 DT Reporting Flag 25.
/BIC/DTRPTFL25
TYPE /BIC/OIDTRPTFL25,
InfoObject: DTRPTFL26 DT Reporting Flag 26.
/BIC/DTRPTFL26
TYPE /BIC/OIDTRPTFL26,
InfoObject: DTRPTFL27 DT Reporting Flag 27.
/BIC/DTRPTFL27
TYPE /BIC/OIDTRPTFL27,
InfoObject: DTRPTFL28 DT Reporting Flag 28.
/BIC/DTRPTFL28
TYPE /BIC/OIDTRPTFL28,
InfoObject: DTRPTFL29 DT Reporting Flag 29.
/BIC/DTRPTFL29
TYPE /BIC/OIDTRPTFL29,
InfoObject: DTRPTFL30 DT Reporting Flag 30.
/BIC/DTRPTFL30
TYPE /BIC/OIDTRPTFL30,
InfoObject: 0RECORD.
RECORD
TYPE RSARECORD,
END
OF _ty_s_TG_1.
TYPES:
_ty_t_TG_1
TYPE STANDARD TABLE OF _ty_s_TG_1
WITH NON-UNIQUE DEFAULT KEY.
*$*$ begin of global - insert your declaration only below this line
... "insert your code here
*-*
Date: 14.09.2015
*-*
Page : 3 / 7
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
*$*$ begin of 2nd part global - insert your code only below this line
... "insert your code here
*$*$ end of 2nd part global - insert your code only before this line
*
*
*---------------------------------------------------------------------*
*
CLASS routine IMPLEMENTATION
*---------------------------------------------------------------------*
*
*---------------------------------------------------------------------*
CLASS lcl_transform IMPLEMENTATION.
*----------------------------------------------------------------------*
*
Method end_routine
*----------------------------------------------------------------------*
*
Calculation of result package via end routine.
*
Note: Update of target fields depends on rule assignment in
*
transformation editor. Only fields that have a rule assigned,
*
are updated to the data target.
*----------------------------------------------------------------------*
*
<-> result package
*----------------------------------------------------------------------*
METHOD end_routine.
*=== Segments ===
FIELD-SYMBOLS:
<RESULT_FIELDS>
DATA:
MONITOR_REC
TYPE _ty_s_TG_1.
TYPE rstmonitor.
*$*$ begin of routine - insert your code only below this line
... "insert your code here
*-- fill table "MONITOR" with values of structure "MONITOR_REC"
*to make monitor entries
... "to cancel the update process
*
raise exception type CX_RSROUT_ABORT.
TYPES: BEGIN OF TY_RANGES_COUNTRY,
SIGN TYPE TVARVC-SIGN,
OPTION TYPE TVARVC-OPTI,
LOW TYPE TVARVC-LOW,
HIGH TYPE TVARVC-HIGH,
END OF TY_RANGES_COUNTRY.
"PB1K909239
"PB1K909239
"PB1K909239
"PB1K909239
"PB1K909239
"PB1K909239
"PB1K909239
"PB1K909239
"PB1K909239
"PB1K909239
REFRESH: G_T_TVARVC[].
"PB1K909239
"PB1K909239
"PB1K909239
"PB1K909239
"PB1K909239
IF
"PB1K909239
G_S_TVARVC.
G_S_TVARVC-SIGN.
G_S_TVARVC-OPTI.
G_S_TVARVC-LOW.
G_S_TVARVC-HIGH.
G_T_COUNTRY.
ENDIF.
"PB1K909239
"PB1K909239
"PB1K909239
"PB1K909239
"PB1K909239
"PB1K909239
"PB1K909239
"PB1K909239
"PB1K909239
File : RS_ROUTINE.
Date: 14.09.2015
*-*
Page : 4 / 7
226
DATA: DT_DTMAPPNG TYPE STANDARD TABLE OF L_TYPES_DTMAPPNG.
227
DATA: DT_DTMAPPNG_LINE LIKE LINE OF DT_DTMAPPNG.
228
DATA: E_S_RESULT TYPE _TY_S_TG_1,
229
E_T_RESULT TYPE _TY_T_TG_1.
230
DATA: LAST_COUNTRY(30) TYPE C,
231
LAST_VAL(20) TYPE C.
232
233
REFRESH: DT_DTMAPPNG.
234
235
SELECT * FROM /BIC/ADTMAPPNG00
236
INTO TABLE DT_DTMAPPNG
237
WHERE /BIC/DTOBJNAME = 'BLART'
238 *
AND COUNTRY IN ('SG','TH','MY','ID','BN','VN','KH'). "PB1K909239
239
AND COUNTRY IN G_T_COUNTRY.
"PB1K909239
240
241
SORT DT_DTMAPPNG ASCENDING BY COUNTRY /BIC/DTVAL2 /BIC/DTFLD2.
242
DELETE ADJACENT DUPLICATES FROM DT_DTMAPPNG
243
COMPARING COUNTRY /BIC/DTVAL2 /BIC/DTFLD2.
244
245
SORT RESULT_PACKAGE ASCENDING BY /BIC/DTDTYPRPT.
246
DELETE ADJACENT DUPLICATES FROM RESULT_PACKAGE
247
COMPARING /BIC/DTDTYPRPT COUNTRY.
248
249 *-- LOOP THRU THE INCOMING GL ACCOUNTS
250
LOOP AT DT_DTMAPPNG INTO DT_DTMAPPNG_LINE.
251
252
CLEAR E_S_RESULT.
253
254
CASE DT_DTMAPPNG_LINE-/BIC/DTFLD2.
255
WHEN 'AR_RESERVE'.
256
E_S_RESULT-/BIC/DTRPTFL1 = 'X'.
257
E_S_RESULT-COUNTRY =
258
DT_DTMAPPNG_LINE-COUNTRY.
259
E_S_RESULT-/BIC/DTDTYPRPT =
260
DT_DTMAPPNG_LINE-/BIC/DTVAL2.
261
APPEND E_S_RESULT TO E_T_RESULT.
262
WHEN 'AR_WRITE_OFF'.
263
E_S_RESULT-/BIC/DTRPTFL2 = 'X'.
264
E_S_RESULT-COUNTRY =
265
DT_DTMAPPNG_LINE-COUNTRY.
266
E_S_RESULT-/BIC/DTDTYPRPT =
267
DT_DTMAPPNG_LINE-/BIC/DTVAL2.
268
APPEND E_S_RESULT TO E_T_RESULT.
269
WHEN 'AR_WRITE_OFF_CANC'.
270
E_S_RESULT-/BIC/DTRPTFL3 = 'X'.
271
E_S_RESULT-COUNTRY =
272
DT_DTMAPPNG_LINE-COUNTRY.
273
E_S_RESULT-/BIC/DTDTYPRPT =
274
DT_DTMAPPNG_LINE-/BIC/DTVAL2.
275
APPEND E_S_RESULT TO E_T_RESULT.
276
WHEN 'CANCEL_DEBIT_MEMO'.
277
E_S_RESULT-/BIC/DTRPTFL4 = 'X'.
278
E_S_RESULT-COUNTRY =
279
DT_DTMAPPNG_LINE-COUNTRY.
280
E_S_RESULT-/BIC/DTDTYPRPT =
281
DT_DTMAPPNG_LINE-/BIC/DTVAL2.
282
APPEND E_S_RESULT TO E_T_RESULT.
283
WHEN 'CANCEL_INVOICE'.
284
E_S_RESULT-/BIC/DTRPTFL5 = 'X'.
285
E_S_RESULT-COUNTRY =
286
DT_DTMAPPNG_LINE-COUNTRY.
287
E_S_RESULT-/BIC/DTDTYPRPT =
288
DT_DTMAPPNG_LINE-/BIC/DTVAL2.
289
APPEND E_S_RESULT TO E_T_RESULT.
290
WHEN 'CASH_RECEIPT'.
291
E_S_RESULT-/BIC/DTRPTFL6 = 'X'.
292
E_S_RESULT-COUNTRY =
293
DT_DTMAPPNG_LINE-COUNTRY.
294
E_S_RESULT-/BIC/DTDTYPRPT =
295
DT_DTMAPPNG_LINE-/BIC/DTVAL2.
296
APPEND E_S_RESULT TO E_T_RESULT.
297
WHEN 'CASH_RECEIPT_UNALLOC'.
298
E_S_RESULT-/BIC/DTRPTFL7 = 'X'.
299
E_S_RESULT-COUNTRY =
300
DT_DTMAPPNG_LINE-COUNTRY.
File : RS_ROUTINE.
Date: 14.09.2015
Page : 5 / 7
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
E_S_RESULT-/BIC/DTDTYPRPT =
DT_DTMAPPNG_LINE-/BIC/DTVAL2.
APPEND E_S_RESULT TO E_T_RESULT.
WHEN 'CHARGE_FR_AFFILIATE'.
E_S_RESULT-/BIC/DTRPTFL8 = 'X'.
E_S_RESULT-COUNTRY =
DT_DTMAPPNG_LINE-COUNTRY.
E_S_RESULT-/BIC/DTDTYPRPT =
DT_DTMAPPNG_LINE-/BIC/DTVAL2.
APPEND E_S_RESULT TO E_T_RESULT.
WHEN 'CONTRACTOR_EXPENSE'.
E_S_RESULT-/BIC/DTRPTFL9 = 'X'.
E_S_RESULT-COUNTRY =
DT_DTMAPPNG_LINE-COUNTRY.
E_S_RESULT-/BIC/DTDTYPRPT =
DT_DTMAPPNG_LINE-/BIC/DTVAL2.
APPEND E_S_RESULT TO E_T_RESULT.
WHEN 'CONVERSIONS_BEG_BAL'.
E_S_RESULT-/BIC/DTRPTFL10 = 'X'.
E_S_RESULT-COUNTRY =
DT_DTMAPPNG_LINE-COUNTRY.
E_S_RESULT-/BIC/DTDTYPRPT =
DT_DTMAPPNG_LINE-/BIC/DTVAL2.
APPEND E_S_RESULT TO E_T_RESULT.
WHEN 'CUSTOMER_DOCUMENT'.
E_S_RESULT-/BIC/DTRPTFL11 = 'X'.
E_S_RESULT-COUNTRY =
DT_DTMAPPNG_LINE-COUNTRY.
E_S_RESULT-/BIC/DTDTYPRPT =
DT_DTMAPPNG_LINE-/BIC/DTVAL2.
APPEND E_S_RESULT TO E_T_RESULT.
WHEN 'DEBIT_MEMO'.
E_S_RESULT-/BIC/DTRPTFL12 = 'X'.
E_S_RESULT-COUNTRY =
DT_DTMAPPNG_LINE-COUNTRY.
E_S_RESULT-/BIC/DTDTYPRPT =
DT_DTMAPPNG_LINE-/BIC/DTVAL2.
APPEND E_S_RESULT TO E_T_RESULT.
WHEN 'EXP_STAFF'.
E_S_RESULT-/BIC/DTRPTFL13 = 'X'.
E_S_RESULT-COUNTRY =
DT_DTMAPPNG_LINE-COUNTRY.
E_S_RESULT-/BIC/DTDTYPRPT =
DT_DTMAPPNG_LINE-/BIC/DTVAL2.
APPEND E_S_RESULT TO E_T_RESULT.
WHEN 'EXPENSES_X_COMP'.
E_S_RESULT-/BIC/DTRPTFL14 = 'X'.
E_S_RESULT-COUNTRY =
DT_DTMAPPNG_LINE-COUNTRY.
E_S_RESULT-/BIC/DTDTYPRPT =
DT_DTMAPPNG_LINE-/BIC/DTVAL2.
APPEND E_S_RESULT TO E_T_RESULT.
WHEN 'INVOICE_CREDIT_MEMO'.
E_S_RESULT-/BIC/DTRPTFL15 = 'X'.
E_S_RESULT-COUNTRY =
DT_DTMAPPNG_LINE-COUNTRY.
E_S_RESULT-/BIC/DTDTYPRPT =
DT_DTMAPPNG_LINE-/BIC/DTVAL2.
APPEND E_S_RESULT TO E_T_RESULT.
WHEN 'INVOICE_STANDARD'.
E_S_RESULT-/BIC/DTRPTFL16 = 'X'.
E_S_RESULT-COUNTRY =
DT_DTMAPPNG_LINE-COUNTRY.
E_S_RESULT-/BIC/DTDTYPRPT =
DT_DTMAPPNG_LINE-/BIC/DTVAL2.
APPEND E_S_RESULT TO E_T_RESULT.
WHEN 'OFFICE_TIME_XFER'.
E_S_RESULT-/BIC/DTRPTFL17 = 'X'.
E_S_RESULT-COUNTRY =
DT_DTMAPPNG_LINE-COUNTRY.
E_S_RESULT-/BIC/DTDTYPRPT =
DT_DTMAPPNG_LINE-/BIC/DTVAL2.
APPEND E_S_RESULT TO E_T_RESULT.
WHEN 'REVERSALS'.
E_S_RESULT-/BIC/DTRPTFL18 = 'X'.
File : RS_ROUTINE.
Date: 14.09.2015
Page : 6 / 7
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
E_S_RESULT-COUNTRY =
DT_DTMAPPNG_LINE-COUNTRY.
E_S_RESULT-/BIC/DTDTYPRPT =
DT_DTMAPPNG_LINE-/BIC/DTVAL2.
APPEND E_S_RESULT TO E_T_RESULT.
WHEN 'SETTLEMENT_EXPENSES'.
E_S_RESULT-/BIC/DTRPTFL19 = 'X'.
E_S_RESULT-COUNTRY =
DT_DTMAPPNG_LINE-COUNTRY.
E_S_RESULT-/BIC/DTDTYPRPT =
DT_DTMAPPNG_LINE-/BIC/DTVAL2.
APPEND E_S_RESULT TO E_T_RESULT.
WHEN 'TIME_T'.
E_S_RESULT-/BIC/DTRPTFL20 = 'X'.
E_S_RESULT-COUNTRY =
DT_DTMAPPNG_LINE-COUNTRY.
E_S_RESULT-/BIC/DTDTYPRPT =
DT_DTMAPPNG_LINE-/BIC/DTVAL2.
APPEND E_S_RESULT TO E_T_RESULT.
WHEN 'UNPLANNED_ALLOWANCE'.
E_S_RESULT-/BIC/DTRPTFL21 = 'X'.
E_S_RESULT-COUNTRY =
DT_DTMAPPNG_LINE-COUNTRY.
E_S_RESULT-/BIC/DTDTYPRPT =
DT_DTMAPPNG_LINE-/BIC/DTVAL2.
APPEND E_S_RESULT TO E_T_RESULT.
WHEN 'UNPLANNED_ALLOWANCE_EXP'.
E_S_RESULT-/BIC/DTRPTFL22 = 'X'.
E_S_RESULT-COUNTRY =
DT_DTMAPPNG_LINE-COUNTRY.
E_S_RESULT-/BIC/DTDTYPRPT =
DT_DTMAPPNG_LINE-/BIC/DTVAL2.
APPEND E_S_RESULT TO E_T_RESULT.
WHEN 'WRITE_OFF_ALW'.
E_S_RESULT-/BIC/DTRPTFL23 = 'X'.
E_S_RESULT-COUNTRY =
DT_DTMAPPNG_LINE-COUNTRY.
E_S_RESULT-/BIC/DTDTYPRPT =
DT_DTMAPPNG_LINE-/BIC/DTVAL2.
APPEND E_S_RESULT TO E_T_RESULT.
WHEN 'WRITE_OFF_EXP'.
E_S_RESULT-/BIC/DTRPTFL24 = 'X'.
E_S_RESULT-COUNTRY =
DT_DTMAPPNG_LINE-COUNTRY.
E_S_RESULT-/BIC/DTDTYPRPT =
DT_DTMAPPNG_LINE-/BIC/DTVAL2.
APPEND E_S_RESULT TO E_T_RESULT.
WHEN 'WRITE_OFF_TIME'.
E_S_RESULT-/BIC/DTRPTFL25 = 'X'.
E_S_RESULT-COUNTRY =
DT_DTMAPPNG_LINE-COUNTRY.
E_S_RESULT-/BIC/DTDTYPRPT =
DT_DTMAPPNG_LINE-/BIC/DTVAL2.
APPEND E_S_RESULT TO E_T_RESULT.
ENDCASE.
ENDLOOP.
*-- ADD THE LINES TO THE OUTPUT PACKAGE
DELETE ADJACENT DUPLICATES FROM E_T_RESULT[]
COMPARING COUNTRY /BIC/DTDTYPRPT.
REFRESH RESULT_PACKAGE.
MOVE E_T_RESULT[] TO RESULT_PACKAGE[].
*$*$ end of routine - insert your code only before this line
*-*
ENDMETHOD.
"end_routine
*----------------------------------------------------------------------*
*
Inverse method inverse_end_routine
*----------------------------------------------------------------------*
*
This subroutine needs to be implemented only for direct access
*
(for better performance) and for the Report/Report Interface
*
(drill through).
*
The inverse routine should transform a projection and
*
a selection for the target to a projection and a selection
*
for the source, respectively.
File : RS_ROUTINE.
Date: 14.09.2015
Page : 7 / 7
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
*
If the implementation remains empty all fields are filled and
*
all values are selected.
*----------------------------------------------------------------------*
*
Customer comment:
*----------------------------------------------------------------------*
METHOD inverse_end_routine.
*
*
*
*
*
*
*
*
*
IMPORTING
i_r_selset_outbound
i_th_fields_outbound
i_r_selset_outbound_complete
i_r_universe_inbound
CHANGING
c_r_selset_inbound
c_th_fields_inbound
c_exact
TYPE
TYPE
TYPE
TYPE
REF TO
HASHED
REF TO
REF TO
cl_rsmds_set
TABLE
cl_rsmds_set
cl_rsmds_universe
*$*$ begin of inverse routine - insert your code only below this line*-*
... "insert your code here
*$*$ end of inverse routine - insert your code only before this line *-*
ENDMETHOD.
"inverse_end_routine
METHOD new_record__end_routine.
***** IMPLEMENTATION
ENDMETHOD.
ENDCLASS.
"routine IMPLEMENTATION
File : RS_ROUTINE.
Date: 14.09.2015