Advertisement
Guest User

Untitled

a guest
Nov 13th, 2018
132
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 335.41 KB | None | 0 0
  1. class ZFICLN_LCT_OUTBD_MAPPER definition
  2. public
  3. final
  4. create public .
  5.  
  6. public section.
  7.  
  8. class-data MC_ZCONDRTH_0100 type ZLCTCONDRTH value '0100' ##NO_TEXT.
  9. class-data MC_ZOPTART_PO01 type ZLCTOPTART value 'PO01' ##NO_TEXT.
  10. class-data MC_ZOPTART_RV01 type ZLCTOPTART value 'RV01' ##NO_TEXT.
  11. class-data MC_CONDART_PM002 type ZLCTCONDART value 'PM002' ##NO_TEXT.
  12. class-data MC_CONDART_PM005 type ZLCTCONDART value 'PM005' ##NO_TEXT.
  13. class-data MC_CONDART_PM008 type ZLCTCONDART value 'PM008' ##NO_TEXT.
  14. class-data MC_CONDART_PM009 type ZLCTCONDART value 'PM009' ##NO_TEXT.
  15. class-data MC_CONDART_PM010 type ZLCTCONDART value 'PM010' ##NO_TEXT.
  16. class-data MC_ZLCTOPTART_PU01 type ZLCTOPTART value 'PU01' ##NO_TEXT.
  17. class-data MC_ZLCTDATART_DPLDUR type ZLCTDATART value 'DPLDUR' ##NO_TEXT.
  18. class-data MC_ZLCTDATART_DPIDUR type ZLCTDATART value 'DPIDUR' ##NO_TEXT.
  19.  
  20. methods CONSTRUCTOR
  21. importing
  22. !IS_ZLCTHEADER_T type ZLCTHEADER_T
  23. !IS_ZLCTCONTRACT_T type ZLCTCONTRACT_T
  24. !IS_ZLCTSALE_T type ZLCTSALE_T
  25. !IT_ZLCTSTATUS_T type ZLCTSTATUS_TT
  26. !IT_ZLCTDATE_T type ZLCTDATE_TT
  27. !IT_ZLCTOPTION_T type ZLCTOPTION_TT
  28. !IT_ZLCTPARTREL_T type ZLCTPARTREL_TT
  29. !IT_ZLCTOBJECT_T type ZLCTOBJECT_TT
  30. !IT_ZLCTARO_T type ZLCTARO_TT
  31. !IT_ZLCTCOKSST_T type ZLCTCOKSST_TT
  32. !IT_ZLCTCOND_T type ZLCTCOND_TT
  33. !IT_ZLCTIMAGE_T type ZLCTIMAGE_TT
  34. !IT_ZLCTVALUE_T type ZLCTVALUE_TT
  35. !IT_SEGMENT_FIELDS type ZLCT_MAP_BS_FLDS_TT .
  36. class-methods CHECK_MAPPING_CUST
  37. exceptions
  38. MAPPING_ERROR .
  39. class-methods GET_COMPANY_T
  40. returning
  41. value(RT_ZLCT_COMPANY_T) type ZLCT_COMPANY_TT .
  42. class-methods GET_GP_ROLE_T
  43. returning
  44. value(RT_GP_ROLE_T) type ZCONT_GP_ROLE_TT .
  45. class-methods GET_OBJ_TYPE_T
  46. returning
  47. value(RT_OBJ_TYPE_T) type ZLCT_OBJ_TYPE_TT .
  48. class-methods GET_OPCO_TYPE_T
  49. returning
  50. value(RT_OPCO_TYPE_T) type ZLCT_OPCO_TYPE_TT .
  51. class-methods MAP_CA_TYPE
  52. importing
  53. !IV_ZLCTOPTART type ZLCTOPTART
  54. returning
  55. value(RV_ZLCTNL_CATYPE) type ZLCTNL_CATYPE .
  56. class-methods MAP_ZCONDRTH
  57. importing
  58. !IV_ZCONDRTH type ZLCTCONDRTH
  59. returning
  60. value(RV_ZCONDRTH) type ZLCT_LNL_CONDRTH .
  61. class-methods MAP_ZCONDZALW
  62. importing
  63. !IV_ZCONDZALW type ZLCTCONDZALW
  64. returning
  65. value(RV_ZCONDZALW) type ZLCT_LNLCONDZALW .
  66. class-methods MAP_CORRECT_DATA_TYPE
  67. importing
  68. !IV_SEGMENT type ZLCT_MAP_SEGMENT
  69. !IT_SEGMENT_FIELDS type ZLCT_MAP_BS_FLDS_TT
  70. changing
  71. value(CS_SEGMENT) type ANY
  72. exceptions
  73. ERROR_ON_READING_ELEMENT
  74. ERROR_ON_CREATION_OF_DATATYPE
  75. ERROR_ON_ASSIGMENT .
  76. class-methods MAP_ITEM_CFACT
  77. importing
  78. !IV_SEGMENT type ZLCT_MAP_SEGMENT
  79. !IS_ZLCTOBJECT_T type ZLCTOBJECT_T
  80. !IS_ZLCTCOND_T type ZLCTCOND_T
  81. !IS_ZLCTHEADER_T type ZLCTHEADER_T
  82. !IS_ZLCTCONTRACT_T type ZLCTCONTRACT_T
  83. !IS_ZLCTSALE_T type ZLCTSALE_T
  84. !IT_ZLCTSTATUS_T type ZLCTSTATUS_TT
  85. !IT_ZLCTDATE_T type ZLCTDATE_TT
  86. !IT_ZLCTOPTION_T type ZLCTOPTION_TT
  87. !IT_ZLCTPARTREL_T type ZLCTPARTREL_TT
  88. !IT_ZLCTOBJECT_T type ZLCTOBJECT_TT
  89. !IT_ZLCTARO_T type ZLCTARO_TT
  90. !IT_ZLCTCOKSST_T type ZLCTCOKSST_TT
  91. !IT_ZLCTCOND_T type ZLCTCOND_TT
  92. !IT_ZLCTIMAGE_T type ZLCTIMAGE_TT
  93. !IT_ZLCTVALUE_T type ZLCTVALUE_TT
  94. exporting
  95. !ES_ITEM_CFACT_DATA type ZLCTE1CON_ITEM_CFACT .
  96. class-methods MAP_ITEM_CLASSM_IFRS
  97. importing
  98. !IV_SEGMENT type ZLCT_MAP_SEGMENT
  99. !IS_ZLCTOBJECT_T type ZLCTOBJECT_T
  100. !IS_ZLCTHEADER_T type ZLCTHEADER_T
  101. !IS_ZLCTCONTRACT_T type ZLCTCONTRACT_T
  102. !IS_ZLCTSALE_T type ZLCTSALE_T
  103. !IT_ZLCTSTATUS_T type ZLCTSTATUS_TT
  104. !IT_ZLCTDATE_T type ZLCTDATE_TT
  105. !IT_ZLCTOPTION_T type ZLCTOPTION_TT
  106. !IT_ZLCTPARTREL_T type ZLCTPARTREL_TT
  107. !IT_ZLCTOBJECT_T type ZLCTOBJECT_TT
  108. !IT_ZLCTARO_T type ZLCTARO_TT
  109. !IT_ZLCTCOKSST_T type ZLCTCOKSST_TT
  110. !IT_ZLCTCOND_T type ZLCTCOND_TT
  111. !IT_ZLCTIMAGE_T type ZLCTIMAGE_TT
  112. !IT_ZLCTVALUE_T type ZLCTVALUE_TT
  113. exporting
  114. !ES_ITEM_CLASSM_DATA type ZLCTE1CON_ITEM_CLASSM .
  115. class-methods MAP_ITEM_CLASSM_LOC
  116. importing
  117. !IV_SEGMENT type ZLCT_MAP_SEGMENT
  118. !IS_ZLCTOBJECT_T type ZLCTOBJECT_T
  119. !IS_ZLCTHEADER_T type ZLCTHEADER_T
  120. !IS_ZLCTCONTRACT_T type ZLCTCONTRACT_T
  121. !IS_ZLCTSALE_T type ZLCTSALE_T
  122. !IT_ZLCTSTATUS_T type ZLCTSTATUS_TT
  123. !IT_ZLCTDATE_T type ZLCTDATE_TT
  124. !IT_ZLCTOPTION_T type ZLCTOPTION_TT
  125. !IT_ZLCTPARTREL_T type ZLCTPARTREL_TT
  126. !IT_ZLCTOBJECT_T type ZLCTOBJECT_TT
  127. !IT_ZLCTARO_T type ZLCTARO_TT
  128. !IT_ZLCTCOKSST_T type ZLCTCOKSST_TT
  129. !IT_ZLCTCOND_T type ZLCTCOND_TT
  130. !IT_ZLCTIMAGE_T type ZLCTIMAGE_TT
  131. !IT_ZLCTVALUE_T type ZLCTVALUE_TT
  132. exporting
  133. !ES_ITEM_CLASSM_DATA type ZLCTE1CON_ITEM_CLASSM .
  134. class-methods MAP_ITEM_COND
  135. importing
  136. !IV_SEGMENT type ZLCT_MAP_SEGMENT
  137. !IS_ZLCTOBJECT_T type ZLCTOBJECT_T
  138. !IS_ZLCTCOND_T type ZLCTCOND_T
  139. !IS_ZLCTHEADER_T type ZLCTHEADER_T
  140. !IS_ZLCTCONTRACT_T type ZLCTCONTRACT_T
  141. !IS_ZLCTSALE_T type ZLCTSALE_T
  142. !IT_ZLCTSTATUS_T type ZLCTSTATUS_TT
  143. !IT_ZLCTDATE_T type ZLCTDATE_TT
  144. !IT_ZLCTOPTION_T type ZLCTOPTION_TT
  145. !IT_ZLCTPARTREL_T type ZLCTPARTREL_TT
  146. !IT_ZLCTOBJECT_T type ZLCTOBJECT_TT
  147. !IT_ZLCTARO_T type ZLCTARO_TT
  148. !IT_ZLCTCOKSST_T type ZLCTCOKSST_TT
  149. !IT_ZLCTCOND_T type ZLCTCOND_TT
  150. !IT_ZLCTIMAGE_T type ZLCTIMAGE_TT
  151. !IT_ZLCTVALUE_T type ZLCTVALUE_TT
  152. exporting
  153. !ES_ITEM_COND_DATA type ZLCTE1CON_ITEM_COND .
  154. class-methods MAP_ITEM_CONDV
  155. importing
  156. !IV_SEGMENT type ZLCT_MAP_SEGMENT
  157. !IS_ZLCTOBJECT_T type ZLCTOBJECT_T
  158. !IS_ZLCTCOND_T type ZLCTCOND_T
  159. !IS_ZLCTHEADER_T type ZLCTHEADER_T
  160. !IS_ZLCTCONTRACT_T type ZLCTCONTRACT_T
  161. !IS_ZLCTSALE_T type ZLCTSALE_T
  162. !IT_ZLCTSTATUS_T type ZLCTSTATUS_TT
  163. !IT_ZLCTDATE_T type ZLCTDATE_TT
  164. !IT_ZLCTOPTION_T type ZLCTOPTION_TT
  165. !IT_ZLCTPARTREL_T type ZLCTPARTREL_TT
  166. !IT_ZLCTOBJECT_T type ZLCTOBJECT_TT
  167. !IT_ZLCTARO_T type ZLCTARO_TT
  168. !IT_ZLCTCOKSST_T type ZLCTCOKSST_TT
  169. !IT_ZLCTCOND_T type ZLCTCOND_TT
  170. !IT_ZLCTIMAGE_T type ZLCTIMAGE_TT
  171. !IT_ZLCTVALUE_T type ZLCTVALUE_TT
  172. exporting
  173. !ES_ITEM_CONDV_DATA type ZLCTE1CON_ITEM_CONDV .
  174. class-methods MAP_ITEM_EO
  175. importing
  176. !IV_SEGMENT type ZLCT_MAP_SEGMENT
  177. !IS_ZLCTOBJECT_T type ZLCTOBJECT_T
  178. !IS_ZLCTOPTION_T type ZLCTOPTION_T
  179. !IS_ZLCTHEADER_T type ZLCTHEADER_T
  180. !IS_ZLCTCONTRACT_T type ZLCTCONTRACT_T
  181. !IS_ZLCTSALE_T type ZLCTSALE_T
  182. !IT_ZLCTSTATUS_T type ZLCTSTATUS_TT
  183. !IT_ZLCTDATE_T type ZLCTDATE_TT
  184. !IT_ZLCTOPTION_T type ZLCTOPTION_TT
  185. !IT_ZLCTPARTREL_T type ZLCTPARTREL_TT
  186. !IT_ZLCTOBJECT_T type ZLCTOBJECT_TT
  187. !IT_ZLCTARO_T type ZLCTARO_TT
  188. !IT_ZLCTCOKSST_T type ZLCTCOKSST_TT
  189. !IT_ZLCTCOND_T type ZLCTCOND_TT
  190. !IT_ZLCTIMAGE_T type ZLCTIMAGE_TT
  191. !IT_ZLCTVALUE_T type ZLCTVALUE_TT
  192. exporting
  193. !ES_ITEM_EO_DATA type ZLCTE1CON_ITEM_EO .
  194. methods MAP_ITEM_EO_COND
  195. importing
  196. !IV_SEGMENT type ZLCT_MAP_SEGMENT
  197. !IV_PARENT type ZLCT_MAP_SEGMENT
  198. !IS_ZLCTOBJECT_T type ZLCTOBJECT_T
  199. !IS_ZLCTOPTION_T type ZLCTOPTION_T
  200. !IS_ZLCTCOND_T type ZLCTCOND_T
  201. !IS_ZLCTHEADER_T type ZLCTHEADER_T
  202. !IS_ZLCTCONTRACT_T type ZLCTCONTRACT_T
  203. !IS_ZLCTSALE_T type ZLCTSALE_T
  204. !IT_ZLCTSTATUS_T type ZLCTSTATUS_TT
  205. !IT_ZLCTDATE_T type ZLCTDATE_TT
  206. !IT_ZLCTOPTION_T type ZLCTOPTION_TT
  207. !IT_ZLCTPARTREL_T type ZLCTPARTREL_TT
  208. !IT_ZLCTOBJECT_T type ZLCTOBJECT_TT
  209. !IT_ZLCTARO_T type ZLCTARO_TT
  210. !IT_ZLCTCOKSST_T type ZLCTCOKSST_TT
  211. !IT_ZLCTCOND_T type ZLCTCOND_TT
  212. !IT_ZLCTIMAGE_T type ZLCTIMAGE_TT
  213. !IT_ZLCTVALUE_T type ZLCTVALUE_TT
  214. exporting
  215. !ES_ITEM_EO_COND_DATA type ZLCTE1CON_EO_COND .
  216. class-methods MAP_ITEM_FLOAT
  217. importing
  218. !IV_SEGMENT type ZLCT_MAP_SEGMENT
  219. !IS_ZLCTOBJECT_T type ZLCTOBJECT_T
  220. !IS_ZLCTCOND_T type ZLCTCOND_T
  221. !IS_ZLCTHEADER_T type ZLCTHEADER_T
  222. !IS_ZLCTCONTRACT_T type ZLCTCONTRACT_T
  223. !IS_ZLCTSALE_T type ZLCTSALE_T
  224. !IT_ZLCTSTATUS_T type ZLCTSTATUS_TT
  225. !IT_ZLCTDATE_T type ZLCTDATE_TT
  226. !IT_ZLCTOPTION_T type ZLCTOPTION_TT
  227. !IT_ZLCTPARTREL_T type ZLCTPARTREL_TT
  228. !IT_ZLCTOBJECT_T type ZLCTOBJECT_TT
  229. !IT_ZLCTARO_T type ZLCTARO_TT
  230. !IT_ZLCTCOKSST_T type ZLCTCOKSST_TT
  231. !IT_ZLCTCOND_T type ZLCTCOND_TT
  232. !IT_ZLCTIMAGE_T type ZLCTIMAGE_TT
  233. !IT_ZLCTVALUE_T type ZLCTVALUE_TT
  234. exporting
  235. !ES_ITEM_FLOAT_DATA type ZLCTE1CON_ITEM_FLOAT .
  236. class-methods MAP_ITEM_GEN
  237. importing
  238. !IV_SEGMENT type ZLCT_MAP_SEGMENT
  239. !IS_ZLCTOBJECT_T type ZLCTOBJECT_T
  240. !IS_ZLCTHEADER_T type ZLCTHEADER_T
  241. !IS_ZLCTCONTRACT_T type ZLCTCONTRACT_T
  242. !IS_ZLCTSALE_T type ZLCTSALE_T
  243. !IT_ZLCTSTATUS_T type ZLCTSTATUS_TT
  244. !IT_ZLCTDATE_T type ZLCTDATE_TT
  245. !IT_ZLCTOPTION_T type ZLCTOPTION_TT
  246. !IT_ZLCTPARTREL_T type ZLCTPARTREL_TT
  247. !IT_ZLCTOBJECT_T type ZLCTOBJECT_TT
  248. !IT_ZLCTARO_T type ZLCTARO_TT
  249. !IT_ZLCTCOKSST_T type ZLCTCOKSST_TT
  250. !IT_ZLCTCOND_T type ZLCTCOND_TT
  251. !IT_ZLCTIMAGE_T type ZLCTIMAGE_TT
  252. !IT_ZLCTVALUE_T type ZLCTVALUE_TT
  253. exporting
  254. !ES_ITEM_GEN_DATA type ZLCTE1CON_ITEM_GEN .
  255. class-methods MAP_ITEM_GEXT
  256. importing
  257. !IV_SEGMENT type ZLCT_MAP_SEGMENT
  258. !IS_ZLCTOBJECT_T type ZLCTOBJECT_T
  259. !IS_ZLCTHEADER_T type ZLCTHEADER_T
  260. !IS_ZLCTCONTRACT_T type ZLCTCONTRACT_T
  261. !IS_ZLCTSALE_T type ZLCTSALE_T
  262. !IT_ZLCTSTATUS_T type ZLCTSTATUS_TT
  263. !IT_ZLCTDATE_T type ZLCTDATE_TT
  264. !IT_ZLCTOPTION_T type ZLCTOPTION_TT
  265. !IT_ZLCTPARTREL_T type ZLCTPARTREL_TT
  266. !IT_ZLCTOBJECT_T type ZLCTOBJECT_TT
  267. !IT_ZLCTARO_T type ZLCTARO_TT
  268. !IT_ZLCTCOKSST_T type ZLCTCOKSST_TT
  269. !IT_ZLCTCOND_T type ZLCTCOND_TT
  270. !IT_ZLCTIMAGE_T type ZLCTIMAGE_TT
  271. !IT_ZLCTVALUE_T type ZLCTVALUE_TT
  272. exporting
  273. !ES_ITEM_GEXT_DATA type ZLCTE1CON_ITEM_GEXT .
  274. class-methods MAP_ITEM_INDEX
  275. importing
  276. !IV_SEGMENT type ZLCT_MAP_SEGMENT
  277. !IS_ZLCTOBJECT_T type ZLCTOBJECT_T
  278. !IS_ZLCTCOND_T type ZLCTCOND_T
  279. !IS_ZLCTHEADER_T type ZLCTHEADER_T
  280. !IS_ZLCTCONTRACT_T type ZLCTCONTRACT_T
  281. !IS_ZLCTSALE_T type ZLCTSALE_T
  282. !IT_ZLCTSTATUS_T type ZLCTSTATUS_TT
  283. !IT_ZLCTDATE_T type ZLCTDATE_TT
  284. !IT_ZLCTOPTION_T type ZLCTOPTION_TT
  285. !IT_ZLCTPARTREL_T type ZLCTPARTREL_TT
  286. !IT_ZLCTOBJECT_T type ZLCTOBJECT_TT
  287. !IT_ZLCTARO_T type ZLCTARO_TT
  288. !IT_ZLCTCOKSST_T type ZLCTCOKSST_TT
  289. !IT_ZLCTCOND_T type ZLCTCOND_TT
  290. !IT_ZLCTIMAGE_T type ZLCTIMAGE_TT
  291. !IT_ZLCTVALUE_T type ZLCTVALUE_TT
  292. exporting
  293. !ES_ITEM_INDEX_DATA type ZLCTE1CON_ITEM_INDEX .
  294. class-methods MAP_ITEM_LEEXT
  295. importing
  296. !IV_SEGMENT type ZLCT_MAP_SEGMENT
  297. !IS_ZLCTOBJECT_T type ZLCTOBJECT_T
  298. !IS_ZLCTHEADER_T type ZLCTHEADER_T
  299. !IS_ZLCTCONTRACT_T type ZLCTCONTRACT_T
  300. !IS_ZLCTSALE_T type ZLCTSALE_T
  301. !IT_ZLCTSTATUS_T type ZLCTSTATUS_TT
  302. !IT_ZLCTDATE_T type ZLCTDATE_TT
  303. !IT_ZLCTOPTION_T type ZLCTOPTION_TT
  304. !IT_ZLCTPARTREL_T type ZLCTPARTREL_TT
  305. !IT_ZLCTOBJECT_T type ZLCTOBJECT_TT
  306. !IT_ZLCTARO_T type ZLCTARO_TT
  307. !IT_ZLCTCOKSST_T type ZLCTCOKSST_TT
  308. !IT_ZLCTCOND_T type ZLCTCOND_TT
  309. !IT_ZLCTIMAGE_T type ZLCTIMAGE_TT
  310. !IT_ZLCTVALUE_T type ZLCTVALUE_TT
  311. exporting
  312. !ES_ITEM_LEEXT_DATA type ZLCTE1CON_ITEM_LEEXT .
  313. class-methods MAP_ITEM_LEINT
  314. importing
  315. !IV_SEGMENT type ZLCT_MAP_SEGMENT
  316. !IS_ZLCTOBJECT_T type ZLCTOBJECT_T
  317. !IS_ZLCTHEADER_T type ZLCTHEADER_T
  318. !IS_ZLCTCONTRACT_T type ZLCTCONTRACT_T
  319. !IS_ZLCTSALE_T type ZLCTSALE_T
  320. !IT_ZLCTSTATUS_T type ZLCTSTATUS_TT
  321. !IT_ZLCTDATE_T type ZLCTDATE_TT
  322. !IT_ZLCTOPTION_T type ZLCTOPTION_TT
  323. !IT_ZLCTPARTREL_T type ZLCTPARTREL_TT
  324. !IT_ZLCTOBJECT_T type ZLCTOBJECT_TT
  325. !IT_ZLCTARO_T type ZLCTARO_TT
  326. !IT_ZLCTCOKSST_T type ZLCTCOKSST_TT
  327. !IT_ZLCTCOND_T type ZLCTCOND_TT
  328. !IT_ZLCTIMAGE_T type ZLCTIMAGE_TT
  329. !IT_ZLCTVALUE_T type ZLCTVALUE_TT
  330. exporting
  331. !ES_ITEM_LEINT_DATA type ZLCTE1CON_ITEM_LEINT .
  332. class-methods MAP_ITEM_QTY_REDUC
  333. importing
  334. !IV_SEGMENT type ZLCT_MAP_SEGMENT
  335. !IS_ZLCTOBJECT_T type ZLCTOBJECT_T
  336. !IS_ZLCTHEADER_T type ZLCTHEADER_T
  337. !IS_ZLCTCONTRACT_T type ZLCTCONTRACT_T
  338. !IS_ZLCTSALE_T type ZLCTSALE_T
  339. !IT_ZLCTSTATUS_T type ZLCTSTATUS_TT
  340. !IT_ZLCTDATE_T type ZLCTDATE_TT
  341. !IT_ZLCTOPTION_T type ZLCTOPTION_TT
  342. !IT_ZLCTPARTREL_T type ZLCTPARTREL_TT
  343. !IT_ZLCTOBJECT_T type ZLCTOBJECT_TT
  344. !IT_ZLCTARO_T type ZLCTARO_TT
  345. !IT_ZLCTCOKSST_T type ZLCTCOKSST_TT
  346. !IT_ZLCTCOND_T type ZLCTCOND_TT
  347. !IT_ZLCTIMAGE_T type ZLCTIMAGE_TT
  348. !IT_ZLCTVALUE_T type ZLCTVALUE_TT
  349. exporting
  350. !ES_ITEM_QTY_REDUC_DATA type ZLCTE1CON_ITEM_QTY_REDUC .
  351. class-methods MAP_ITEM_TERM
  352. importing
  353. !IV_SEGMENT type ZLCT_MAP_SEGMENT
  354. !IS_ZLCTOBJECT_T type ZLCTOBJECT_T
  355. !IS_ZLCTHEADER_T type ZLCTHEADER_T
  356. !IS_ZLCTCONTRACT_T type ZLCTCONTRACT_T
  357. !IS_ZLCTSALE_T type ZLCTSALE_T
  358. !IT_ZLCTSTATUS_T type ZLCTSTATUS_TT
  359. !IT_ZLCTDATE_T type ZLCTDATE_TT
  360. !IT_ZLCTOPTION_T type ZLCTOPTION_TT
  361. !IT_ZLCTPARTREL_T type ZLCTPARTREL_TT
  362. !IT_ZLCTOBJECT_T type ZLCTOBJECT_TT
  363. !IT_ZLCTARO_T type ZLCTARO_TT
  364. !IT_ZLCTCOKSST_T type ZLCTCOKSST_TT
  365. !IT_ZLCTCOND_T type ZLCTCOND_TT
  366. !IT_ZLCTIMAGE_T type ZLCTIMAGE_TT
  367. !IT_ZLCTVALUE_T type ZLCTVALUE_TT
  368. exporting
  369. !ES_ITEM_TERM type ZLCTE1CON_ITEM_TERM .
  370. class-methods MAP_ITEM_VAL_VAR
  371. importing
  372. !IV_SEGMENT type ZLCT_MAP_SEGMENT
  373. !IS_ZLCTOBJECT_T type ZLCTOBJECT_T
  374. !IS_ZLCTHEADER_T type ZLCTHEADER_T
  375. !IS_ZLCTCONTRACT_T type ZLCTCONTRACT_T
  376. !IS_ZLCTSALE_T type ZLCTSALE_T
  377. !IT_ZLCTSTATUS_T type ZLCTSTATUS_TT
  378. !IT_ZLCTDATE_T type ZLCTDATE_TT
  379. !IT_ZLCTOPTION_T type ZLCTOPTION_TT
  380. !IT_ZLCTPARTREL_T type ZLCTPARTREL_TT
  381. !IT_ZLCTOBJECT_T type ZLCTOBJECT_TT
  382. !IT_ZLCTARO_T type ZLCTARO_TT
  383. !IT_ZLCTCOKSST_T type ZLCTCOKSST_TT
  384. !IT_ZLCTCOND_T type ZLCTCOND_TT
  385. !IT_ZLCTIMAGE_T type ZLCTIMAGE_TT
  386. !IT_ZLCTVALUE_T type ZLCTVALUE_TT
  387. exporting
  388. !ES_ITEM_VAL_VAR_DATA type ZLCTE1CON_ITEM_VAL_VAR .
  389. class-methods MAP_ITEM_PUR
  390. importing
  391. !IV_SEGMENT type ZLCT_MAP_SEGMENT
  392. !IS_ZLCTOBJECT_T type ZLCTOBJECT_T
  393. !IS_ZLCTOPTION_T type ZLCTOPTION_T
  394. !IS_ZLCTHEADER_T type ZLCTHEADER_T
  395. !IS_ZLCTCONTRACT_T type ZLCTCONTRACT_T
  396. !IS_ZLCTSALE_T type ZLCTSALE_T
  397. !IT_ZLCTSTATUS_T type ZLCTSTATUS_TT
  398. !IT_ZLCTDATE_T type ZLCTDATE_TT
  399. !IT_ZLCTOPTION_T type ZLCTOPTION_TT
  400. !IT_ZLCTPARTREL_T type ZLCTPARTREL_TT
  401. !IT_ZLCTOBJECT_T type ZLCTOBJECT_TT
  402. !IT_ZLCTARO_T type ZLCTARO_TT
  403. !IT_ZLCTCOKSST_T type ZLCTCOKSST_TT
  404. !IT_ZLCTCOND_T type ZLCTCOND_TT
  405. !IT_ZLCTIMAGE_T type ZLCTIMAGE_TT
  406. !IT_ZLCTVALUE_T type ZLCTVALUE_TT
  407. exporting
  408. !ES_ITEM_PUR_DATA type ZLCTE1CON_ITEM_PUR .
  409. class-methods MAP_ITEM_PUR_COND
  410. importing
  411. !IV_SEGMENT type ZLCT_MAP_SEGMENT
  412. !IV_PARENT type ZLCT_MAP_SEGMENT
  413. !IS_ZLCTOBJECT_T type ZLCTOBJECT_T
  414. !IS_ZLCTOPTION_T type ZLCTOPTION_T
  415. !IS_ZLCTCOND_T type ZLCTCOND_T
  416. !IS_ZLCTHEADER_T type ZLCTHEADER_T
  417. !IS_ZLCTCONTRACT_T type ZLCTCONTRACT_T
  418. !IS_ZLCTSALE_T type ZLCTSALE_T
  419. !IT_ZLCTSTATUS_T type ZLCTSTATUS_TT
  420. !IT_ZLCTDATE_T type ZLCTDATE_TT
  421. !IT_ZLCTOPTION_T type ZLCTOPTION_TT
  422. !IT_ZLCTPARTREL_T type ZLCTPARTREL_TT
  423. !IT_ZLCTOBJECT_T type ZLCTOBJECT_TT
  424. !IT_ZLCTARO_T type ZLCTARO_TT
  425. !IT_ZLCTCOKSST_T type ZLCTCOKSST_TT
  426. !IT_ZLCTCOND_T type ZLCTCOND_TT
  427. !IT_ZLCTIMAGE_T type ZLCTIMAGE_TT
  428. !IT_ZLCTVALUE_T type ZLCTVALUE_TT
  429. exporting
  430. !ES_ITEM_PUR_COND_DATA type ZLCTE1CON_PUR_COND .
  431. class-methods MAP_ITEM_PUT
  432. importing
  433. !IV_SEGMENT type ZLCT_MAP_SEGMENT
  434. !IS_ZLCTOBJECT_T type ZLCTOBJECT_T
  435. !IS_ZLCTOPTION_T type ZLCTOPTION_T
  436. !IS_ZLCTHEADER_T type ZLCTHEADER_T
  437. !IS_ZLCTCONTRACT_T type ZLCTCONTRACT_T
  438. !IS_ZLCTSALE_T type ZLCTSALE_T
  439. !IT_ZLCTSTATUS_T type ZLCTSTATUS_TT
  440. !IT_ZLCTDATE_T type ZLCTDATE_TT
  441. !IT_ZLCTOPTION_T type ZLCTOPTION_TT
  442. !IT_ZLCTPARTREL_T type ZLCTPARTREL_TT
  443. !IT_ZLCTOBJECT_T type ZLCTOBJECT_TT
  444. !IT_ZLCTARO_T type ZLCTARO_TT
  445. !IT_ZLCTCOKSST_T type ZLCTCOKSST_TT
  446. !IT_ZLCTCOND_T type ZLCTCOND_TT
  447. !IT_ZLCTIMAGE_T type ZLCTIMAGE_TT
  448. !IT_ZLCTVALUE_T type ZLCTVALUE_TT
  449. exporting
  450. !ES_ITEM_PUT_DATA type ZLCTE1CON_ITEM_PUT .
  451. methods MAP_ITEM_PUT_COND
  452. importing
  453. !IV_SEGMENT type ZLCT_MAP_SEGMENT
  454. !IV_PARENT type ZLCT_MAP_SEGMENT
  455. !IS_ZLCTOBJECT_T type ZLCTOBJECT_T
  456. !IS_ZLCTOPTION_T type ZLCTOPTION_T
  457. !IS_ZLCTCOND_T type ZLCTCOND_T
  458. !IS_ZLCTHEADER_T type ZLCTHEADER_T
  459. !IS_ZLCTCONTRACT_T type ZLCTCONTRACT_T
  460. !IS_ZLCTSALE_T type ZLCTSALE_T
  461. !IT_ZLCTSTATUS_T type ZLCTSTATUS_TT
  462. !IT_ZLCTDATE_T type ZLCTDATE_TT
  463. !IT_ZLCTOPTION_T type ZLCTOPTION_TT
  464. !IT_ZLCTPARTREL_T type ZLCTPARTREL_TT
  465. !IT_ZLCTOBJECT_T type ZLCTOBJECT_TT
  466. !IT_ZLCTARO_T type ZLCTARO_TT
  467. !IT_ZLCTCOKSST_T type ZLCTCOKSST_TT
  468. !IT_ZLCTCOND_T type ZLCTCOND_TT
  469. !IT_ZLCTIMAGE_T type ZLCTIMAGE_TT
  470. !IT_ZLCTVALUE_T type ZLCTVALUE_TT
  471. exporting
  472. !ES_ITEM_PUT_COND_DATA type ZLCTE1CON_PUT_COND .
  473. class-methods MAP_ITEM_RETOB
  474. importing
  475. !IV_SEGMENT type ZLCT_MAP_SEGMENT
  476. !IS_ZLCTOBJECT_T type ZLCTOBJECT_T
  477. !IS_ZLCTHEADER_T type ZLCTHEADER_T
  478. !IS_ZLCTCONTRACT_T type ZLCTCONTRACT_T
  479. !IS_ZLCTSALE_T type ZLCTSALE_T
  480. !IT_ZLCTSTATUS_T type ZLCTSTATUS_TT
  481. !IT_ZLCTDATE_T type ZLCTDATE_TT
  482. !IT_ZLCTOPTION_T type ZLCTOPTION_TT
  483. !IT_ZLCTPARTREL_T type ZLCTPARTREL_TT
  484. !IT_ZLCTOBJECT_T type ZLCTOBJECT_TT
  485. !IT_ZLCTARO_T type ZLCTARO_TT
  486. !IT_ZLCTCOKSST_T type ZLCTCOKSST_TT
  487. !IT_ZLCTCOND_T type ZLCTCOND_TT
  488. !IT_ZLCTIMAGE_T type ZLCTIMAGE_TT
  489. !IT_ZLCTVALUE_T type ZLCTVALUE_TT
  490. exporting
  491. !ES_ITEM_RETOB_DATA type ZLCTE1CON_ITEM_RETOB .
  492. class-methods MAP_ITEM_RV
  493. importing
  494. !IV_SEGMENT type ZLCT_MAP_SEGMENT
  495. !IS_ZLCTOBJECT_T type ZLCTOBJECT_T
  496. !IS_ZLCTOPTION_T type ZLCTOPTION_T
  497. !IS_ZLCTHEADER_T type ZLCTHEADER_T
  498. !IS_ZLCTCONTRACT_T type ZLCTCONTRACT_T
  499. !IS_ZLCTSALE_T type ZLCTSALE_T
  500. !IT_ZLCTSTATUS_T type ZLCTSTATUS_TT
  501. !IT_ZLCTDATE_T type ZLCTDATE_TT
  502. !IT_ZLCTOPTION_T type ZLCTOPTION_TT
  503. !IT_ZLCTPARTREL_T type ZLCTPARTREL_TT
  504. !IT_ZLCTOBJECT_T type ZLCTOBJECT_TT
  505. !IT_ZLCTARO_T type ZLCTARO_TT
  506. !IT_ZLCTCOKSST_T type ZLCTCOKSST_TT
  507. !IT_ZLCTCOND_T type ZLCTCOND_TT
  508. !IT_ZLCTIMAGE_T type ZLCTIMAGE_TT
  509. !IT_ZLCTVALUE_T type ZLCTVALUE_TT
  510. exporting
  511. !ES_ITEM_RV_DATA type ZLCTE1CON_ITEM_RV .
  512. class-methods MAP_ITEM_RV_COND
  513. importing
  514. !IV_SEGMENT type ZLCT_MAP_SEGMENT
  515. !IV_PARENT type ZLCT_MAP_SEGMENT
  516. !IS_ZLCTOBJECT_T type ZLCTOBJECT_T
  517. !IS_ZLCTOPTION_T type ZLCTOPTION_T
  518. !IS_ZLCTCOND_T type ZLCTCOND_T
  519. !IS_ZLCTHEADER_T type ZLCTHEADER_T
  520. !IS_ZLCTCONTRACT_T type ZLCTCONTRACT_T
  521. !IS_ZLCTSALE_T type ZLCTSALE_T
  522. !IT_ZLCTSTATUS_T type ZLCTSTATUS_TT
  523. !IT_ZLCTDATE_T type ZLCTDATE_TT
  524. !IT_ZLCTOPTION_T type ZLCTOPTION_TT
  525. !IT_ZLCTPARTREL_T type ZLCTPARTREL_TT
  526. !IT_ZLCTOBJECT_T type ZLCTOBJECT_TT
  527. !IT_ZLCTARO_T type ZLCTARO_TT
  528. !IT_ZLCTCOKSST_T type ZLCTCOKSST_TT
  529. !IT_ZLCTCOND_T type ZLCTCOND_TT
  530. !IT_ZLCTIMAGE_T type ZLCTIMAGE_TT
  531. !IT_ZLCTVALUE_T type ZLCTVALUE_TT
  532. exporting
  533. !ES_ITEM_RV_COND_DATA type ZLCTE1CON_RV_COND .
  534. class-methods MAP_ITEM_TO
  535. importing
  536. !IV_SEGMENT type ZLCT_MAP_SEGMENT
  537. !IS_ZLCTOBJECT_T type ZLCTOBJECT_T
  538. !IS_ZLCTOPTION_T type ZLCTOPTION_T
  539. !IS_ZLCTHEADER_T type ZLCTHEADER_T
  540. !IS_ZLCTCONTRACT_T type ZLCTCONTRACT_T
  541. !IS_ZLCTSALE_T type ZLCTSALE_T
  542. !IT_ZLCTSTATUS_T type ZLCTSTATUS_TT
  543. !IT_ZLCTDATE_T type ZLCTDATE_TT
  544. !IT_ZLCTOPTION_T type ZLCTOPTION_TT
  545. !IT_ZLCTPARTREL_T type ZLCTPARTREL_TT
  546. !IT_ZLCTOBJECT_T type ZLCTOBJECT_TT
  547. !IT_ZLCTARO_T type ZLCTARO_TT
  548. !IT_ZLCTCOKSST_T type ZLCTCOKSST_TT
  549. !IT_ZLCTCOND_T type ZLCTCOND_TT
  550. !IT_ZLCTIMAGE_T type ZLCTIMAGE_TT
  551. !IT_ZLCTVALUE_T type ZLCTVALUE_TT
  552. exporting
  553. !ES_ITEM_TO_DATA type ZLCTE1CON_ITEM_TO .
  554. class-methods MAP_ITEM_TO_COND
  555. importing
  556. !IV_SEGMENT type ZLCT_MAP_SEGMENT
  557. !IV_PARENT type ZLCT_MAP_SEGMENT
  558. !IS_ZLCTOBJECT_T type ZLCTOBJECT_T
  559. !IS_ZLCTOPTION_T type ZLCTOPTION_T
  560. !IS_ZLCTCOND_T type ZLCTCOND_T
  561. !IS_ZLCTHEADER_T type ZLCTHEADER_T
  562. !IS_ZLCTCONTRACT_T type ZLCTCONTRACT_T
  563. !IS_ZLCTSALE_T type ZLCTSALE_T
  564. !IT_ZLCTSTATUS_T type ZLCTSTATUS_TT
  565. !IT_ZLCTDATE_T type ZLCTDATE_TT
  566. !IT_ZLCTOPTION_T type ZLCTOPTION_TT
  567. !IT_ZLCTPARTREL_T type ZLCTPARTREL_TT
  568. !IT_ZLCTOBJECT_T type ZLCTOBJECT_TT
  569. !IT_ZLCTARO_T type ZLCTARO_TT
  570. !IT_ZLCTCOKSST_T type ZLCTCOKSST_TT
  571. !IT_ZLCTCOND_T type ZLCTCOND_TT
  572. !IT_ZLCTIMAGE_T type ZLCTIMAGE_TT
  573. !IT_ZLCTVALUE_T type ZLCTVALUE_TT
  574. exporting
  575. !ES_ITEM_TO_COND_DATA type ZLCTE1CON_TO_COND .
  576. class-methods MAP_LNL_GENERAL
  577. importing
  578. !IV_SEGMENT type ZLCT_MAP_SEGMENT
  579. !IS_MAP_T type ZLCT_LNL_MAP_T
  580. !IS_ZLCTOBJECT_T type ZLCTOBJECT_T optional
  581. !IS_ZLCTOPTION_T type ZLCTOPTION_T optional
  582. !IS_ZLCTCOND_T type ZLCTCOND_T optional
  583. !IS_ZLCTHEADER_T type ZLCTHEADER_T
  584. !IS_ZLCTCONTRACT_T type ZLCTCONTRACT_T
  585. !IS_ZLCTSALE_T type ZLCTSALE_T
  586. !IT_ZLCTSTATUS_T type ZLCTSTATUS_TT
  587. !IT_ZLCTDATE_T type ZLCTDATE_TT
  588. !IT_ZLCTOPTION_T type ZLCTOPTION_TT
  589. !IT_ZLCTPARTREL_T type ZLCTPARTREL_TT
  590. !IT_ZLCTOBJECT_T type ZLCTOBJECT_TT
  591. !IT_ZLCTARO_T type ZLCTARO_TT
  592. !IT_ZLCTCOKSST_T type ZLCTCOKSST_TT
  593. !IT_ZLCTCOND_T type ZLCTCOND_TT
  594. !IT_ZLCTIMAGE_T type ZLCTIMAGE_TT
  595. !IT_ZLCTVALUE_T type ZLCTVALUE_TT
  596. exporting
  597. !ES_DATA type ANY
  598. exceptions
  599. MAPPING_ERROR
  600. MAPPING_TAB_MISSING .
  601. methods MAP_HEAD
  602. importing
  603. !IV_SEGMENT type ZLCT_MAP_SEGMENT
  604. !IV_INITD type D optional
  605. !IV_INITIAL_LOAD type AS4FLAG optional
  606. !IV_MANDT type EDI4MANDT
  607. !IV_DOCNUM type EDI_DOCNUM
  608. !IV_PSGNUM type EDI4PSGNUC optional
  609. !IV_HLEVEL type EDI4HLEVEC
  610. !IV_SOURCE type CHAR10
  611. exporting
  612. !EV_ACTIV type ABAP_BOOL
  613. changing
  614. !CV_COUNT type I
  615. !CT_DOCUMENT type ZLCTEDID4_TT .
  616. methods MAP_HEAD_ACCFACT
  617. importing
  618. !IV_SEGMENT type ZLCT_MAP_SEGMENT
  619. !IV_MANDT type EDI4MANDT
  620. !IV_DOCNUM type EDI_DOCNUM
  621. !IV_PSGNUM type EDI4PSGNUC optional
  622. !IV_HLEVEL type EDI4HLEVEC
  623. changing
  624. !CT_COUNT type I
  625. !CT_DOCUMENT type ZLCTEDID4_TT .
  626. methods MAP_HEAD_BP
  627. importing
  628. !IV_SEGMENT type ZLCT_MAP_SEGMENT
  629. !IV_MANDT type EDI4MANDT
  630. !IV_DOCNUM type EDI_DOCNUM
  631. !IV_PSGNUM type EDI4PSGNUC
  632. !IV_HLEVEL type EDI4HLEVEC
  633. changing
  634. !CT_COUNT type I
  635. !CT_DOCUMENT type ZLCTEDID4_TT .
  636. methods MAP_HEAD_GEN
  637. importing
  638. !IV_SEGMENT type ZLCT_MAP_SEGMENT
  639. !IV_MANDT type EDI4MANDT
  640. !IV_DOCNUM type EDI_DOCNUM
  641. !IV_PSGNUM type EDI4PSGNUC optional
  642. !IV_HLEVEL type EDI4HLEVEC
  643. changing
  644. !CT_COUNT type I
  645. !CT_DOCUMENT type ZLCTEDID4_TT .
  646. class-methods MAP_ITEM
  647. importing
  648. !IV_SEGMENT type ZLCT_MAP_SEGMENT
  649. !IS_ZLCTOBJECT_T type ZLCTOBJECT_T
  650. !IS_ZLCTHEADER_T type ZLCTHEADER_T
  651. !IS_ZLCTCONTRACT_T type ZLCTCONTRACT_T
  652. !IS_ZLCTSALE_T type ZLCTSALE_T
  653. !IT_ZLCTSTATUS_T type ZLCTSTATUS_TT
  654. !IT_ZLCTDATE_T type ZLCTDATE_TT
  655. !IT_ZLCTOPTION_T type ZLCTOPTION_TT
  656. !IT_ZLCTPARTREL_T type ZLCTPARTREL_TT
  657. !IT_ZLCTOBJECT_T type ZLCTOBJECT_TT
  658. !IT_ZLCTARO_T type ZLCTARO_TT
  659. !IT_ZLCTCOKSST_T type ZLCTCOKSST_TT
  660. !IT_ZLCTCOND_T type ZLCTCOND_TT
  661. !IT_ZLCTIMAGE_T type ZLCTIMAGE_TT
  662. !IT_ZLCTVALUE_T type ZLCTVALUE_TT
  663. exporting
  664. !ES_ITEM_DATA type ZLCTE1CON_ITEM .
  665. class-methods MAP_ITEM_AP_IFRS
  666. importing
  667. !IV_SEGMENT type ZLCT_MAP_SEGMENT
  668. !IS_ZLCTOBJECT_T type ZLCTOBJECT_T
  669. !IS_ZLCTHEADER_T type ZLCTHEADER_T
  670. !IS_ZLCTCONTRACT_T type ZLCTCONTRACT_T
  671. !IS_ZLCTSALE_T type ZLCTSALE_T
  672. !IT_ZLCTSTATUS_T type ZLCTSTATUS_TT
  673. !IT_ZLCTDATE_T type ZLCTDATE_TT
  674. !IT_ZLCTOPTION_T type ZLCTOPTION_TT
  675. !IT_ZLCTPARTREL_T type ZLCTPARTREL_TT
  676. !IT_ZLCTOBJECT_T type ZLCTOBJECT_TT
  677. !IT_ZLCTARO_T type ZLCTARO_TT
  678. !IT_ZLCTCOKSST_T type ZLCTCOKSST_TT
  679. !IT_ZLCTCOND_T type ZLCTCOND_TT
  680. !IT_ZLCTIMAGE_T type ZLCTIMAGE_TT
  681. !IT_ZLCTVALUE_T type ZLCTVALUE_TT
  682. exporting
  683. !ES_ITEM_AP_DATA type ZLCTE1CON_ITEM_AP .
  684. class-methods MAP_ITEM_AP_LOC
  685. importing
  686. !IV_SEGMENT type ZLCT_MAP_SEGMENT
  687. !IS_ZLCTOBJECT_T type ZLCTOBJECT_T
  688. !IS_ZLCTHEADER_T type ZLCTHEADER_T
  689. !IS_ZLCTCONTRACT_T type ZLCTCONTRACT_T
  690. !IS_ZLCTSALE_T type ZLCTSALE_T
  691. !IT_ZLCTSTATUS_T type ZLCTSTATUS_TT
  692. !IT_ZLCTDATE_T type ZLCTDATE_TT
  693. !IT_ZLCTOPTION_T type ZLCTOPTION_TT
  694. !IT_ZLCTPARTREL_T type ZLCTPARTREL_TT
  695. !IT_ZLCTOBJECT_T type ZLCTOBJECT_TT
  696. !IT_ZLCTARO_T type ZLCTARO_TT
  697. !IT_ZLCTCOKSST_T type ZLCTCOKSST_TT
  698. !IT_ZLCTCOND_T type ZLCTCOND_TT
  699. !IT_ZLCTIMAGE_T type ZLCTIMAGE_TT
  700. !IT_ZLCTVALUE_T type ZLCTVALUE_TT
  701. exporting
  702. !ES_ITEM_AP_DATA type ZLCTE1CON_ITEM_AP .
  703. class-methods MAP_ITEM_AS_CA_IFRS
  704. importing
  705. !IV_SEGMENT type ZLCT_MAP_SEGMENT
  706. !IV_ZOPTREACER type ZLCTOPTREACER optional
  707. !IS_ZLCTOBJECT_T type ZLCTOBJECT_T
  708. !IS_ZLCTOPTION_T type ZLCTOPTION_T
  709. !IS_ZLCTHEADER_T type ZLCTHEADER_T
  710. !IS_ZLCTCONTRACT_T type ZLCTCONTRACT_T
  711. !IS_ZLCTSALE_T type ZLCTSALE_T
  712. !IT_ZLCTSTATUS_T type ZLCTSTATUS_TT
  713. !IT_ZLCTDATE_T type ZLCTDATE_TT
  714. !IT_ZLCTOPTION_T type ZLCTOPTION_TT
  715. !IT_ZLCTPARTREL_T type ZLCTPARTREL_TT
  716. !IT_ZLCTOBJECT_T type ZLCTOBJECT_TT
  717. !IT_ZLCTARO_T type ZLCTARO_TT
  718. !IT_ZLCTCOKSST_T type ZLCTCOKSST_TT
  719. !IT_ZLCTCOND_T type ZLCTCOND_TT
  720. !IT_ZLCTIMAGE_T type ZLCTIMAGE_TT
  721. !IT_ZLCTVALUE_T type ZLCTVALUE_TT
  722. exporting
  723. !ES_ITEM_AS_CA_DATA type ZLCTE1CON_AS_CA .
  724. class-methods MAP_ITEM_AS_CA_LOC
  725. importing
  726. !IV_SEGMENT type ZLCT_MAP_SEGMENT
  727. !IV_ZOPTREACER type ZLCTOPTREACER optional
  728. !IS_ZLCTOBJECT_T type ZLCTOBJECT_T
  729. !IS_ZLCTOPTION_T type ZLCTOPTION_T
  730. !IS_ZLCTHEADER_T type ZLCTHEADER_T
  731. !IS_ZLCTCONTRACT_T type ZLCTCONTRACT_T
  732. !IS_ZLCTSALE_T type ZLCTSALE_T
  733. !IT_ZLCTSTATUS_T type ZLCTSTATUS_TT
  734. !IT_ZLCTDATE_T type ZLCTDATE_TT
  735. !IT_ZLCTOPTION_T type ZLCTOPTION_TT
  736. !IT_ZLCTPARTREL_T type ZLCTPARTREL_TT
  737. !IT_ZLCTOBJECT_T type ZLCTOBJECT_TT
  738. !IT_ZLCTARO_T type ZLCTARO_TT
  739. !IT_ZLCTCOKSST_T type ZLCTCOKSST_TT
  740. !IT_ZLCTCOND_T type ZLCTCOND_TT
  741. !IT_ZLCTIMAGE_T type ZLCTIMAGE_TT
  742. !IT_ZLCTVALUE_T type ZLCTVALUE_TT
  743. exporting
  744. !ES_ITEM_AS_CA_DATA type ZLCTE1CON_AS_CA .
  745. class-methods MAP_ITEM_AS_IFRS
  746. importing
  747. !IV_SEGMENT type ZLCT_MAP_SEGMENT
  748. !IS_ZLCTOBJECT_T type ZLCTOBJECT_T
  749. !IS_ZLCTHEADER_T type ZLCTHEADER_T
  750. !IS_ZLCTCONTRACT_T type ZLCTCONTRACT_T
  751. !IS_ZLCTSALE_T type ZLCTSALE_T
  752. !IT_ZLCTSTATUS_T type ZLCTSTATUS_TT
  753. !IT_ZLCTDATE_T type ZLCTDATE_TT
  754. !IT_ZLCTOPTION_T type ZLCTOPTION_TT
  755. !IT_ZLCTPARTREL_T type ZLCTPARTREL_TT
  756. !IT_ZLCTOBJECT_T type ZLCTOBJECT_TT
  757. !IT_ZLCTARO_T type ZLCTARO_TT
  758. !IT_ZLCTCOKSST_T type ZLCTCOKSST_TT
  759. !IT_ZLCTCOND_T type ZLCTCOND_TT
  760. !IT_ZLCTIMAGE_T type ZLCTIMAGE_TT
  761. !IT_ZLCTVALUE_T type ZLCTVALUE_TT
  762. exporting
  763. !ES_ITEM_AS_DATA type ZLCTE1CON_ITEM_AS .
  764. class-methods MAP_ITEM_AS_LOC
  765. importing
  766. !IV_SEGMENT type ZLCT_MAP_SEGMENT
  767. !IS_ZLCTOBJECT_T type ZLCTOBJECT_T
  768. !IS_ZLCTHEADER_T type ZLCTHEADER_T
  769. !IS_ZLCTCONTRACT_T type ZLCTCONTRACT_T
  770. !IS_ZLCTSALE_T type ZLCTSALE_T
  771. !IT_ZLCTSTATUS_T type ZLCTSTATUS_TT
  772. !IT_ZLCTDATE_T type ZLCTDATE_TT
  773. !IT_ZLCTOPTION_T type ZLCTOPTION_TT
  774. !IT_ZLCTPARTREL_T type ZLCTPARTREL_TT
  775. !IT_ZLCTOBJECT_T type ZLCTOBJECT_TT
  776. !IT_ZLCTARO_T type ZLCTARO_TT
  777. !IT_ZLCTCOKSST_T type ZLCTCOKSST_TT
  778. !IT_ZLCTCOND_T type ZLCTCOND_TT
  779. !IT_ZLCTIMAGE_T type ZLCTIMAGE_TT
  780. !IT_ZLCTVALUE_T type ZLCTVALUE_TT
  781. exporting
  782. !ES_ITEM_AS_DATA type ZLCTE1CON_ITEM_AS .
  783. class-methods MAP_ITEM_CA_COND_IFRS
  784. importing
  785. !IV_SEGMENT type ZLCT_MAP_SEGMENT
  786. !IV_PARENT type ZLCT_MAP_SEGMENT optional
  787. !IS_ZLCTOBJECT_T type ZLCTOBJECT_T
  788. !IS_ZLCTOPTION_T type ZLCTOPTION_T
  789. !IS_ZLCTCOND_T type ZLCTCOND_T
  790. !IS_ZLCTHEADER_T type ZLCTHEADER_T
  791. !IS_ZLCTCONTRACT_T type ZLCTCONTRACT_T
  792. !IS_ZLCTSALE_T type ZLCTSALE_T
  793. !IT_ZLCTSTATUS_T type ZLCTSTATUS_TT
  794. !IT_ZLCTDATE_T type ZLCTDATE_TT
  795. !IT_ZLCTOPTION_T type ZLCTOPTION_TT
  796. !IT_ZLCTPARTREL_T type ZLCTPARTREL_TT
  797. !IT_ZLCTOBJECT_T type ZLCTOBJECT_TT
  798. !IT_ZLCTARO_T type ZLCTARO_TT
  799. !IT_ZLCTCOKSST_T type ZLCTCOKSST_TT
  800. !IT_ZLCTCOND_T type ZLCTCOND_TT
  801. !IT_ZLCTIMAGE_T type ZLCTIMAGE_TT
  802. !IT_ZLCTVALUE_T type ZLCTVALUE_TT
  803. exporting
  804. !ES_ITEM_CA_COND_DATA type ZLCTE1CON_CA_COND .
  805. class-methods MAP_ITEM_CA_COND_LOC
  806. importing
  807. !IV_SEGMENT type ZLCT_MAP_SEGMENT
  808. !IV_PARENT type ZLCT_MAP_SEGMENT
  809. !IS_ZLCTOBJECT_T type ZLCTOBJECT_T
  810. !IS_ZLCTOPTION_T type ZLCTOPTION_T
  811. !IS_ZLCTCOND_T type ZLCTCOND_T
  812. !IS_ZLCTHEADER_T type ZLCTHEADER_T
  813. !IS_ZLCTCONTRACT_T type ZLCTCONTRACT_T
  814. !IS_ZLCTSALE_T type ZLCTSALE_T
  815. !IT_ZLCTSTATUS_T type ZLCTSTATUS_TT
  816. !IT_ZLCTDATE_T type ZLCTDATE_TT
  817. !IT_ZLCTOPTION_T type ZLCTOPTION_TT
  818. !IT_ZLCTPARTREL_T type ZLCTPARTREL_TT
  819. !IT_ZLCTOBJECT_T type ZLCTOBJECT_TT
  820. !IT_ZLCTARO_T type ZLCTARO_TT
  821. !IT_ZLCTCOKSST_T type ZLCTCOKSST_TT
  822. !IT_ZLCTCOND_T type ZLCTCOND_TT
  823. !IT_ZLCTIMAGE_T type ZLCTIMAGE_TT
  824. !IT_ZLCTVALUE_T type ZLCTVALUE_TT
  825. exporting
  826. !ES_ITEM_CA_COND_DATA type ZLCTE1CON_CA_COND .
  827. class-methods MAP_CONDITIONS_WITH_HELP_TAB
  828. importing
  829. !IV_SEGMENT type EDILSEGTYP
  830. !IV_ZLCTOBJID type ZLCTOBJID
  831. !IT_ZLCTCOND type ZLCTCOND_TT
  832. exporting
  833. !RT_ZLCTCOND type ANY TABLE .
  834. class-methods CLASS_CONSTRUCTOR .
  835. class-methods MAP_EXTID_TYPE_AND_VALUE
  836. importing
  837. !IV_HEAD_ITEM type ZLCT_ITEM_HEAD
  838. !IS_ZLCTOBJECT type ZLCTOBJECT_T optional
  839. !IS_ZLCTHEADER type ZLCTHEADER_T
  840. !IS_ZLCTCONTRACT type ZLCTCONTRACT_T
  841. !IS_ZLCTSALE type ZLCTSALE_T
  842. !IT_ZLCTSTATUS_T type ZLCTSTATUS_TT
  843. !IT_ZLCTDATE_T type ZLCTDATE_TT
  844. !IT_ZLCTOPTION_T type ZLCTOPTION_TT
  845. !IT_ZLCTPARTREL_T type ZLCTPARTREL_TT
  846. !ITT_ZLCTOBJECT_T type ZLCTOBJECT_TT
  847. !IT_ZLCTARO_T type ZLCTARO_TT
  848. !IT_ZLCTCOKSST_T type ZLCTCOKSST_TT
  849. !IT_ZLCTCOND_T type ZLCTCOND_TT
  850. !IT_ZLCTVALUE_T type ZLCTVALUE_TT
  851. !IT_ZLCTIMAGE_T type ZLCTIMAGE_TT
  852. exporting
  853. !ET_HEAD_EXTID type ZLCTE1CON_HEAD_EXTID_TT
  854. !ET_ITEM_EXTID type ZLCTE1CON_ITEM_EXTID_TT .
  855. PROTECTED SECTION.
  856. private section.
  857.  
  858. types:
  859. tyt_object_types TYPE STANDARD TABLE OF zlct_obj_type_t .
  860. types:
  861. tyt_company_codes TYPE STANDARD TABLE OF zlct_company_t .
  862. types:
  863. tyt_partner_roles TYPE STANDARD TABLE OF zcont_gp_role_t .
  864.  
  865. constants MC_HEAD type ZLCT_ITEM_HEAD value 'HEAD' ##NO_TEXT.
  866. constants MC_ITEM type ZLCT_ITEM_HEAD value 'ITEM' ##NO_TEXT.
  867. class-data MT_ZCONT_OPTION_T type ZCONT_OPTION_TT .
  868. class-data MT_ZLCTMAP_HELP_T type ZLCTMAP_HELP_TT .
  869. class-data MT_LNL_MAP_T type ZLCT_LNL_MAP_TT .
  870. class-data MT_ZLCT_PAY_RYTH_T type ZLCT_PAY_RYTH_TT .
  871. class-data MT_ZLCT_PAY_TYPE_T type ZLCT_PAY_TYPE_TT .
  872. class-data MT_ZLCTCONDKIND_T type ZLCT_CONDKINDT_TT .
  873. class-data MT_ZLCT_EXT_MAP_T type ZLCT_EXT_MAP_TT .
  874. class-data MT_ZLCT_OPCO_TYPE_T type ZLCT_OPCO_TYPE_TT .
  875. class-data MT_ZLCT_VALUEKIND_M type ZLCT_VALUEKIND_TT .
  876. class-data MT_OBJ_TYPE_T type ZLCT_OBJ_TYPE_TT .
  877. class-data MT_GP_ROLE_T type ZCONT_GP_ROLE_TT .
  878. class-data MT_COMPANY_LNL type ZLCT_COMPANY_TT .
  879. data MS_ZLCTHEADER_T type ZLCTHEADER_T .
  880. data MS_ZLCTCONTRACT_T type ZLCTCONTRACT_T .
  881. data MS_ZLCTSALE_T type ZLCTSALE_T .
  882. data MT_ZLCTSTATUS_T type ZLCTSTATUS_TT .
  883. data MT_ZLCTDATE_T type ZLCTDATE_TT .
  884. data MT_ZLCTOPTION_T type ZLCTOPTION_TT .
  885. data MT_ZLCTPARTREL_T type ZLCTPARTREL_TT .
  886. data MT_ZLCTOBJECT_T type ZLCTOBJECT_TT .
  887. data MT_ZLCTARO_T type ZLCTARO_TT .
  888. data MT_ZLCTCOKSST_T type ZLCTCOKSST_TT .
  889. data MT_ZLCTCOND_T type ZLCTCOND_TT .
  890. data MT_ZLCTIMAGE_T type ZLCTIMAGE_TT .
  891. data MT_ZLCTVALUE_T type ZLCTVALUE_TT .
  892. data MT_SEGMENT_FIELDS type ZLCT_MAP_BS_FLDS_TT .
  893. data MV_ACTIV type ABAP_BOOL .
  894. data MV_EFF_DATE_OLD type D .
  895.  
  896. class-methods GET_ITEM_GEXT_REVENUE_PARTICIP
  897. importing
  898. value(IV_SEGMENT) type ZLCT_MAP_SEGMENT
  899. value(IV_ELEMENT) type ZLCT_MAP_ELEMENT
  900. value(IS_ZLCTOBJECT_T) type ZLCTOBJECT_T
  901. value(IT_ZLCTVALUE_T) type ZLCTVALUE_TT
  902. returning
  903. value(EV_REVENUE_PARTICIPATION) type TEXT9 .
  904. class-methods GET_ITEM_AP_DATA_IR_FIX
  905. importing
  906. !IV_ZVALUEGAAP type ZLCTVALUEGAAP
  907. !IV_ZVALUEKIND type ZLCTVALUEKIND
  908. !IT_ZLCTCOND_T type ZLCTCOND_TT
  909. !IT_ZLCTVALUE_T type ZLCTVALUE_TT
  910. returning
  911. value(EV_ITEM_AP_DATA_IR_FIX) type CHAR011 .
  912. class-methods GET_ITEM_AP_DATA_ACC_PRINCIPLE
  913. importing
  914. !IV_ACC_PRINCIPLE type CHAR04
  915. !IV_COMPANY type ZLCTBURKS
  916. returning
  917. value(EV_ACC_PRINCIPLE) type CHAR04 .
  918. methods GET_HEAD_DATA_CONTROL
  919. returning
  920. value(EV_HEAD_DAT_CONTROL) type CHAR01 .
  921. class-methods CHA_QTY_REDUC_DATA
  922. importing
  923. !IV_ZCONRES2 type ZLCTCONRES2
  924. returning
  925. value(EV_QUANTITY_REDUC) type CHAR7 .
  926. class-methods GET_VALID_TO
  927. importing
  928. !IS_ZLCTCOND_T type ZLCTCOND_T
  929. returning
  930. value(EV_ITEM_COND_DATA) type ZLCTVALIDTO1 .
  931. class-methods GET_VALID_FROM
  932. importing
  933. !IS_ZLCTCOND_T type ZLCTCOND_T
  934. returning
  935. value(EV_DATE) type ZLCTVALIDFR1 .
  936. class-methods MAP_RV_AMOUNT_EXPECTED
  937. importing
  938. !IS_ZLCTOBJECT_T type ZLCTOBJECT_T
  939. !IT_ZLCTCOND_T type ZLCTCOND_TT
  940. returning
  941. value(EV_RV_AMOUNT_EXPECTED) type CHAR025 .
  942. methods MAP_ITEM_EQ_COND_VALUE
  943. importing
  944. !IS_ZLCTOBJECT_T type ZLCTOBJECT_T
  945. !IS_ZLCTOPTION_T type ZLCTOPTION_T
  946. !IS_ZLCTCOND_T type ZLCTCOND_T
  947. returning
  948. value(EV_COND_VALUE) type ZLCTE1CON_EO_COND-COND_VALUE .
  949. methods CHECK_NEW_CONTRACT
  950. returning
  951. value(EV_PROZESS_TYP) type CHAR01 .
  952. methods MAP_ITEM_PUT_COND_VALUE
  953. importing
  954. !IS_ZLCTOBJECT_T type ZLCTOBJECT_T
  955. !IS_ZLCTOPTION_T type ZLCTOPTION_T
  956. !IS_ZLCTCOND_T type ZLCTCOND_T
  957. returning
  958. value(EV_COND_VALUE) type CHAR25 .
  959. class-methods GET_CTDUR_DATE_OLD
  960. importing
  961. !IS_ZLCTHEADER_T type ZLCTHEADER_T
  962. returning
  963. value(EV_ZLCTDATDATE) type ZLCTDATDATE .
  964. class-methods GET_GENERAL_DATE
  965. importing
  966. !IV_ZDATART type ZLCTDATART
  967. !IV_DESCENDING type BOOLEAN optional
  968. !IS_ZLCTHEADER_T type ZLCTHEADER_T
  969. !IT_ZLCTOBJECT_T type ZLCTOBJECT_TT
  970. !IT_ZLCTDATE_T type ZLCTDATE_TT
  971. returning
  972. value(ES_ZLCTDATE) type ZLCTDATE_T .
  973. class-methods GET_CTDUR_DATE
  974. importing
  975. !IS_ZLCTHEADER_T type ZLCTHEADER_T
  976. !IT_ZLCTOBJECT_T type ZLCTOBJECT_TT
  977. !IT_ZLCTDATE_T type ZLCTDATE_TT
  978. exporting
  979. !ES_ZLCTDATE_CTDUR type ZLCTDATE_T .
  980. methods CREATE_IDOC_SEGMENT
  981. importing
  982. !IV_SEGNAM type EDI4SEGNAM
  983. !IV_MANDT type EDI4MANDT
  984. !IV_DOCNUM type EDI_DOCNUM
  985. !IV_PSGNUM type EDI4PSGNUC optional
  986. !IV_HLEVEL type EDI4HLEVEC
  987. !IS_STRUCTURE type ANY
  988. changing
  989. !CT_COUNT type I
  990. !CT_DOCUMENT type ZLCTEDID4_TT .
  991. ENDCLASS.
  992.  
  993.  
  994.  
  995. CLASS ZFICLN_LCT_OUTBD_MAPPER IMPLEMENTATION.
  996.  
  997.  
  998. * <SIGNATURE>---------------------------------------------------------------------------------------+
  999. * | Static Private Method ZFICLN_LCT_OUTBD_MAPPER=>CHA_QTY_REDUC_DATA
  1000. * +-------------------------------------------------------------------------------------------------+
  1001. * | [--->] IV_ZCONRES2 TYPE ZLCTCONRES2
  1002. * | [<-()] EV_QUANTITY_REDUC TYPE CHAR7
  1003. * +--------------------------------------------------------------------------------------</SIGNATURE>
  1004. METHOD cha_qty_reduc_data.
  1005. *&H***************************************************************
  1006. *&H SAP-Module : FI-LCT *
  1007. *&H Author : Juri Böhme *
  1008. *&H Company/Department: Sopra Steria GmbH *
  1009. *&H Phone : *
  1010. *&H E-Mail : Juri@Boehme-Beratung.de *
  1011. *&H Date of creation: 2018-10-16 *
  1012. *&D***************************************************************
  1013. *&D Description : *
  1014. *&D del sign and units *
  1015. *&C***************************************************************
  1016. *&C Change history : *
  1017. *&C Developer | Code/Date | Description *
  1018. *&C -------------------------------------------------------------*
  1019. *&C <Name> | <code>.<Date>| <Description> *
  1020. *&C***************************************************************
  1021.  
  1022. DATA: lv_length TYPE syst_index,
  1023. lv_lenght TYPE syst_index.
  1024.  
  1025.  
  1026. DESCRIBE FIELD iv_zconres2 OUTPUT-LENGTH lv_lenght.
  1027.  
  1028. DO.
  1029.  
  1030. IF lv_length GE lv_lenght.
  1031. EXIT.
  1032. ENDIF.
  1033.  
  1034.  
  1035. IF iv_zconres2+lv_length(1) CO '1234567890,.'.
  1036. ev_quantity_reduc+lv_length(1) = iv_zconres2+lv_length(1).
  1037. ENDIF.
  1038.  
  1039. ADD 1 TO lv_length.
  1040.  
  1041. ENDDO.
  1042.  
  1043. ENDMETHOD.
  1044.  
  1045.  
  1046. * <SIGNATURE>---------------------------------------------------------------------------------------+
  1047. * | Static Public Method ZFICLN_LCT_OUTBD_MAPPER=>CHECK_MAPPING_CUST
  1048. * +-------------------------------------------------------------------------------------------------+
  1049. * | [EXC!] MAPPING_ERROR
  1050. * +--------------------------------------------------------------------------------------</SIGNATURE>
  1051. METHOD check_mapping_cust.
  1052. CONSTANTS: lc_map_const TYPE c LENGTH 1 VALUE 0,
  1053. lc_map_struc TYPE c LENGTH 1 VALUE 1,
  1054. lc_map_tab TYPE c LENGTH 1 VALUE 2,
  1055. lc_map_code TYPE c LENGTH 1 VALUE 3.
  1056.  
  1057. DATA: ls_lnl_map_t TYPE zlct_lnl_map_t.
  1058.  
  1059. LOOP AT mt_lnl_map_t INTO ls_lnl_map_t.
  1060.  
  1061. CASE ls_lnl_map_t-element_type.
  1062. WHEN lc_map_struc.
  1063. IF ls_lnl_map_t-map_struc_tab IS INITIAL OR ls_lnl_map_t-map_field IS INITIAL.
  1064. RAISE mapping_error.
  1065. * EXIT.
  1066. ENDIF.
  1067.  
  1068. WHEN lc_map_tab.
  1069. IF ls_lnl_map_t-map_struc_tab IS INITIAL OR ls_lnl_map_t-map_field IS INITIAL
  1070. OR ls_lnl_map_t-map_key_1 IS INITIAL OR ls_lnl_map_t-map_value_1 IS INITIAL.
  1071. RAISE mapping_error.
  1072. * EXIT.
  1073. ENDIF.
  1074. ENDCASE.
  1075.  
  1076. ENDLOOP.
  1077.  
  1078. ENDMETHOD.
  1079.  
  1080.  
  1081. * <SIGNATURE>---------------------------------------------------------------------------------------+
  1082. * | Instance Private Method ZFICLN_LCT_OUTBD_MAPPER->CHECK_NEW_CONTRACT
  1083. * +-------------------------------------------------------------------------------------------------+
  1084. * | [<-()] EV_PROZESS_TYP TYPE CHAR01
  1085. * +--------------------------------------------------------------------------------------</SIGNATURE>
  1086. METHOD check_new_contract.
  1087. *&H***************************************************************
  1088. *&H SAP-Module : FI-LCT *
  1089. *&H Author : Juri Böhme *
  1090. *&H Company/Department: Sopra Steria GmbH *
  1091. *&H Phone : *
  1092. *&H E-Mail : Juri@Boehme-Beratung.de *
  1093. *&H Date of creation: 2018-09-10 *
  1094. *&D***************************************************************
  1095. *&D Description : *
  1096. *&D check new or change *
  1097. *&C***************************************************************
  1098. *&C Change history : *
  1099. *&C Developer | Code/Date | Description *
  1100. *&C -------------------------------------------------------------*
  1101. *&C <Name> | <code>.<Date>| <Description> *
  1102. *&C***************************************************************
  1103.  
  1104. DATA: lv_intreno TYPE zlctguid.
  1105.  
  1106. DATA: lv_count TYPE i.
  1107.  
  1108. lv_intreno = ms_zlctheader_t-zlctintreno.
  1109.  
  1110. SELECT COUNT(*) INTO lv_count
  1111. FROM zlctheader_st
  1112. WHERE zlctintreno = lv_intreno.
  1113. IF sy-subrc = 0 AND
  1114. lv_count GT 1.
  1115. ev_prozess_typ = 'C'.
  1116. ELSE.
  1117. ev_prozess_typ = 'I'.
  1118. ENDIF.
  1119.  
  1120. ENDMETHOD.
  1121.  
  1122.  
  1123. * <SIGNATURE>---------------------------------------------------------------------------------------+
  1124. * | Static Public Method ZFICLN_LCT_OUTBD_MAPPER=>CLASS_CONSTRUCTOR
  1125. * +-------------------------------------------------------------------------------------------------+
  1126. * +--------------------------------------------------------------------------------------</SIGNATURE>
  1127. METHOD class_constructor.
  1128.  
  1129. * Load Mapping Tables
  1130.  
  1131. SELECT * FROM zlct_ext_map_t INTO TABLE mt_zlct_ext_map_t
  1132. WHERE zinactiv = abap_false. "#EC CI_NOFIELD"#EC CI_NOWHERE
  1133.  
  1134. SELECT * FROM zlct_condkindt_t
  1135. INTO TABLE mt_zlctcondkind_t
  1136. WHERE spras = sy-langu. "#EC CI_NOFIELD
  1137.  
  1138. SELECT * FROM zlct_pay_type_t
  1139. INTO TABLE mt_zlct_pay_type_t
  1140. WHERE zinactiv = abap_false. "#EC CI_NOFIELD
  1141.  
  1142. SELECT * FROM zlct_pay_ryth_t
  1143. INTO TABLE mt_zlct_pay_ryth_t
  1144. WHERE zinactiv = abap_false. "#EC CI_NOFIELD
  1145.  
  1146. SELECT * FROM zlct_lnl_map_t
  1147. INTO TABLE mt_lnl_map_t
  1148. WHERE not_active = abap_false. "#EC CI_NOFIELD
  1149.  
  1150. SELECT * FROM zlctmap_help_t
  1151. INTO TABLE mt_zlctmap_help_t
  1152. WHERE zinactiv = abap_false. "#EC CI_NOFIELD
  1153.  
  1154. SELECT * FROM zcont_option_t
  1155. INTO TABLE mt_zcont_option_t
  1156. WHERE zinactiv = abap_false. "#EC CI_NOFIELD
  1157.  
  1158. SELECT * FROM zlct_company_t
  1159. INTO TABLE mt_company_lnl
  1160. WHERE aim_rating_typ = zficln_lct_outbd_service=>mc_aim_rating_typ_lnl. "#EC CI_NOWHERE"#EC CI_NOFIELD
  1161.  
  1162. SELECT * FROM zcont_gp_role_t
  1163. INTO TABLE mt_gp_role_t
  1164. WHERE zinactiv = abap_false. "#EC CI_NOFIELD
  1165.  
  1166. SELECT * FROM zlct_obj_type_t
  1167. INTO TABLE mt_obj_type_t
  1168. WHERE zinactiv = abap_false. "#EC CI_NOFIELD
  1169.  
  1170. SELECT * FROM zlct_opco_type_t
  1171. INTO TABLE mt_zlct_opco_type_t
  1172. WHERE inactive = abap_false. "#EC CI_NOFIELD
  1173.  
  1174. *** beg ins JB 20181030
  1175. SELECT * FROM zlct_valuekind_m
  1176. INTO TABLE mt_zlct_valuekind_m. "#EC CI_NOFIELD
  1177. * WHERE inactive = abap_false. "#EC CI_NOFIELD
  1178. *** end ins JB 20181030
  1179.  
  1180. ENDMETHOD.
  1181.  
  1182.  
  1183. * <SIGNATURE>---------------------------------------------------------------------------------------+
  1184. * | Instance Public Method ZFICLN_LCT_OUTBD_MAPPER->CONSTRUCTOR
  1185. * +-------------------------------------------------------------------------------------------------+
  1186. * | [--->] IS_ZLCTHEADER_T TYPE ZLCTHEADER_T
  1187. * | [--->] IS_ZLCTCONTRACT_T TYPE ZLCTCONTRACT_T
  1188. * | [--->] IS_ZLCTSALE_T TYPE ZLCTSALE_T
  1189. * | [--->] IT_ZLCTSTATUS_T TYPE ZLCTSTATUS_TT
  1190. * | [--->] IT_ZLCTDATE_T TYPE ZLCTDATE_TT
  1191. * | [--->] IT_ZLCTOPTION_T TYPE ZLCTOPTION_TT
  1192. * | [--->] IT_ZLCTPARTREL_T TYPE ZLCTPARTREL_TT
  1193. * | [--->] IT_ZLCTOBJECT_T TYPE ZLCTOBJECT_TT
  1194. * | [--->] IT_ZLCTARO_T TYPE ZLCTARO_TT
  1195. * | [--->] IT_ZLCTCOKSST_T TYPE ZLCTCOKSST_TT
  1196. * | [--->] IT_ZLCTCOND_T TYPE ZLCTCOND_TT
  1197. * | [--->] IT_ZLCTIMAGE_T TYPE ZLCTIMAGE_TT
  1198. * | [--->] IT_ZLCTVALUE_T TYPE ZLCTVALUE_TT
  1199. * | [--->] IT_SEGMENT_FIELDS TYPE ZLCT_MAP_BS_FLDS_TT
  1200. * +--------------------------------------------------------------------------------------</SIGNATURE>
  1201. METHOD constructor.
  1202.  
  1203. ms_zlctheader_t = is_zlctheader_t.
  1204. ms_zlctcontract_t = is_zlctcontract_t.
  1205. ms_zlctsale_t = is_zlctsale_t.
  1206. mt_zlctstatus_t = it_zlctstatus_t.
  1207. mt_zlctdate_t = it_zlctdate_t.
  1208. mt_zlctoption_t = it_zlctoption_t.
  1209. mt_zlctpartrel_t = it_zlctpartrel_t.
  1210. mt_zlctobject_t = it_zlctobject_t.
  1211. mt_zlctaro_t = it_zlctaro_t.
  1212. mt_zlctcoksst_t = it_zlctcoksst_t.
  1213. mt_zlctcond_t = it_zlctcond_t.
  1214. mt_zlctimage_t = it_zlctimage_t.
  1215. mt_zlctvalue_t = it_zlctvalue_t.
  1216. mt_segment_fields = it_segment_fields.
  1217.  
  1218. mv_activ = zficln_lct_db_utility=>check_if_active( ms_zlctheader_t-zlctintreno ). "ins JB 180907
  1219.  
  1220. ENDMETHOD.
  1221.  
  1222.  
  1223. * <SIGNATURE>---------------------------------------------------------------------------------------+
  1224. * | Instance Private Method ZFICLN_LCT_OUTBD_MAPPER->CREATE_IDOC_SEGMENT
  1225. * +-------------------------------------------------------------------------------------------------+
  1226. * | [--->] IV_SEGNAM TYPE EDI4SEGNAM
  1227. * | [--->] IV_MANDT TYPE EDI4MANDT
  1228. * | [--->] IV_DOCNUM TYPE EDI_DOCNUM
  1229. * | [--->] IV_PSGNUM TYPE EDI4PSGNUC(optional)
  1230. * | [--->] IV_HLEVEL TYPE EDI4HLEVEC
  1231. * | [--->] IS_STRUCTURE TYPE ANY
  1232. * | [<-->] CT_COUNT TYPE I
  1233. * | [<-->] CT_DOCUMENT TYPE ZLCTEDID4_TT
  1234. * +--------------------------------------------------------------------------------------</SIGNATURE>
  1235. METHOD create_idoc_segment.
  1236. *&H***************************************************************
  1237. *&H SAP-Module : FI-LCT *
  1238. *&H Author : S.Kühnel *
  1239. *&H Company/Department: Sopra Steria GmbH *
  1240. *&H Phone : *
  1241. *&H E-Mail : sascha.kühnel@ext_soprasteria.com *
  1242. *&H Date of creation: 2018-01-17 *
  1243. *&D***************************************************************
  1244. *&D Description : creates idoc segment *
  1245. *&D Interface method impleentation * *
  1246. *&C***************************************************************
  1247. *&C Change history : *
  1248. *&C Developer | Code/Date | Description *
  1249. *&C -------------------------------------------------------------*
  1250. *&C <Name> | <code>.<Date>| <Description> *
  1251. *&C***************************************************************
  1252.  
  1253. DATA: ls_dd40 TYPE edi_dd40,
  1254. ls_document TYPE zlctedid4_t.
  1255.  
  1256. ADD 1 TO ct_count.
  1257. " gather all basic information of idoc segment (segment name, number, parent segment, hierarchy level, document number, mandant)
  1258. ls_dd40-mandt = iv_mandt.
  1259. ls_dd40-segnam = iv_segnam.
  1260. ls_dd40-segnum = ct_count.
  1261. ls_dd40-psgnum = iv_psgnum.
  1262. ls_dd40-hlevel = iv_hlevel.
  1263. ls_dd40-docnum = iv_docnum.
  1264.  
  1265. MOVE-CORRESPONDING ls_dd40 TO ls_document.
  1266. " write segment data
  1267. ls_document-sdata = is_structure.
  1268.  
  1269. APPEND ls_document TO ct_document.
  1270. ENDMETHOD.
  1271.  
  1272.  
  1273. * <SIGNATURE>---------------------------------------------------------------------------------------+
  1274. * | Static Public Method ZFICLN_LCT_OUTBD_MAPPER=>GET_COMPANY_T
  1275. * +-------------------------------------------------------------------------------------------------+
  1276. * | [<-()] RT_ZLCT_COMPANY_T TYPE ZLCT_COMPANY_TT
  1277. * +--------------------------------------------------------------------------------------</SIGNATURE>
  1278. METHOD get_company_t.
  1279. rt_zlct_company_t = mt_company_lnl.
  1280. ENDMETHOD.
  1281.  
  1282.  
  1283. * <SIGNATURE>---------------------------------------------------------------------------------------+
  1284. * | Static Private Method ZFICLN_LCT_OUTBD_MAPPER=>GET_CTDUR_DATE
  1285. * +-------------------------------------------------------------------------------------------------+
  1286. * | [--->] IS_ZLCTHEADER_T TYPE ZLCTHEADER_T
  1287. * | [--->] IT_ZLCTOBJECT_T TYPE ZLCTOBJECT_TT
  1288. * | [--->] IT_ZLCTDATE_T TYPE ZLCTDATE_TT
  1289. * | [<---] ES_ZLCTDATE_CTDUR TYPE ZLCTDATE_T
  1290. * +--------------------------------------------------------------------------------------</SIGNATURE>
  1291. METHOD get_ctdur_date.
  1292. *&H***************************************************************
  1293. *&H SAP-Module : FI-LCT *
  1294. *&H Author : S.Kühnel *
  1295. *&H Company/Department: Sopra Steria GmbH *
  1296. *&H Phone : *
  1297. *&H E-Mail : sascha.kuehnel@soprasteria.com *
  1298. *&H Date of creation: 2018-03-01 *
  1299. *&D***************************************************************
  1300. *&D Description : *
  1301. *&D get general ctdur data *
  1302. *&C***************************************************************
  1303. *&C Change history : *
  1304. *&C Developer | Code/Date | Description *
  1305. *&C -------------------------------------------------------------*
  1306. *&C <Name> | <code>.<Date>| <Description> *
  1307. *&C***************************************************************
  1308. CONSTANTS: lc_ctdur TYPE c LENGTH 5 VALUE 'CTDUR'.
  1309.  
  1310. DATA: ls_zlctdate TYPE zlctdate_t,
  1311. lv_obj_count TYPE i,
  1312. ls_zlctobject TYPE zlctobject_t.
  1313.  
  1314. LOOP AT it_zlctdate_t INTO ls_zlctdate WHERE zdatart = lc_ctdur AND zobjzuord IS INITIAL.
  1315. es_zlctdate_ctdur = ls_zlctdate.
  1316. EXIT.
  1317. ENDLOOP.
  1318.  
  1319. IF es_zlctdate_ctdur IS INITIAL.
  1320.  
  1321. LOOP AT it_zlctobject_t INTO ls_zlctobject.
  1322. lv_obj_count = lv_obj_count + 1.
  1323. ENDLOOP.
  1324.  
  1325. IF lv_obj_count = 1.
  1326. READ TABLE it_zlctdate_t INTO ls_zlctdate WITH KEY zdatart = lc_ctdur zobjzuord = ls_zlctobject-zobjid.
  1327. es_zlctdate_ctdur = ls_zlctdate.
  1328. ENDIF.
  1329. ENDIF.
  1330.  
  1331. ENDMETHOD.
  1332.  
  1333.  
  1334. * <SIGNATURE>---------------------------------------------------------------------------------------+
  1335. * | Static Private Method ZFICLN_LCT_OUTBD_MAPPER=>GET_CTDUR_DATE_OLD
  1336. * +-------------------------------------------------------------------------------------------------+
  1337. * | [--->] IS_ZLCTHEADER_T TYPE ZLCTHEADER_T
  1338. * | [<-()] EV_ZLCTDATDATE TYPE ZLCTDATDATE
  1339. * +--------------------------------------------------------------------------------------</SIGNATURE>
  1340. METHOD get_ctdur_date_old.
  1341. *&H***************************************************************
  1342. *&H SAP-Module : FI-LCT *
  1343. *&H Author : Juri Böhme *
  1344. *&H Company/Department: Sopra Steria GmbH *
  1345. *&H Phone : *
  1346. *&H E-Mail : Juri.Boehme@beosit.de *
  1347. *&H Date of creation: 2018-09-11 *
  1348. *&D***************************************************************
  1349. *&D Description : *
  1350. *&D get general ctdur data old for Storno *
  1351. *&C***************************************************************
  1352. *&C Change history : *
  1353. *&C Developer | Code/Date | Description *
  1354. *&C -------------------------------------------------------------*
  1355. *&C <Name> | <code>.<Date>| <Description> *
  1356. *&C***************************************************************
  1357.  
  1358. DATA: lc_zlcte1con_head TYPE edi_segnam VALUE 'ZLCTE1CON_HEAD'.
  1359.  
  1360. DATA: lt_monitor TYPE TABLE OF zlct_extr_mon_t,
  1361. lt_edidc TYPE TABLE OF edidc,
  1362. lt_edid4 TYPE TABLE OF edid4.
  1363.  
  1364.  
  1365. SELECT * INTO CORRESPONDING FIELDS OF TABLE lt_monitor
  1366. FROM zlct_extr_mon_t
  1367. WHERE zlctintreno EQ is_zlctheader_t-zlctintreno
  1368. ORDER BY docnum DESCENDING.
  1369. CHECK sy-subrc = 0.
  1370.  
  1371. READ TABLE lt_monitor ASSIGNING FIELD-SYMBOL(<ls_monitor>) INDEX 1.
  1372. CHECK sy-subrc = 0.
  1373.  
  1374. APPEND INITIAL LINE TO lt_edidc ASSIGNING FIELD-SYMBOL(<ls_edidc>).
  1375. <ls_edidc>-docnum = <ls_monitor>-docnum.
  1376.  
  1377.  
  1378. CALL FUNCTION 'EDM01_SELECT_EDID4'
  1379. TABLES
  1380. it_edidc = lt_edidc
  1381. ot_edid4 = lt_edid4
  1382. EXCEPTIONS
  1383. nodata = 1
  1384. progerror = 2
  1385. OTHERS = 3.
  1386. IF sy-subrc <> 0.
  1387. * Implement suitable error handling here
  1388. ENDIF.
  1389.  
  1390.  
  1391.  
  1392.  
  1393. READ TABLE lt_edid4 ASSIGNING FIELD-SYMBOL(<ls_edid4>) WITH KEY segnam = lc_zlcte1con_head.
  1394. CHECK sy-subrc = 0.
  1395.  
  1396. ev_zlctdatdate = <ls_edid4>-sdata+40(08).
  1397.  
  1398. *
  1399. *
  1400. * CONSTANTS: lc_ctdur TYPE c LENGTH 5 VALUE 'CTDUR'.
  1401. *
  1402. * DATA: lt_zlctheader_t TYPE TABLE OF zlctheader_st,
  1403. * lt_zlctdate_t TYPE TABLE OF zlctdate_st,
  1404. * lt_zlctobject_t TYPE TABLE OF zlctobject_st.
  1405. *
  1406. * DATA: ls_zlctdate TYPE zlctdate_st,
  1407. * lv_obj_count TYPE i,
  1408. * ls_zlctobject TYPE zlctobject_st.
  1409. *
  1410. * SELECT *
  1411. * INTO CORRESPONDING FIELDS OF TABLE lt_zlctheader_t
  1412. * FROM zlctheader_st
  1413. * WHERE zlctintreno = is_zlctheader_t-zlctintreno
  1414. * ORDER BY zrun_id_output DESCENDING.
  1415. *
  1416. *
  1417. * READ TABLE lt_zlctheader_t ASSIGNING FIELD-SYMBOL(<ls_zlctheader_t>) INDEX 2.
  1418. * CHECK sy-subrc = 0.
  1419. *
  1420. *
  1421. * SELECT * INTO CORRESPONDING FIELDS OF TABLE lt_zlctdate_t
  1422. * FROM zlctdate_st
  1423. * WHERE zlctintreno = <ls_zlctheader_t>-zlctintreno
  1424. * AND zrun_id_output = <ls_zlctheader_t>-zrun_id_output
  1425. * AND zdatart = lc_ctdur.
  1426. * CHECK sy-subrc = 0.
  1427. *
  1428. *
  1429. *
  1430. *
  1431. *
  1432. * LOOP AT lt_zlctdate_t INTO ls_zlctdate WHERE zdatart = lc_ctdur AND zobjzuord IS INITIAL.
  1433. * EXIT.
  1434. * ENDLOOP.
  1435. *
  1436. * IF ls_zlctdate IS INITIAL.
  1437. *
  1438. * SELECT * INTO CORRESPONDING FIELDS OF TABLE lt_zlctobject_t
  1439. * FROM zlctobject_st
  1440. * WHERE zlctintreno = <ls_zlctheader_t>-zlctintreno
  1441. * AND zrun_id_output = <ls_zlctheader_t>-zrun_id_output.
  1442. * CHECK sy-subrc = 0.
  1443. *
  1444. *
  1445. *
  1446. * LOOP AT lt_zlctobject_t INTO ls_zlctobject.
  1447. * lv_obj_count = lv_obj_count + 1.
  1448. * ENDLOOP.
  1449. *
  1450. * IF lv_obj_count = 1.
  1451. * READ TABLE lt_zlctdate_t INTO ls_zlctdate WITH KEY zdatart = lc_ctdur zobjzuord = ls_zlctobject-zobjid.
  1452. * ENDIF.
  1453. *
  1454. * ENDIF.
  1455. *
  1456. * ev_zlctdatdate = ls_zlctdate-zdatdate.
  1457.  
  1458. ENDMETHOD.
  1459.  
  1460.  
  1461. * <SIGNATURE>---------------------------------------------------------------------------------------+
  1462. * | Static Private Method ZFICLN_LCT_OUTBD_MAPPER=>GET_GENERAL_DATE
  1463. * +-------------------------------------------------------------------------------------------------+
  1464. * | [--->] IV_ZDATART TYPE ZLCTDATART
  1465. * | [--->] IV_DESCENDING TYPE BOOLEAN(optional)
  1466. * | [--->] IS_ZLCTHEADER_T TYPE ZLCTHEADER_T
  1467. * | [--->] IT_ZLCTOBJECT_T TYPE ZLCTOBJECT_TT
  1468. * | [--->] IT_ZLCTDATE_T TYPE ZLCTDATE_TT
  1469. * | [<-()] ES_ZLCTDATE TYPE ZLCTDATE_T
  1470. * +--------------------------------------------------------------------------------------</SIGNATURE>
  1471. METHOD get_general_date.
  1472. *&H***************************************************************
  1473. *&H SAP-Module : FI-LCT *
  1474. *&H Author : Juri Böhme *
  1475. *&H Company/Department: Sopra Steria GmbH *
  1476. *&H Phone : *
  1477. *&H E-Mail : Juri@Boehme-Beratung.de *
  1478. *&H Date of creation: 2018-10-10 *
  1479. *&D***************************************************************
  1480. *&D Description : *
  1481. *&D get general data *
  1482. *&C***************************************************************
  1483. *&C Change history : *
  1484. *&C Developer | Code/Date | Description *
  1485. *&C -------------------------------------------------------------*
  1486. *&C <Name> | <code>.<Date>| <Description> *
  1487. *&C***************************************************************
  1488.  
  1489. DATA: ls_zlctdate TYPE zlctdate_t,
  1490. ls_zlctobject TYPE zlctobject_t.
  1491.  
  1492. DATA: lv_obj_count TYPE i.
  1493.  
  1494. DATA: lt_zlctdate_t TYPE zlctdate_tt.
  1495.  
  1496. lt_zlctdate_t = it_zlctdate_t.
  1497.  
  1498. IF iv_descending = abap_true.
  1499. SORT lt_zlctdate_t BY zvalidfr1 DESCENDING.
  1500. ELSE.
  1501. SORT lt_zlctdate_t BY zvalidfr1 ASCENDING.
  1502. ENDIF.
  1503.  
  1504. LOOP AT lt_zlctdate_t INTO ls_zlctdate WHERE zdatart = iv_zdatart AND zobjzuord IS INITIAL.
  1505. es_zlctdate = ls_zlctdate.
  1506. EXIT.
  1507. ENDLOOP.
  1508.  
  1509. IF es_zlctdate IS INITIAL.
  1510.  
  1511.  
  1512. LOOP AT lt_zlctdate_t INTO ls_zlctdate WHERE zdatart = iv_zdatart.
  1513. es_zlctdate = ls_zlctdate.
  1514. EXIT.
  1515. ENDLOOP.
  1516. ENDIF.
  1517.  
  1518. ENDMETHOD.
  1519.  
  1520.  
  1521. * <SIGNATURE>---------------------------------------------------------------------------------------+
  1522. * | Static Public Method ZFICLN_LCT_OUTBD_MAPPER=>GET_GP_ROLE_T
  1523. * +-------------------------------------------------------------------------------------------------+
  1524. * | [<-()] RT_GP_ROLE_T TYPE ZCONT_GP_ROLE_TT
  1525. * +--------------------------------------------------------------------------------------</SIGNATURE>
  1526. METHOD get_gp_role_t.
  1527. rt_gp_role_t = mt_gp_role_t.
  1528. ENDMETHOD.
  1529.  
  1530.  
  1531. * <SIGNATURE>---------------------------------------------------------------------------------------+
  1532. * | Instance Private Method ZFICLN_LCT_OUTBD_MAPPER->GET_HEAD_DATA_CONTROL
  1533. * +-------------------------------------------------------------------------------------------------+
  1534. * | [<-()] EV_HEAD_DAT_CONTROL TYPE CHAR01
  1535. * +--------------------------------------------------------------------------------------</SIGNATURE>
  1536. METHOD get_head_data_control.
  1537. *&H***************************************************************
  1538. *&H SAP-Module : FI-LCT *
  1539. *&H Author : Juri Böhme *
  1540. *&H Company/Department: Sopra Steria GmbH *
  1541. *&H Phone : 01523 3955015 *
  1542. *&H E-Mail : Juri@Boehme-Beratung.de *
  1543. *&H Date of creation: 2018-10-18 *
  1544. *&D***************************************************************
  1545. *&D Description : *
  1546. *&D get HEAD DAT CONTROL data *
  1547. *&C***************************************************************
  1548. *&C Change history : *
  1549. *&C Developer | Code/Date | Description *
  1550. *&C -------------------------------------------------------------*
  1551. *&C <Name> | <code>.<Date>| <Description> *
  1552. *&C***************************************************************
  1553.  
  1554. DATA: lc_lnl_contracttype_les TYPE zlct_lnl_contracttype VALUE 'LES'.
  1555.  
  1556. READ TABLE mt_company_lnl ASSIGNING FIELD-SYMBOL(<ls_company_lnl>) WITH KEY bukrs = ms_zlctheader_t-zlctbukrs.
  1557. CHECK sy-subrc = 0.
  1558. IF <ls_company_lnl>-lnl_contracttype = lc_lnl_contracttype_les AND ms_zlctcontract_t-zexcontyp = abap_true.
  1559. ev_head_dat_control = 'A'.
  1560. ENDIF.
  1561.  
  1562. ENDMETHOD.
  1563.  
  1564.  
  1565. * <SIGNATURE>---------------------------------------------------------------------------------------+
  1566. * | Static Private Method ZFICLN_LCT_OUTBD_MAPPER=>GET_ITEM_AP_DATA_ACC_PRINCIPLE
  1567. * +-------------------------------------------------------------------------------------------------+
  1568. * | [--->] IV_ACC_PRINCIPLE TYPE CHAR04
  1569. * | [--->] IV_COMPANY TYPE ZLCTBURKS
  1570. * | [<-()] EV_ACC_PRINCIPLE TYPE CHAR04
  1571. * +--------------------------------------------------------------------------------------</SIGNATURE>
  1572. METHOD get_item_ap_data_acc_principle.
  1573. *&H***************************************************************
  1574. *&H SAP-Module : FI-LCT *
  1575. *&H Author : Juri Böhme *
  1576. *&H Company/Department: Sopra Steria GmbH *
  1577. *&H Phone : *
  1578. *&H E-Mail : Juri@Boehme-Beratung.de *
  1579. *&H Date of creation: 2018-10-16 *
  1580. *&D***************************************************************
  1581. *&D Description : *
  1582. *&D SET correct ITEM_AP_DATA_ACC_PRINCIPLE *
  1583. *&C***************************************************************
  1584. *&C Change history : *
  1585. *&C Developer | Code/Date | Description *
  1586. *&C -------------------------------------------------------------*
  1587. *&C <Name> | <code>.<Date>| <Description> *
  1588. *&C***************************************************************
  1589.  
  1590. DATA: lc_loc TYPE c LENGTH 4 VALUE 'LOC',
  1591. lc_ifrs TYPE c LENGTH 4 VALUE 'IFRS',
  1592. lc_hgb TYPE c LENGTH 4 VALUE 'HGB',
  1593. lc_ias TYPE c LENGTH 4 VALUE 'IAS',
  1594. lc_gmg TYPE zlct_sysgroup VALUE 'GMG',
  1595. lc_dfmg TYPE zlct_sysgroup VALUE 'DFMG'.
  1596.  
  1597.  
  1598. ev_acc_principle = iv_acc_principle.
  1599.  
  1600. READ TABLE mt_company_lnl ASSIGNING FIELD-SYMBOL(<ls_company>) WITH KEY bukrs = iv_company.
  1601. IF sy-subrc NE 0.
  1602. EXIT.
  1603. ENDIF.
  1604.  
  1605. IF iv_acc_principle = lc_loc.
  1606. IF <ls_company>-sysgroup EQ lc_gmg
  1607. OR <ls_company>-sysgroup EQ lc_dfmg.
  1608. ev_acc_principle = lc_hgb.
  1609. ENDIF.
  1610. ELSEIF iv_acc_principle = lc_ifrs.
  1611. IF <ls_company>-sysgroup EQ lc_gmg
  1612. OR <ls_company>-sysgroup EQ lc_dfmg.
  1613. ev_acc_principle = lc_ias.
  1614. ENDIF.
  1615. ENDIF.
  1616.  
  1617. ENDMETHOD.
  1618.  
  1619.  
  1620. * <SIGNATURE>---------------------------------------------------------------------------------------+
  1621. * | Static Private Method ZFICLN_LCT_OUTBD_MAPPER=>GET_ITEM_AP_DATA_IR_FIX
  1622. * +-------------------------------------------------------------------------------------------------+
  1623. * | [--->] IV_ZVALUEGAAP TYPE ZLCTVALUEGAAP
  1624. * | [--->] IV_ZVALUEKIND TYPE ZLCTVALUEKIND
  1625. * | [--->] IT_ZLCTCOND_T TYPE ZLCTCOND_TT
  1626. * | [--->] IT_ZLCTVALUE_T TYPE ZLCTVALUE_TT
  1627. * | [<-()] EV_ITEM_AP_DATA_IR_FIX TYPE CHAR011
  1628. * +--------------------------------------------------------------------------------------</SIGNATURE>
  1629. METHOD get_item_ap_data_ir_fix.
  1630. *&H***************************************************************
  1631. *&H SAP-Module : FI-LCT *
  1632. *&H Author : Juri Böhme *
  1633. *&H Company/Department: Sopra Steria GmbH *
  1634. *&H Phone : 01523 3955015 *
  1635. *&H E-Mail : Juri@Boehme-Beratung.de *
  1636. *&H Date of creation: 2018-10-14 *
  1637. *&D***************************************************************
  1638. *&D Description : *
  1639. *&D get value from zlctvalue_t for ir_fix *
  1640. *&C***************************************************************
  1641. *&C Change history : *
  1642. *&C Developer | Code/Date | Description *
  1643. *&C -------------------------------------------------------------*
  1644. *&C <Name> | <code>.<Date>| <Description> *
  1645. *&C***************************************************************
  1646.  
  1647.  
  1648. DATA: ls_zlctvalue TYPE zlctvalue_t,
  1649. ls_zlctcond TYPE zlctcond_t.
  1650.  
  1651.  
  1652. DATA: lt_zlctvalue_t TYPE zlctvalue_tt,
  1653. lt_zlctcond_t TYPE zlctcond_tt.
  1654.  
  1655. lt_zlctvalue_t = it_zlctvalue_t.
  1656. lt_zlctcond_t = it_zlctcond_t.
  1657.  
  1658.  
  1659. SORT lt_zlctvalue_t BY zcondlfd DESCENDING ZVALIDFR1 DESCENDING .
  1660.  
  1661.  
  1662. LOOP AT lt_zlctvalue_t INTO ls_zlctvalue WHERE zvaluekind = iv_zvaluekind AND zvaluegaap = iv_zvaluegaap.
  1663. READ TABLE lt_zlctcond_t INTO ls_zlctcond WITH KEY zvalueguid = ls_zlctvalue-zvalueguid.
  1664. IF sy-subrc EQ 0.
  1665. EXIT.
  1666. ENDIF.
  1667. ENDLOOP.
  1668.  
  1669. IF ls_zlctcond IS INITIAL.
  1670.  
  1671. LOOP AT lt_zlctvalue_t INTO ls_zlctvalue WHERE zvaluekind = iv_zvaluekind .
  1672. READ TABLE lt_zlctcond_t INTO ls_zlctcond WITH KEY zvalueguid = ls_zlctvalue-zvalueguid.
  1673. IF sy-subrc EQ 0.
  1674. EXIT.
  1675. ENDIF.
  1676. ENDLOOP.
  1677. ENDIF.
  1678.  
  1679. IF ls_zlctcond IS INITIAL.
  1680. LOOP AT lt_zlctvalue_t INTO ls_zlctvalue WHERE zvaluekind = iv_zvaluekind AND zvaluegaap = iv_zvaluegaap.
  1681. ENDLOOP.
  1682. ENDIF.
  1683.  
  1684. IF ls_zlctvalue IS INITIAL.
  1685. LOOP AT lt_zlctvalue_t INTO ls_zlctvalue WHERE zvaluekind = iv_zvaluekind.
  1686. ENDLOOP.
  1687.  
  1688. ENDIF.
  1689.  
  1690. IF ls_zlctvalue IS NOT INITIAL.
  1691. ev_item_ap_data_ir_fix = ls_zlctvalue-zvalue.
  1692. ENDIF.
  1693.  
  1694.  
  1695. ENDMETHOD.
  1696.  
  1697.  
  1698. * <SIGNATURE>---------------------------------------------------------------------------------------+
  1699. * | Static Private Method ZFICLN_LCT_OUTBD_MAPPER=>GET_ITEM_GEXT_REVENUE_PARTICIP
  1700. * +-------------------------------------------------------------------------------------------------+
  1701. * | [--->] IV_SEGMENT TYPE ZLCT_MAP_SEGMENT
  1702. * | [--->] IV_ELEMENT TYPE ZLCT_MAP_ELEMENT
  1703. * | [--->] IS_ZLCTOBJECT_T TYPE ZLCTOBJECT_T
  1704. * | [--->] IT_ZLCTVALUE_T TYPE ZLCTVALUE_TT
  1705. * | [<-()] EV_REVENUE_PARTICIPATION TYPE TEXT9
  1706. * +--------------------------------------------------------------------------------------</SIGNATURE>
  1707. METHOD get_item_gext_revenue_particip.
  1708. *&H***************************************************************
  1709. *&H SAP-Module : FI-LCT *
  1710. *&H Author : Juri Böhme *
  1711. *&H Company/Department: Sopra Steria GmbH *
  1712. *&H Phone : 01523 3955015 *
  1713. *&H E-Mail : Juri@Boehme-Beratung.de *
  1714. *&H Date of creation: 2018-10-30 *
  1715. *&D***************************************************************
  1716. *&D Description : *
  1717. *&D get value from zlctvalue_t for revenue_participation *
  1718. *&C***************************************************************
  1719. *&C Change history : *
  1720. *&C Developer | Code/Date | Description *
  1721. *&C -------------------------------------------------------------*
  1722. *&C <Name> | <code>.<Date>| <Description> *
  1723. *&C***************************************************************
  1724.  
  1725. DATA: lt_zlctvalue_t TYPE zlctvalue_tt.
  1726.  
  1727. DATA: lv_lines TYPE sy-index.
  1728.  
  1729. FIELD-SYMBOLS <ls_zlctvalue> TYPE zlctvalue_t.
  1730.  
  1731. lt_zlctvalue_t = it_zlctvalue_t.
  1732.  
  1733. CLEAR: ev_revenue_participation.
  1734.  
  1735. READ TABLE mt_zlct_valuekind_m ASSIGNING FIELD-SYMBOL(<ls_valuekind>) WITH KEY segment = iv_segment
  1736. element = iv_element.
  1737.  
  1738. CHECK sy-subrc = 0.
  1739.  
  1740. DESCRIBE TABLE lt_zlctvalue_t LINES lv_lines.
  1741.  
  1742. CHECK lv_lines GT 0.
  1743.  
  1744. IF lv_lines = 0.
  1745.  
  1746. READ TABLE lt_zlctvalue_t ASSIGNING <ls_zlctvalue> WITH KEY zvaluekind = <ls_valuekind>-zvaluekind.
  1747.  
  1748. ELSE.
  1749. SORT lt_zlctvalue_t BY zcondlfd DESCENDING zvalidfr1 DESCENDING .
  1750. LOOP AT lt_zlctvalue_t ASSIGNING <ls_zlctvalue> WHERE zvaluekind = <ls_valuekind>-zvaluekind
  1751. AND zvalidfr1 LE sy-datum
  1752. AND zvalidto1 GE sy-datum.
  1753. EXIT.
  1754. ENDLOOP.
  1755.  
  1756. ENDIF.
  1757.  
  1758.  
  1759. CHECK sy-subrc = 0.
  1760.  
  1761. IF <ls_zlctvalue> IS NOT INITIAL.
  1762. ev_revenue_participation = <ls_zlctvalue>-zvalue.
  1763. ENDIF.
  1764.  
  1765. ENDMETHOD.
  1766.  
  1767.  
  1768. * <SIGNATURE>---------------------------------------------------------------------------------------+
  1769. * | Static Public Method ZFICLN_LCT_OUTBD_MAPPER=>GET_OBJ_TYPE_T
  1770. * +-------------------------------------------------------------------------------------------------+
  1771. * | [<-()] RT_OBJ_TYPE_T TYPE ZLCT_OBJ_TYPE_TT
  1772. * +--------------------------------------------------------------------------------------</SIGNATURE>
  1773. METHOD get_obj_type_t.
  1774. rt_obj_type_t = mt_obj_type_t.
  1775. ENDMETHOD.
  1776.  
  1777.  
  1778. * <SIGNATURE>---------------------------------------------------------------------------------------+
  1779. * | Static Public Method ZFICLN_LCT_OUTBD_MAPPER=>GET_OPCO_TYPE_T
  1780. * +-------------------------------------------------------------------------------------------------+
  1781. * | [<-()] RT_OPCO_TYPE_T TYPE ZLCT_OPCO_TYPE_TT
  1782. * +--------------------------------------------------------------------------------------</SIGNATURE>
  1783. METHOD get_opco_type_t.
  1784. rt_opco_type_t = mt_zlct_opco_type_t.
  1785. ENDMETHOD.
  1786.  
  1787.  
  1788. * <SIGNATURE>---------------------------------------------------------------------------------------+
  1789. * | Static Private Method ZFICLN_LCT_OUTBD_MAPPER=>GET_VALID_FROM
  1790. * +-------------------------------------------------------------------------------------------------+
  1791. * | [--->] IS_ZLCTCOND_T TYPE ZLCTCOND_T
  1792. * | [<-()] EV_DATE TYPE ZLCTVALIDFR1
  1793. * +--------------------------------------------------------------------------------------</SIGNATURE>
  1794. METHOD get_valid_from.
  1795. *&H***************************************************************
  1796. *&H SAP-Module : FI-LCT *
  1797. *&H Author : Juri Böhme *
  1798. *&H Company/Department: Sopra Steria GmbH *
  1799. *&H Phone : 01523 3955015 *
  1800. *&H E-Mail : Juri@Boehme-Beratung.de *
  1801. *&H Date of creation: 2018-10-16 *
  1802. *&D***************************************************************
  1803. *&D Description : *
  1804. *&D get value from either zcondfp, zcondexdat or validfr1 *
  1805. *&C***************************************************************
  1806. *&C Change history : *
  1807. *&C Developer | Code/Date | Description *
  1808. *&C -------------------------------------------------------------*
  1809. *&C <Name> | <code>.<Date>| <Description> *
  1810. *&C***************************************************************
  1811.  
  1812. DATA: lv_mont TYPE int4,
  1813. lv_month TYPE zlct_lnl_condrth.
  1814.  
  1815. DATA: ls_zlctcond_t TYPE zlctcond_t.
  1816.  
  1817. ls_zlctcond_t = is_zlctcond_t.
  1818.  
  1819.  
  1820. CASE ls_zlctcond_t-zcondrth.
  1821.  
  1822.  
  1823. WHEN '0100'.
  1824. IF ls_zlctcond_t-zcondexdat IS INITIAL AND ls_zlctcond_t-zvalidfr1 IS NOT INITIAL.
  1825. ev_date = ls_zlctcond_t-zvalidfr1.
  1826. ELSEIF ls_zlctcond_t-zcondexdat IS NOT INITIAL AND ls_zlctcond_t-zcondexdat GT ls_zlctcond_t-zvalidfr1.
  1827. ev_date = ls_zlctcond_t-zcondexdat.
  1828. ELSE.
  1829. ev_date = ls_zlctcond_t-zvalidfr1.
  1830. ENDIF.
  1831.  
  1832. WHEN OTHERS.
  1833. ev_date = ls_zlctcond_t-zcondfp.
  1834. IF ls_zlctcond_t-zcondzalw NE '0001'.
  1835. SELECT SINGLE zlnl_condrth INTO lv_month FROM zlct_pay_ryth_t WHERE zcondrth = ls_zlctcond_t-zcondrth.
  1836. lv_mont = lv_month.
  1837. IF ls_zlctcond_t-zcondzalw = '0002' OR ls_zlctcond_t-zcondzalw = '0001'.
  1838. SUBTRACT 1 FROM lv_mont.
  1839. ENDIF.
  1840. lv_mont = lv_mont * ( -1 ).
  1841. IF ev_date NE '00000000'. " ins JB 2018112
  1842. CALL FUNCTION 'HR_HCP_ADD_MONTH_TO_DATE'
  1843. EXPORTING
  1844. im_monthcount = lv_mont
  1845. im_date = ev_date
  1846. IMPORTING
  1847. ex_date = ev_date.
  1848. ENDIF. " ins JB 2018112
  1849.  
  1850. CASE ls_zlctcond_t-zcondzalw.
  1851.  
  1852. WHEN '0002'. " Mittelschüssig
  1853. " ev_date+6(2) = '01'.
  1854. ev_date = ls_zlctcond_t-zvalidfr1. "cha JB 20181018
  1855. WHEN '0003'. " Nachschüssig
  1856. lv_mont = 1.
  1857. CALL FUNCTION 'HR_HCP_ADD_MONTH_TO_DATE'
  1858. EXPORTING
  1859. im_monthcount = lv_mont
  1860. im_date = ev_date
  1861. IMPORTING
  1862. ex_date = ev_date.
  1863. ev_date+6(2) = '01'.
  1864. ENDCASE. "ZLCTCONDZALW
  1865. ENDIF.
  1866.  
  1867. ENDCASE. " zcondrth 1. mal
  1868.  
  1869. ENDMETHOD.
  1870.  
  1871.  
  1872. * <SIGNATURE>---------------------------------------------------------------------------------------+
  1873. * | Static Private Method ZFICLN_LCT_OUTBD_MAPPER=>GET_VALID_TO
  1874. * +-------------------------------------------------------------------------------------------------+
  1875. * | [--->] IS_ZLCTCOND_T TYPE ZLCTCOND_T
  1876. * | [<-()] EV_ITEM_COND_DATA TYPE ZLCTVALIDTO1
  1877. * +--------------------------------------------------------------------------------------</SIGNATURE>
  1878. METHOD get_valid_to.
  1879. *&H***************************************************************
  1880. *&H SAP-Module : FI-LCT *
  1881. *&H Author : Duc-Trung Vu *
  1882. *&H Company/Department: Sopra Steria GmbH *
  1883. *&H Phone : 0151 40625787 *
  1884. *&H E-Mail : duc-trung.vu@soprasteria.com *
  1885. *&H Date of creation: 2018-09-24 *
  1886. *&D***************************************************************
  1887. *&D Description : *
  1888. *&D get value_to depending on zcondfp *
  1889. *&C***************************************************************
  1890. *&C Change history : *
  1891. *&C Developer | Code/Date | Description *
  1892. *&C -------------------------------------------------------------*
  1893. *&C <Name> | <code>.<Date>| <Description> *
  1894. *&C***************************************************************
  1895.  
  1896.  
  1897. IF is_zlctcond_t-zcondrth <> '0100'.
  1898. ev_item_cond_data = is_zlctcond_t-zvalidto1.
  1899. ELSE.
  1900. RETURN.
  1901. ENDIF.
  1902.  
  1903. ENDMETHOD.
  1904.  
  1905.  
  1906. * <SIGNATURE>---------------------------------------------------------------------------------------+
  1907. * | Static Public Method ZFICLN_LCT_OUTBD_MAPPER=>MAP_CA_TYPE
  1908. * +-------------------------------------------------------------------------------------------------+
  1909. * | [--->] IV_ZLCTOPTART TYPE ZLCTOPTART
  1910. * | [<-()] RV_ZLCTNL_CATYPE TYPE ZLCTNL_CATYPE
  1911. * +--------------------------------------------------------------------------------------</SIGNATURE>
  1912. METHOD map_ca_type.
  1913. *&H***************************************************************
  1914. *&H SAP-Module : FI-LCT *
  1915. *&H Author : S.Kühnel *
  1916. *&H Company/Department: Sopra Steria GmbH *
  1917. *&H Phone : *
  1918. *&H E-Mail : sascha.kuehnel@soprasteria.com *
  1919. *&H Date of creation: 2018-03-01 *
  1920. *&D***************************************************************
  1921. *&D Description : *
  1922. *&D maps ca type *
  1923. *&C***************************************************************
  1924. *&C Change history : *
  1925. *&C Developer | Code/Date | Description *
  1926. *&C -------------------------------------------------------------*
  1927. *&C <Name> | <code>.<Date>| <Description> *
  1928. *&C***************************************************************
  1929. DATA: ls_zcont_option_t TYPE zcont_option_t.
  1930.  
  1931. READ TABLE mt_zcont_option_t INTO ls_zcont_option_t WITH KEY zoptart = iv_zlctoptart.
  1932. rv_zlctnl_catype = ls_zcont_option_t-zlnl_catype.
  1933. ENDMETHOD.
  1934.  
  1935.  
  1936. * <SIGNATURE>---------------------------------------------------------------------------------------+
  1937. * | Static Public Method ZFICLN_LCT_OUTBD_MAPPER=>MAP_CONDITIONS_WITH_HELP_TAB
  1938. * +-------------------------------------------------------------------------------------------------+
  1939. * | [--->] IV_SEGMENT TYPE EDILSEGTYP
  1940. * | [--->] IV_ZLCTOBJID TYPE ZLCTOBJID
  1941. * | [--->] IT_ZLCTCOND TYPE ZLCTCOND_TT
  1942. * | [<---] RT_ZLCTCOND TYPE ANY TABLE
  1943. * +--------------------------------------------------------------------------------------</SIGNATURE>
  1944. METHOD map_conditions_with_help_tab.
  1945. *&H***************************************************************
  1946. *&H SAP-Module : FI-LCT *
  1947. *&H Author : S.Kühnel *
  1948. *&H Company/Department: Sopra Steria GmbH *
  1949. *&H Phone : *
  1950. *&H E-Mail : sascha.kuehnel@soprasteria.com *
  1951. *&H Date of creation: 2018-03-01 *
  1952. *&D***************************************************************
  1953. *&D Description : *
  1954. *&D maps index, float, cond, condv, cfact segments *
  1955. *&C***************************************************************
  1956. *&C Change history : *
  1957. *&C Developer | Code/Date | Description *
  1958. *&C -------------------------------------------------------------*
  1959. *&C <Name> | <code>.<Date>| <Description> *
  1960. *&C***************************************************************
  1961. DATA: ls_zlctmap_help_t TYPE zlctmap_help_t,
  1962. ls_zlctcond TYPE zlctcond_t,
  1963. ls_zlcte1con_item_float TYPE zlcte1con_item_float,
  1964. lt_zlcte1con_item_float TYPE TABLE OF zlcte1con_item_float,
  1965. ls_zlcte1con_item_index TYPE zlcte1con_item_index,
  1966. lt_zlcte1con_item_index TYPE TABLE OF zlcte1con_item_index,
  1967. ls_zlcte1con_item_cond TYPE zlcte1con_item_cond,
  1968. lt_zlcte1con_item_cond TYPE TABLE OF zlcte1con_item_cond,
  1969. ls_zlcte1con_item_condv TYPE zlcte1con_item_condv,
  1970. lt_zlcte1con_item_condv TYPE TABLE OF zlcte1con_item_condv,
  1971. ls_zlcte1con_item_cfact TYPE zlcte1con_item_cfact,
  1972. lt_zlcte1con_item_cfact TYPE TABLE OF zlcte1con_item_cfact,
  1973. ls_zlct_condkindt_t TYPE zlct_condkindt_t,
  1974. lv_zahlrhythmus TYPE zlctcondrth.
  1975.  
  1976. LOOP AT it_zlctcond INTO ls_zlctcond WHERE zobjzuord = iv_zlctobjid.
  1977.  
  1978. CLEAR: ls_zlcte1con_item_float,
  1979. ls_zlcte1con_item_index,
  1980. ls_zlcte1con_item_cond,
  1981. ls_zlcte1con_item_condv,
  1982. ls_zlcte1con_item_cfact,
  1983. ls_zlctmap_help_t,
  1984. lv_zahlrhythmus.
  1985.  
  1986. IF ls_zlctcond-zcondrth <> '0100'.
  1987. lv_zahlrhythmus = '0000'.
  1988. ELSE.
  1989. lv_zahlrhythmus = ls_zlctcond-zcondrth.
  1990. ENDIF.
  1991.  
  1992. READ TABLE mt_zlctmap_help_t INTO ls_zlctmap_help_t WITH KEY zsegment = iv_segment zcondart_source = ls_zlctcond-zcondart zcondrth = lv_zahlrhythmus.
  1993.  
  1994. IF sy-subrc <> 0.
  1995. CONTINUE.
  1996. ENDIF.
  1997.  
  1998. CASE iv_segment.
  1999.  
  2000. WHEN 'E1CON_ITEM_COND'.
  2001.  
  2002. ls_zlcte1con_item_cond-obj_ext_id = iv_zlctobjid.
  2003. ls_zlcte1con_item_cond-cond_type = ls_zlctmap_help_t-z_condart_target.
  2004. ls_zlcte1con_item_cond-valid_from = ls_zlctcond-zvalidfr1.
  2005.  
  2006. IF ls_zlcte1con_item_cond-valid_from = '00000000'.
  2007. ls_zlcte1con_item_cond-valid_from = ''.
  2008. ENDIF.
  2009.  
  2010. ls_zlcte1con_item_cond-valid_to = ls_zlctcond-zvalidto1.
  2011.  
  2012. IF ls_zlcte1con_item_cond-valid_to = '00000000'.
  2013. ls_zlcte1con_item_cond-valid_to = ''.
  2014. ENDIF.
  2015.  
  2016. ls_zlcte1con_item_cond-cond_value = ls_zlctcond-zcondwert.
  2017. ls_zlcte1con_item_cond-paym_rhythm = map_zcondrth( ls_zlctcond-zcondrth ).
  2018. ls_zlcte1con_item_cond-paym_form = map_zcondzalw( ls_zlctcond-zcondzalw ).
  2019. ls_zlcte1con_item_cond-due_end_of_day = ''.
  2020. APPEND ls_zlcte1con_item_cond TO lt_zlcte1con_item_cond.
  2021.  
  2022. WHEN 'E1CON_ITEM_INDEX'.
  2023.  
  2024. ls_zlcte1con_item_index-obj_ext_id = iv_zlctobjid.
  2025. ls_zlcte1con_item_index-cond_type = ls_zlctmap_help_t-z_condart_target.
  2026. ls_zlcte1con_item_index-valid_from = ls_zlctcond-zvalidfr1.
  2027.  
  2028. IF ls_zlcte1con_item_index-valid_from = '00000000'.
  2029. ls_zlcte1con_item_index-valid_from = ''.
  2030. ENDIF.
  2031.  
  2032. ls_zlcte1con_item_index-valid_to = ls_zlctcond-zvalidto1.
  2033.  
  2034. IF ls_zlcte1con_item_index-valid_to = '00000000'.
  2035. ls_zlcte1con_item_index-valid_to = ''.
  2036. ENDIF.
  2037.  
  2038. ls_zlcte1con_item_index-cond_value = ls_zlctcond-zcondwert.
  2039. ls_zlcte1con_item_index-paym_rhythm = map_zcondrth( ls_zlctcond-zcondrth ).
  2040. ls_zlcte1con_item_index-paym_form = map_zcondzalw( ls_zlctcond-zcondzalw ).
  2041. ls_zlcte1con_item_index-due_end_of_day = ''.
  2042. APPEND ls_zlcte1con_item_index TO lt_zlcte1con_item_index.
  2043.  
  2044. WHEN 'E1CON_ITEM_FLOAT'.
  2045.  
  2046. ls_zlcte1con_item_float-obj_ext_id = iv_zlctobjid.
  2047. ls_zlcte1con_item_float-cond_type = ls_zlctmap_help_t-z_condart_target.
  2048. ls_zlcte1con_item_float-valid_from = ls_zlctcond-zvalidfr1.
  2049.  
  2050. IF ls_zlcte1con_item_float-valid_from = '00000000'.
  2051. ls_zlcte1con_item_float-valid_from = ''.
  2052. ENDIF.
  2053.  
  2054. ls_zlcte1con_item_float-valid_to = ls_zlctcond-zvalidto1.
  2055.  
  2056. IF ls_zlcte1con_item_float-valid_to = '00000000'.
  2057. ls_zlcte1con_item_float-valid_to = ''.
  2058. ENDIF.
  2059.  
  2060. ls_zlcte1con_item_float-cond_value = ls_zlctcond-zcondwert.
  2061. ls_zlcte1con_item_float-paym_rhythm = map_zcondrth( ls_zlctcond-zcondrth ).
  2062. ls_zlcte1con_item_float-paym_form = map_zcondzalw( ls_zlctcond-zcondzalw ).
  2063. ls_zlcte1con_item_float-due_end_of_day = ''.
  2064. APPEND ls_zlcte1con_item_float TO lt_zlcte1con_item_float.
  2065.  
  2066. WHEN 'E1CON_ITEM_CONDV'.
  2067.  
  2068. ls_zlcte1con_item_condv-obj_ext_id = iv_zlctobjid.
  2069. ls_zlcte1con_item_condv-cond_type = ls_zlctmap_help_t-z_condart_target.
  2070. ls_zlcte1con_item_condv-valid_on = ls_zlctcond-zvalidfr1.
  2071.  
  2072. IF ls_zlcte1con_item_condv-valid_on = '00000000'.
  2073. ls_zlcte1con_item_condv-valid_on = ''.
  2074. ENDIF.
  2075.  
  2076. ls_zlcte1con_item_condv-cond_value = ls_zlctcond-zcondwert.
  2077. APPEND ls_zlcte1con_item_condv TO lt_zlcte1con_item_condv.
  2078.  
  2079. WHEN 'E1CON_ITEM_CFACT'.
  2080.  
  2081. ls_zlcte1con_item_cfact-obj_ext_id = iv_zlctobjid.
  2082. ls_zlcte1con_item_cfact-cfact_type = ls_zlctmap_help_t-z_condart_target.
  2083. ls_zlcte1con_item_cfact-cfact_value = ls_zlctcond-zcondwert.
  2084. ls_zlcte1con_item_cfact-cfact_date = ls_zlctcond-zvalidfr1.
  2085.  
  2086. IF ls_zlcte1con_item_cfact-cfact_date = '00000000'.
  2087. ls_zlcte1con_item_cfact-cfact_date = ''.
  2088. ENDIF.
  2089.  
  2090. READ TABLE mt_zlctcondkind_t INTO ls_zlct_condkindt_t WITH KEY zcondart = ls_zlctmap_help_t-zcondart_source.
  2091. ls_zlcte1con_item_cfact-cfact_comd = ls_zlct_condkindt_t-zdescription.
  2092. APPEND ls_zlcte1con_item_cfact TO lt_zlcte1con_item_cfact.
  2093.  
  2094. ENDCASE.
  2095.  
  2096. ENDLOOP.
  2097.  
  2098. IF lt_zlcte1con_item_cond IS NOT INITIAL.
  2099. rt_zlctcond = lt_zlcte1con_item_cond.
  2100. ELSEIF lt_zlcte1con_item_index IS NOT INITIAL.
  2101. rt_zlctcond = lt_zlcte1con_item_index.
  2102. ELSEIF lt_zlcte1con_item_float IS NOT INITIAL.
  2103. rt_zlctcond = lt_zlcte1con_item_float.
  2104. ELSEIF lt_zlcte1con_item_condv IS NOT INITIAL.
  2105. rt_zlctcond = lt_zlcte1con_item_condv.
  2106. ELSEIF lt_zlcte1con_item_cfact IS NOT INITIAL.
  2107. rt_zlctcond = lt_zlcte1con_item_cfact.
  2108. ENDIF.
  2109. ENDMETHOD.
  2110.  
  2111.  
  2112. * <SIGNATURE>---------------------------------------------------------------------------------------+
  2113. * | Static Public Method ZFICLN_LCT_OUTBD_MAPPER=>MAP_CORRECT_DATA_TYPE
  2114. * +-------------------------------------------------------------------------------------------------+
  2115. * | [--->] IV_SEGMENT TYPE ZLCT_MAP_SEGMENT
  2116. * | [--->] IT_SEGMENT_FIELDS TYPE ZLCT_MAP_BS_FLDS_TT
  2117. * | [<-->] CS_SEGMENT TYPE ANY
  2118. * | [EXC!] ERROR_ON_READING_ELEMENT
  2119. * | [EXC!] ERROR_ON_CREATION_OF_DATATYPE
  2120. * | [EXC!] ERROR_ON_ASSIGMENT
  2121. * +--------------------------------------------------------------------------------------</SIGNATURE>
  2122. METHOD map_correct_data_type.
  2123. *&H***************************************************************
  2124. *&H SAP-Module : FI-LCT *
  2125. *&H Author : S.Burkholdt *
  2126. *&H Company/Department: Sopra Steria GmbH *
  2127. *&H Phone : *
  2128. *&H E-Mail : sascha.kuehnel@soprasteria.com *
  2129. *&H Date of creation: 2018-05-31 *
  2130. *&D***************************************************************
  2131. *&D Description : *
  2132. *&D maps fields according to data type *
  2133. *&C***************************************************************
  2134. *&C Change history : *
  2135. *&C Developer | Code/Date | Description *
  2136. *&C -------------------------------------------------------------*
  2137. *&C <Name> | <code>.<Date>| <Description> *
  2138. *&C***************************************************************
  2139.  
  2140. DATA: ls_segment_fields LIKE LINE OF it_segment_fields,
  2141. ls_map LIKE LINE OF mt_lnl_map_t,
  2142. lv_datatype TYPE REF TO data.
  2143.  
  2144. FIELD-SYMBOLS: <lv_input> TYPE any,
  2145. <lv_datatype> TYPE any.
  2146.  
  2147. LOOP AT mt_lnl_map_t INTO ls_map WHERE segment = iv_segment.
  2148.  
  2149. READ TABLE it_segment_fields INTO ls_segment_fields WITH KEY segmenttyp = iv_segment fieldname = ls_map-element.
  2150.  
  2151. IF sy-subrc <> 0.
  2152. RAISE error_on_reading_element.
  2153. ENDIF.
  2154.  
  2155. CREATE DATA lv_datatype TYPE (ls_segment_fields-rollname).
  2156.  
  2157. IF sy-subrc <> 0.
  2158. RAISE error_on_creation_of_datatype.
  2159. ENDIF.
  2160.  
  2161. ASSIGN lv_datatype->* TO <lv_datatype>.
  2162.  
  2163. IF sy-subrc <> 0.
  2164. RAISE error_on_assigment.
  2165. ENDIF.
  2166.  
  2167. ASSIGN COMPONENT ls_map-element OF STRUCTURE cs_segment TO <lv_input>.
  2168.  
  2169. IF sy-subrc <> 0.
  2170. RAISE error_on_assigment.
  2171. ENDIF.
  2172.  
  2173. CASE ls_segment_fields-datatype.
  2174. WHEN 'NUMC' OR 'INT1'.
  2175. IF <lv_input> CO '0123456789'.
  2176. <lv_datatype> = <lv_input>.
  2177. <lv_input> = <lv_datatype>.
  2178. ELSE.
  2179. "VeryImportantToDo Fehlermeldung
  2180. <lv_input> = <lv_input>.
  2181. ENDIF.
  2182. WHEN 'CURR' OR 'DEC' OR 'FLTP' OR 'INT2' OR 'INT4'.
  2183. IF <lv_input> CO '0123456789,.'.
  2184. <lv_datatype> = <lv_input>.
  2185. <lv_input> = <lv_datatype>.
  2186. ELSE.
  2187. "VeryImportantToDo Fehlermeldung
  2188. <lv_input> = <lv_input>.
  2189. ENDIF.
  2190. WHEN OTHERS.
  2191. <lv_datatype> = <lv_input>.
  2192. <lv_input> = <lv_datatype>.
  2193. ENDCASE.
  2194.  
  2195. SHIFT <lv_input> LEFT DELETING LEADING space.
  2196.  
  2197. ENDLOOP.
  2198. ENDMETHOD.
  2199.  
  2200.  
  2201. * <SIGNATURE>---------------------------------------------------------------------------------------+
  2202. * | Static Public Method ZFICLN_LCT_OUTBD_MAPPER=>MAP_EXTID_TYPE_AND_VALUE
  2203. * +-------------------------------------------------------------------------------------------------+
  2204. * | [--->] IV_HEAD_ITEM TYPE ZLCT_ITEM_HEAD
  2205. * | [--->] IS_ZLCTOBJECT TYPE ZLCTOBJECT_T(optional)
  2206. * | [--->] IS_ZLCTHEADER TYPE ZLCTHEADER_T
  2207. * | [--->] IS_ZLCTCONTRACT TYPE ZLCTCONTRACT_T
  2208. * | [--->] IS_ZLCTSALE TYPE ZLCTSALE_T
  2209. * | [--->] IT_ZLCTSTATUS_T TYPE ZLCTSTATUS_TT
  2210. * | [--->] IT_ZLCTDATE_T TYPE ZLCTDATE_TT
  2211. * | [--->] IT_ZLCTOPTION_T TYPE ZLCTOPTION_TT
  2212. * | [--->] IT_ZLCTPARTREL_T TYPE ZLCTPARTREL_TT
  2213. * | [--->] ITT_ZLCTOBJECT_T TYPE ZLCTOBJECT_TT
  2214. * | [--->] IT_ZLCTARO_T TYPE ZLCTARO_TT
  2215. * | [--->] IT_ZLCTCOKSST_T TYPE ZLCTCOKSST_TT
  2216. * | [--->] IT_ZLCTCOND_T TYPE ZLCTCOND_TT
  2217. * | [--->] IT_ZLCTVALUE_T TYPE ZLCTVALUE_TT
  2218. * | [--->] IT_ZLCTIMAGE_T TYPE ZLCTIMAGE_TT
  2219. * | [<---] ET_HEAD_EXTID TYPE ZLCTE1CON_HEAD_EXTID_TT
  2220. * | [<---] ET_ITEM_EXTID TYPE ZLCTE1CON_ITEM_EXTID_TT
  2221. * +--------------------------------------------------------------------------------------</SIGNATURE>
  2222. METHOD map_extid_type_and_value.
  2223. *&H***************************************************************
  2224. *&H SAP-Module : FI-LCT *
  2225. *&H Author : S.Kühnel *
  2226. *&H Company/Department: Sopra Steria GmbH *
  2227. *&H Phone : *
  2228. *&H E-Mail : sascha.kuehnel@soprasteria.com *
  2229. *&H Date of creation: 2018-03-01 *
  2230. *&D***************************************************************
  2231. *&D Description : *
  2232. *&D maps head_extid and item_extid segments *
  2233. *&C***************************************************************
  2234. *&C Change history : *
  2235. *&C Developer | Code/Date | Description *
  2236. *&C -------------------------------------------------------------*
  2237. *&C <Name> | <code>.<Date>| <Description> *
  2238. *&C***************************************************************
  2239. DATA: "lt_zlct_ext_map_t type table of zlct_ext_map_t," PL09022018 Delete
  2240. ls_zlct_ext_map_t TYPE zlct_ext_map_t,
  2241. it_zlctheader_t TYPE TABLE OF zlctheader_t,
  2242. it_zlctcontract_t TYPE TABLE OF zlctcontract_t,
  2243. it_zlctsale_t TYPE TABLE OF zlctsale_t,
  2244. lv_string TYPE string,
  2245. ls_head_extid LIKE LINE OF et_head_extid,
  2246. ls_item_extid LIKE LINE OF et_item_extid,
  2247. it_zlctobject_t TYPE TABLE OF zlctobject_t.
  2248.  
  2249.  
  2250. FIELD-SYMBOLS: <lt_map_table> TYPE ANY TABLE,
  2251. <ls_map_struc> TYPE any,
  2252. <lv_map_field> TYPE any,
  2253. <lv_map_keyfield> TYPE any.
  2254.  
  2255. IF mt_zlct_ext_map_t IS INITIAL.
  2256. RETURN.
  2257. ENDIF.
  2258.  
  2259. APPEND is_zlctheader TO it_zlctheader_t.
  2260. APPEND is_zlctcontract TO it_zlctcontract_t.
  2261. APPEND is_zlctsale TO it_zlctsale_t.
  2262.  
  2263. IF iv_head_item = mc_item.
  2264. CLEAR it_zlctobject_t.
  2265. APPEND is_zlctobject TO it_zlctobject_t.
  2266. ELSE.
  2267. it_zlctobject_t = itt_zlctobject_t.
  2268. ENDIF.
  2269.  
  2270. LOOP AT mt_zlct_ext_map_t INTO ls_zlct_ext_map_t WHERE z_item_head = iv_head_item. " PL09022018 Insert
  2271.  
  2272. UNASSIGN: <lt_map_table>,
  2273. <ls_map_struc>.
  2274.  
  2275. CLEAR lv_string.
  2276.  
  2277. CONCATENATE 'it_' ls_zlct_ext_map_t-ztable INTO lv_string.
  2278. TRANSLATE lv_string TO UPPER CASE.
  2279.  
  2280. ASSIGN (lv_string) TO <lt_map_table>.
  2281.  
  2282. IF sy-subrc <> 0.
  2283. CONTINUE.
  2284. ENDIF.
  2285.  
  2286. LOOP AT <lt_map_table> ASSIGNING <ls_map_struc>.
  2287. CLEAR: ls_head_extid,
  2288. ls_item_extid.
  2289.  
  2290. UNASSIGN: <lv_map_field>,
  2291. <lv_map_keyfield>.
  2292.  
  2293. IF iv_head_item = mc_item AND
  2294. ( ls_zlct_ext_map_t-ztable CS 'COKSST' OR
  2295. ls_zlct_ext_map_t-ztable CS 'COND' OR
  2296. ls_zlct_ext_map_t-ztable CS 'OPTION' OR
  2297. ls_zlct_ext_map_t-ztable CS 'DATE' ).
  2298. ASSIGN COMPONENT 'ZOBJZUORD' OF STRUCTURE <ls_map_struc> TO <lv_map_keyfield>.
  2299. IF sy-subrc <> 0 OR <lv_map_keyfield> <> is_zlctobject-zobjid.
  2300. CONTINUE.
  2301. ENDIF.
  2302. ENDIF.
  2303.  
  2304. UNASSIGN: <lv_map_keyfield>.
  2305.  
  2306. IF ls_zlct_ext_map_t-map_key IS NOT INITIAL.
  2307. ASSIGN COMPONENT ls_zlct_ext_map_t-map_key OF STRUCTURE <ls_map_struc> TO <lv_map_keyfield>.
  2308. IF sy-subrc <> 0 OR <lv_map_keyfield> <> ls_zlct_ext_map_t-map_value.
  2309. CONTINUE.
  2310. ENDIF.
  2311. ENDIF.
  2312.  
  2313. ASSIGN COMPONENT ls_zlct_ext_map_t-zfeld OF STRUCTURE <ls_map_struc> TO <lv_map_field>.
  2314.  
  2315. IF sy-subrc = 0 AND <lv_map_field> IS NOT INITIAL.
  2316. IF iv_head_item = mc_head.
  2317. ls_head_extid-extid_type = ls_zlct_ext_map_t-zid.
  2318. ls_head_extid-extid_value = <lv_map_field>.
  2319.  
  2320. IF ls_head_extid-extid_value = '00000000'.
  2321. ls_head_extid-extid_value = ''.
  2322. ENDIF.
  2323.  
  2324. APPEND ls_head_extid TO et_head_extid.
  2325. ELSEIF iv_head_item = mc_item.
  2326. ls_item_extid-ref_type = ls_zlct_ext_map_t-zid.
  2327. ls_item_extid-value = <lv_map_field>.
  2328.  
  2329. *>>>>> beg ins Duc 20180912
  2330. IF ls_item_extid-ref_type = '02' AND ls_item_extid-value CN ' 0123456789'.
  2331. CLEAR: ls_item_extid-value .
  2332. ENDIF.
  2333. *<<<<< end ins Duc 20180912
  2334. IF ls_item_extid-value = '00000000'.
  2335. ls_item_extid-value = ''.
  2336. ENDIF.
  2337.  
  2338. ls_item_extid-obj_ext_id = is_zlctobject-zobjid.
  2339. APPEND ls_item_extid TO et_item_extid.
  2340. ENDIF.
  2341. ENDIF.
  2342.  
  2343. ENDLOOP.
  2344.  
  2345. ENDLOOP.
  2346.  
  2347. ENDMETHOD.
  2348.  
  2349.  
  2350. * <SIGNATURE>---------------------------------------------------------------------------------------+
  2351. * | Instance Public Method ZFICLN_LCT_OUTBD_MAPPER->MAP_HEAD
  2352. * +-------------------------------------------------------------------------------------------------+
  2353. * | [--->] IV_SEGMENT TYPE ZLCT_MAP_SEGMENT
  2354. * | [--->] IV_INITD TYPE D(optional)
  2355. * | [--->] IV_INITIAL_LOAD TYPE AS4FLAG(optional)
  2356. * | [--->] IV_MANDT TYPE EDI4MANDT
  2357. * | [--->] IV_DOCNUM TYPE EDI_DOCNUM
  2358. * | [--->] IV_PSGNUM TYPE EDI4PSGNUC(optional)
  2359. * | [--->] IV_HLEVEL TYPE EDI4HLEVEC
  2360. * | [--->] IV_SOURCE TYPE CHAR10
  2361. * | [<---] EV_ACTIV TYPE ABAP_BOOL
  2362. * | [<-->] CV_COUNT TYPE I
  2363. * | [<-->] CT_DOCUMENT TYPE ZLCTEDID4_TT
  2364. * +--------------------------------------------------------------------------------------</SIGNATURE>
  2365. METHOD map_head.
  2366. *&H***************************************************************
  2367. *&H SAP-Module : FI-LCT *
  2368. *&H Author : S.Kühnel *
  2369. *&H Company/Department: Sopra Steria GmbH *
  2370. *&H Phone : *
  2371. *&H E-Mail : sascha.kuehnel@soprasteria.com *
  2372. *&H Date of creation: 2018-03-01 *
  2373. *&D***************************************************************
  2374. *&D Description : *
  2375. *&D maps head segment *
  2376. *&C***************************************************************
  2377. *&C Change history : *
  2378. *&C Developer | Code/Date | Description *
  2379. *&C -------------------------------------------------------------*
  2380. *&C <Name> | <code>.<Date>| <Description> *
  2381. *&C***************************************************************
  2382. CONSTANTS: lc_acqu TYPE c LENGTH 4 VALUE 'ACQU',
  2383. lc_con_vers_eff_date_tt_01(02) TYPE c VALUE '01'.
  2384.  
  2385. DATA: lc_lct TYPE c LENGTH 10 VALUE 'LCT',
  2386. lc_usdur TYPE zlctdatart VALUE 'USDUR'.
  2387.  
  2388. DATA: ls_head_data TYPE zlcte1con_head.
  2389.  
  2390. DATA: ls_map_t TYPE zlct_lnl_map_t,
  2391. ls_zlctdate TYPE zlctdate_t,
  2392. lv_obj_count TYPE i.
  2393.  
  2394. DATA: ls_dd40 TYPE edi_dd40,
  2395. ls_document TYPE zlctedid4_t.
  2396.  
  2397. LOOP AT mt_lnl_map_t INTO ls_map_t WHERE segment = iv_segment.
  2398.  
  2399. CASE ls_map_t-element_type.
  2400.  
  2401. WHEN 0 OR 1 OR 2. "Konstante, Struktur, Tabelle
  2402.  
  2403. CALL METHOD zficln_lct_outbd_mapper=>map_lnl_general
  2404. EXPORTING
  2405. iv_segment = iv_segment
  2406. is_map_t = ls_map_t
  2407. is_zlctheader_t = ms_zlctheader_t
  2408. is_zlctcontract_t = ms_zlctcontract_t
  2409. is_zlctsale_t = ms_zlctsale_t
  2410. it_zlctstatus_t = mt_zlctstatus_t
  2411. it_zlctdate_t = mt_zlctdate_t
  2412. it_zlctoption_t = mt_zlctoption_t
  2413. it_zlctpartrel_t = mt_zlctpartrel_t
  2414. it_zlctobject_t = mt_zlctobject_t
  2415. it_zlctaro_t = mt_zlctaro_t
  2416. it_zlctcoksst_t = mt_zlctcoksst_t
  2417. it_zlctcond_t = mt_zlctcond_t
  2418. it_zlctimage_t = mt_zlctimage_t
  2419. it_zlctvalue_t = mt_zlctvalue_t
  2420. IMPORTING
  2421. es_data = ls_head_data
  2422. EXCEPTIONS
  2423. mapping_error = 1
  2424. OTHERS = 2.
  2425. IF sy-subrc <> 0.
  2426. CONTINUE.
  2427. ENDIF.
  2428.  
  2429.  
  2430. WHEN 3. "freies Coding
  2431.  
  2432. CASE ls_map_t-element.
  2433. *** beg ins JB 20181018
  2434. WHEN 'CONTROL'.
  2435. ls_head_data-control = get_head_data_control( ).
  2436. *** end ins JB 20181018
  2437. WHEN 'CON_VERS_EFF_DATE'.
  2438.  
  2439. IF iv_initial_load = abap_true.
  2440.  
  2441. ls_head_data-con_vers_eff_date = iv_initd.
  2442.  
  2443. ELSEIF mv_activ EQ abap_false.
  2444.  
  2445. ls_head_data-con_vers_eff_date = get_ctdur_date_old( is_zlctheader_t = ms_zlctheader_t ).
  2446.  
  2447. ELSEIF ms_zlctcontract_t-ztranstype = lc_acqu.
  2448.  
  2449. *** beg cha JB 20181010
  2450. CLEAR: ls_zlctdate.
  2451. ls_zlctdate = zficln_lct_outbd_mapper=>get_general_date( EXPORTING iv_zdatart = lc_usdur
  2452. is_zlctheader_t = ms_zlctheader_t
  2453. it_zlctobject_t = mt_zlctobject_t
  2454. it_zlctdate_t = mt_zlctdate_t ).
  2455.  
  2456. ls_head_data-con_vers_eff_date = ls_zlctdate-zdatdate. "zvalidfr1. " ? JB
  2457. CLEAR: ls_zlctdate.
  2458.  
  2459. * CALL METHOD zficln_lct_outbd_mapper=>get_ctdur_date
  2460. * EXPORTING
  2461. * is_zlctheader_t = ms_zlctheader_t
  2462. * it_zlctobject_t = mt_zlctobject_t
  2463. * it_zlctdate_t = mt_zlctdate_t
  2464. * IMPORTING
  2465. * es_zlctdate_ctdur = ls_zlctdate_ctdur.
  2466. *
  2467. * ls_head_data-con_vers_eff_date = ls_zlctdate_ctdur-zdatdate.
  2468. *
  2469. * CLEAR: ls_zlctdate_ctdur.
  2470. *** end cha JB 20181010
  2471.  
  2472.  
  2473. ELSE.
  2474. * " if Daten für zconres JB 180906 wenn geklärt ist wie die Abfrage für Modifikation bzw. Reassement ist
  2475. ls_head_data-con_vers_eff_date = ms_zlctcontract_t-zconres5.
  2476. * else.
  2477. * ls_head_data-con_vers_eff_date = ms_zlctcontract_t-zconres6.
  2478. * endif.
  2479. IF ls_head_data-con_vers_eff_date NE '00000000'.
  2480. ls_head_data-con_vers_eff_date+6(02) = lc_con_vers_eff_date_tt_01.
  2481. ENDIF.
  2482. ENDIF.
  2483.  
  2484. IF ls_head_data-con_vers_eff_date = '00000000'.
  2485. ls_head_data-con_vers_eff_date = ''.
  2486. ENDIF.
  2487. *** beg ins JB 180815
  2488. WHEN 'PROCESS_TYPE'.
  2489. IF iv_initial_load EQ 'X'.
  2490. ls_head_data-process_type = 'I'.
  2491. ELSE.
  2492. IF mv_activ EQ abap_false.
  2493. ls_head_data-process_type = 'R'.
  2494. ELSE.
  2495. ls_head_data-process_type = check_new_contract( ).
  2496. ENDIF.
  2497. *** end ins JB 180815
  2498. ENDIF.
  2499. WHEN 'REVERSAL_REASON'.
  2500. IF mv_activ EQ abap_false.
  2501. ls_head_data-reversal_reason = '01'.
  2502. ENDIF.
  2503.  
  2504. *** beg ins JB 180928
  2505. WHEN 'CON_EXT_SOURCE'.
  2506. ls_head_data-con_ext_source = iv_source.
  2507. IF ls_head_data-con_ext_source EQ space.
  2508. ls_head_data-con_ext_source = lc_lct.
  2509. ENDIF.
  2510. *** end ins JB 180928
  2511.  
  2512.  
  2513. ENDCASE.
  2514.  
  2515. ENDCASE.
  2516. ENDLOOP.
  2517.  
  2518. CALL METHOD map_correct_data_type
  2519. EXPORTING
  2520. iv_segment = iv_segment
  2521. it_segment_fields = mt_segment_fields
  2522. CHANGING
  2523. cs_segment = ls_head_data
  2524. EXCEPTIONS
  2525. error_on_reading_element = 1
  2526. error_on_creation_of_datatype = 2
  2527. error_on_assigment = 3
  2528. OTHERS = 4.
  2529.  
  2530. * IF sy-subrc <> 0.
  2531. * APPEND INITIAL LINE TO ct_return ASSIGNING <msg>.
  2532. *
  2533. * CLEAR: <msg>.
  2534. *
  2535. * <msg>-type = 'I'.
  2536. * <msg>-id = 'ZFI_LCT_DB'.
  2537. * <msg>-number = '866'.
  2538. * <msg>-message_v1 = '/DTLN/E1CON_HEAD'.
  2539. *
  2540. * CALL METHOD mo_ut_app_log->set_message_from_bapiret2
  2541. * EXPORTING
  2542. * is_message = <msg>.
  2543. *
  2544. * CALL METHOD mo_ut_app_log->save.
  2545. *
  2546. * MESSAGE i866(zfi_lct_db) WITH <msg>-message_v1 INTO <msg>-message.
  2547. *
  2548. * UNASSIGN: <msg>.
  2549. * ENDIF.
  2550.  
  2551.  
  2552.  
  2553. ADD 1 TO cv_count.
  2554. " gather all basic information of idoc segment (segment name, number, parent segment, hierarchy level, document number, mandant)
  2555. ls_dd40-mandt = iv_mandt.
  2556. ls_dd40-segnam = iv_segment.
  2557. ls_dd40-segnum = cv_count.
  2558. ls_dd40-psgnum = iv_psgnum.
  2559. ls_dd40-hlevel = iv_hlevel.
  2560. ls_dd40-docnum = iv_docnum.
  2561.  
  2562. MOVE-CORRESPONDING ls_dd40 TO ls_document.
  2563. " write segment data
  2564. ls_document-sdata = ls_head_data.
  2565.  
  2566. APPEND ls_document TO ct_document.
  2567.  
  2568. ev_activ = mv_activ.
  2569. ENDMETHOD.
  2570.  
  2571.  
  2572. * <SIGNATURE>---------------------------------------------------------------------------------------+
  2573. * | Instance Public Method ZFICLN_LCT_OUTBD_MAPPER->MAP_HEAD_ACCFACT
  2574. * +-------------------------------------------------------------------------------------------------+
  2575. * | [--->] IV_SEGMENT TYPE ZLCT_MAP_SEGMENT
  2576. * | [--->] IV_MANDT TYPE EDI4MANDT
  2577. * | [--->] IV_DOCNUM TYPE EDI_DOCNUM
  2578. * | [--->] IV_PSGNUM TYPE EDI4PSGNUC(optional)
  2579. * | [--->] IV_HLEVEL TYPE EDI4HLEVEC
  2580. * | [<-->] CT_COUNT TYPE I
  2581. * | [<-->] CT_DOCUMENT TYPE ZLCTEDID4_TT
  2582. * +--------------------------------------------------------------------------------------</SIGNATURE>
  2583. METHOD map_head_accfact.
  2584. *&H***************************************************************
  2585. *&H SAP-Module : FI-LCT *
  2586. *&H Author : S.Kühnel *
  2587. *&H Company/Department: Sopra Steria GmbH *
  2588. *&H Phone : *
  2589. *&H E-Mail : sascha.kuehnel@soprasteria.com *
  2590. *&H Date of creation: 2018-03-01 *
  2591. *&D***************************************************************
  2592. *&D Description : *
  2593. *&D maps head_accfact segment *
  2594. *&C***************************************************************
  2595. *&C Change history : *
  2596. *&C Developer | Code/Date | Description *
  2597. *&C -------------------------------------------------------------*
  2598. *&C <Name> | <code>.<Date>| <Description> *
  2599. *&C***************************************************************
  2600.  
  2601. DATA: ls_head_data_accfact TYPE zlcte1con_head_accfact.
  2602.  
  2603.  
  2604.  
  2605. DATA: ls_dd40 TYPE edi_dd40,
  2606. ls_document TYPE zlctedid4_t.
  2607.  
  2608.  
  2609.  
  2610. DATA: ls_map_t TYPE zlct_lnl_map_t.
  2611.  
  2612. LOOP AT mt_lnl_map_t INTO ls_map_t WHERE segment = iv_segment.
  2613.  
  2614. CASE ls_map_t-element_type.
  2615.  
  2616. WHEN 0 OR 1 OR 2. "Konstante, Struktur, Tabelle
  2617.  
  2618. CALL METHOD zficln_lct_outbd_mapper=>map_lnl_general
  2619. EXPORTING
  2620. iv_segment = iv_segment
  2621. is_map_t = ls_map_t
  2622. is_zlctheader_t = ms_zlctheader_t
  2623. is_zlctcontract_t = ms_zlctcontract_t
  2624. is_zlctsale_t = ms_zlctsale_t
  2625. it_zlctstatus_t = mt_zlctstatus_t
  2626. it_zlctdate_t = mt_zlctdate_t
  2627. it_zlctoption_t = mt_zlctoption_t
  2628. it_zlctpartrel_t = mt_zlctpartrel_t
  2629. it_zlctobject_t = mt_zlctobject_t
  2630. it_zlctaro_t = mt_zlctaro_t
  2631. it_zlctcoksst_t = mt_zlctcoksst_t
  2632. it_zlctcond_t = mt_zlctcond_t
  2633. it_zlctimage_t = mt_zlctimage_t
  2634. it_zlctvalue_t = mt_zlctvalue_t
  2635. IMPORTING
  2636. es_data = ls_head_data_accfact
  2637. EXCEPTIONS
  2638. mapping_error = 1
  2639. OTHERS = 2.
  2640. IF sy-subrc <> 0.
  2641. CONTINUE.
  2642. ENDIF.
  2643.  
  2644. WHEN 3. "freies Coding
  2645.  
  2646. CASE ls_map_t-element.
  2647. WHEN OTHERS.
  2648. ENDCASE.
  2649.  
  2650. ENDCASE.
  2651.  
  2652. ENDLOOP.
  2653.  
  2654. CALL METHOD map_correct_data_type
  2655. EXPORTING
  2656. iv_segment = iv_segment
  2657. it_segment_fields = mt_segment_fields
  2658. CHANGING
  2659. cs_segment = ls_head_data_accfact
  2660. EXCEPTIONS
  2661. error_on_reading_element = 1
  2662. error_on_creation_of_datatype = 2
  2663. error_on_assigment = 3
  2664. OTHERS = 4.
  2665.  
  2666. ADD 1 TO ct_count.
  2667. " gather all basic information of idoc segment (segment name, number, parent segment, hierarchy level, document number, mandant)
  2668. ls_dd40-mandt = iv_mandt.
  2669. ls_dd40-segnam = iv_segment.
  2670. ls_dd40-segnum = ct_count.
  2671. ls_dd40-psgnum = iv_psgnum.
  2672. ls_dd40-hlevel = iv_hlevel.
  2673. ls_dd40-docnum = iv_docnum.
  2674.  
  2675. MOVE-CORRESPONDING ls_dd40 TO ls_document.
  2676. " write segment data
  2677. ls_document-sdata = ls_head_data_accfact.
  2678.  
  2679. APPEND ls_document TO ct_document.
  2680.  
  2681. ENDMETHOD.
  2682.  
  2683.  
  2684. * <SIGNATURE>---------------------------------------------------------------------------------------+
  2685. * | Instance Public Method ZFICLN_LCT_OUTBD_MAPPER->MAP_HEAD_BP
  2686. * +-------------------------------------------------------------------------------------------------+
  2687. * | [--->] IV_SEGMENT TYPE ZLCT_MAP_SEGMENT
  2688. * | [--->] IV_MANDT TYPE EDI4MANDT
  2689. * | [--->] IV_DOCNUM TYPE EDI_DOCNUM
  2690. * | [--->] IV_PSGNUM TYPE EDI4PSGNUC
  2691. * | [--->] IV_HLEVEL TYPE EDI4HLEVEC
  2692. * | [<-->] CT_COUNT TYPE I
  2693. * | [<-->] CT_DOCUMENT TYPE ZLCTEDID4_TT
  2694. * +--------------------------------------------------------------------------------------</SIGNATURE>
  2695. METHOD map_head_bp.
  2696. *&H***************************************************************
  2697. *&H SAP-Module : FI-LCT *
  2698. *&H Author : S.Kühnel *
  2699. *&H Company/Department: Sopra Steria GmbH *
  2700. *&H Phone : *
  2701. *&H E-Mail : sascha.kuehnel@soprasteria.com *
  2702. *&H Date of creation: 2018-03-01 *
  2703. *&D***************************************************************
  2704. *&D Description : *
  2705. *&D maps head_bp segment *
  2706. *&C***************************************************************
  2707. *&C Change history : *
  2708. *&C Developer | Code/Date | Description *
  2709. *&C -------------------------------------------------------------*
  2710. *&C <Name> | <code>.<Date>| <Description> *
  2711. *&C***************************************************************
  2712. CONSTANTS: lc_lg01 TYPE c LENGTH 4 VALUE 'LG01'.
  2713.  
  2714. DATA: ls_head_data_bp TYPE zlcte1con_head_bp.
  2715.  
  2716. DATA: ls_map_t TYPE zlct_lnl_map_t,
  2717. ls_gp_role TYPE zcont_gp_role_t,
  2718. ls_zlctpartrel TYPE zlctpartrel_t.
  2719.  
  2720. DATA: ls_dd40 TYPE edi_dd40,
  2721. ls_document TYPE zlctedid4_t.
  2722.  
  2723. LOOP AT mt_lnl_map_t INTO ls_map_t WHERE segment = iv_segment.
  2724.  
  2725. CASE ls_map_t-element_type.
  2726.  
  2727. WHEN 0 OR 1 OR 2. "Konstante, Struktur, Tabelle
  2728.  
  2729. CALL METHOD zficln_lct_outbd_mapper=>map_lnl_general
  2730. EXPORTING
  2731. iv_segment = iv_segment
  2732. is_map_t = ls_map_t
  2733. is_zlctheader_t = ms_zlctheader_t
  2734. is_zlctcontract_t = ms_zlctcontract_t
  2735. is_zlctsale_t = ms_zlctsale_t
  2736. it_zlctstatus_t = mt_zlctstatus_t
  2737. it_zlctdate_t = mt_zlctdate_t
  2738. it_zlctoption_t = mt_zlctoption_t
  2739. it_zlctpartrel_t = mt_zlctpartrel_t
  2740. it_zlctobject_t = mt_zlctobject_t
  2741. it_zlctaro_t = mt_zlctaro_t
  2742. it_zlctcoksst_t = mt_zlctcoksst_t
  2743. it_zlctcond_t = mt_zlctcond_t
  2744. it_zlctimage_t = mt_zlctimage_t
  2745. it_zlctvalue_t = mt_zlctvalue_t
  2746. IMPORTING
  2747. es_data = ls_head_data_bp
  2748. EXCEPTIONS
  2749. mapping_error = 1
  2750. OTHERS = 2.
  2751. IF sy-subrc <> 0.
  2752. CONTINUE.
  2753. ENDIF.
  2754.  
  2755. WHEN 3. "freies Coding
  2756.  
  2757. CASE ls_map_t-element.
  2758. WHEN 'PARTNER_ROLE'.
  2759.  
  2760. CLEAR: ls_zlctpartrel,
  2761. ls_gp_role.
  2762.  
  2763. READ TABLE mt_zlctpartrel_t INTO ls_zlctpartrel WITH KEY zpartroll = lc_lg01.
  2764. READ TABLE mt_gp_role_t INTO ls_gp_role WITH KEY zpartroll = ls_zlctpartrel-zpartroll.
  2765. ls_head_data_bp-partner_role = ls_gp_role-zlnl_partrole.
  2766.  
  2767. ENDCASE.
  2768. ENDCASE.
  2769.  
  2770. ENDLOOP.
  2771.  
  2772. CALL METHOD map_correct_data_type
  2773. EXPORTING
  2774. iv_segment = iv_segment
  2775. it_segment_fields = mt_segment_fields
  2776. CHANGING
  2777. cs_segment = ls_head_data_bp
  2778. EXCEPTIONS
  2779. error_on_reading_element = 1
  2780. error_on_creation_of_datatype = 2
  2781. error_on_assigment = 3
  2782. OTHERS = 4.
  2783.  
  2784. ADD 1 TO ct_count.
  2785. " gather all basic information of idoc segment (segment name, number, parent segment, hierarchy level, document number, mandant)
  2786. ls_dd40-mandt = iv_mandt.
  2787. ls_dd40-segnam = iv_segment.
  2788. ls_dd40-segnum = ct_count.
  2789. ls_dd40-psgnum = iv_psgnum.
  2790. ls_dd40-hlevel = iv_hlevel.
  2791. ls_dd40-docnum = iv_docnum.
  2792.  
  2793. MOVE-CORRESPONDING ls_dd40 TO ls_document.
  2794. " write segment data
  2795. ls_document-sdata = ls_head_data_bp.
  2796.  
  2797. APPEND ls_document TO ct_document.
  2798.  
  2799. ENDMETHOD.
  2800.  
  2801.  
  2802. * <SIGNATURE>---------------------------------------------------------------------------------------+
  2803. * | Instance Public Method ZFICLN_LCT_OUTBD_MAPPER->MAP_HEAD_GEN
  2804. * +-------------------------------------------------------------------------------------------------+
  2805. * | [--->] IV_SEGMENT TYPE ZLCT_MAP_SEGMENT
  2806. * | [--->] IV_MANDT TYPE EDI4MANDT
  2807. * | [--->] IV_DOCNUM TYPE EDI_DOCNUM
  2808. * | [--->] IV_PSGNUM TYPE EDI4PSGNUC(optional)
  2809. * | [--->] IV_HLEVEL TYPE EDI4HLEVEC
  2810. * | [<-->] CT_COUNT TYPE I
  2811. * | [<-->] CT_DOCUMENT TYPE ZLCTEDID4_TT
  2812. * +--------------------------------------------------------------------------------------</SIGNATURE>
  2813. METHOD map_head_gen.
  2814. *&H***************************************************************
  2815. *&H SAP-Module : FI-LCT *
  2816. *&H Author : S.Kühnel *
  2817. *&H Company/Department: Sopra Steria GmbH *
  2818. *&H Phone : *
  2819. *&H E-Mail : sascha.kuehnel@soprasteria.com *
  2820. *&H Date of creation: 2018-03-01 *
  2821. *&D***************************************************************
  2822. *&D Description : *
  2823. *&D maps head_gen segment *
  2824. *&C***************************************************************
  2825. *&C Change history : *
  2826. *&C Developer | Code/Date | Description *
  2827. *&C -------------------------------------------------------------*
  2828. *&C <Name> | <code>.<Date>| <Description> *
  2829. *&C***************************************************************
  2830. CONSTANTS: lc_ctdur TYPE c LENGTH 5 VALUE 'CTDUR'.
  2831.  
  2832. DATA: ls_head_data_gen TYPE zlcte1con_head_gen.
  2833.  
  2834.  
  2835. DATA: ls_map_t TYPE zlct_lnl_map_t,
  2836. ls_zlctdate_ctdur TYPE zlctdate_t,
  2837. ls_zlct_company_t TYPE zlct_company_t,
  2838. lv_obj_count TYPE i.
  2839.  
  2840.  
  2841. DATA: ls_dd40 TYPE edi_dd40,
  2842. ls_document TYPE zlctedid4_t.
  2843.  
  2844. READ TABLE mt_company_lnl INTO ls_zlct_company_t WITH KEY bukrs = ms_zlctheader_t-zlctbukrs.
  2845.  
  2846. LOOP AT mt_lnl_map_t INTO ls_map_t WHERE segment = iv_segment.
  2847.  
  2848. CASE ls_map_t-element_type.
  2849.  
  2850. WHEN 0 OR 1 OR 2. "Konstante, Struktur, Tabelle
  2851.  
  2852. CALL METHOD zficln_lct_outbd_mapper=>map_lnl_general
  2853. EXPORTING
  2854. iv_segment = iv_segment
  2855. is_map_t = ls_map_t
  2856. is_zlctheader_t = ms_zlctheader_t
  2857. is_zlctcontract_t = ms_zlctcontract_t
  2858. is_zlctsale_t = ms_zlctsale_t
  2859. it_zlctstatus_t = mt_zlctstatus_t
  2860. it_zlctdate_t = mt_zlctdate_t
  2861. it_zlctoption_t = mt_zlctoption_t
  2862. it_zlctpartrel_t = mt_zlctpartrel_t
  2863. it_zlctobject_t = mt_zlctobject_t
  2864. it_zlctaro_t = mt_zlctaro_t
  2865. it_zlctcoksst_t = mt_zlctcoksst_t
  2866. it_zlctcond_t = mt_zlctcond_t
  2867. it_zlctimage_t = mt_zlctimage_t
  2868. it_zlctvalue_t = mt_zlctvalue_t
  2869. IMPORTING
  2870. es_data = ls_head_data_gen
  2871. EXCEPTIONS
  2872. mapping_error = 1
  2873. OTHERS = 2.
  2874. IF sy-subrc <> 0.
  2875. CONTINUE.
  2876. ENDIF.
  2877.  
  2878. WHEN 3. "freies Coding
  2879.  
  2880. CASE ls_map_t-element.
  2881. WHEN 'CON_TYPE'.
  2882. ls_head_data_gen-con_type = ls_zlct_company_t-lnl_contracttype.
  2883. WHEN 'CON_COMP_CODE'.
  2884.  
  2885. IF ls_zlct_company_t-lnl_mls_bukrs IS NOT INITIAL.
  2886. ls_head_data_gen-con_comp_code = ls_zlct_company_t-lnl_mls_bukrs.
  2887. ELSE.
  2888. ls_head_data_gen-con_comp_code = ms_zlctheader_t-zlctbukrs.
  2889. ENDIF.
  2890.  
  2891. WHEN 'CON_MAIN_FLAG'.
  2892.  
  2893. IF ms_zlctcontract_t-zconclass = '0001'.
  2894. ls_head_data_gen-con_main_flag = abap_true.
  2895. ENDIF.
  2896.  
  2897. WHEN 'CON_START'.
  2898.  
  2899. CALL METHOD zficln_lct_outbd_mapper=>get_ctdur_date
  2900. EXPORTING
  2901. is_zlctheader_t = ms_zlctheader_t
  2902. it_zlctobject_t = mt_zlctobject_t
  2903. it_zlctdate_t = mt_zlctdate_t
  2904. IMPORTING
  2905. es_zlctdate_ctdur = ls_zlctdate_ctdur.
  2906.  
  2907. ls_head_data_gen-con_start = ls_zlctdate_ctdur-zdatdate.
  2908.  
  2909. CLEAR: ls_zlctdate_ctdur.
  2910.  
  2911. IF ls_head_data_gen-con_start = '00000000'.
  2912. ls_head_data_gen-con_start = ''.
  2913. ENDIF.
  2914.  
  2915. ENDCASE.
  2916. ENDCASE.
  2917.  
  2918. ENDLOOP.
  2919.  
  2920.  
  2921.  
  2922. CALL METHOD map_correct_data_type
  2923. EXPORTING
  2924. iv_segment = iv_segment
  2925. it_segment_fields = mt_segment_fields
  2926. CHANGING
  2927. cs_segment = ls_head_data_gen
  2928. EXCEPTIONS
  2929. error_on_reading_element = 1
  2930. error_on_creation_of_datatype = 2
  2931. error_on_assigment = 3
  2932. OTHERS = 4.
  2933.  
  2934. ADD 1 TO ct_count.
  2935. " gather all basic information of idoc segment (segment name, number, parent segment, hierarchy level, document number, mandant)
  2936. ls_dd40-mandt = iv_mandt.
  2937. ls_dd40-segnam = iv_segment.
  2938. ls_dd40-segnum = ct_count.
  2939. ls_dd40-psgnum = iv_psgnum.
  2940. ls_dd40-hlevel = iv_hlevel.
  2941. ls_dd40-docnum = iv_docnum.
  2942.  
  2943. MOVE-CORRESPONDING ls_dd40 TO ls_document.
  2944. " write segment data
  2945. ls_document-sdata = ls_head_data_gen.
  2946.  
  2947. APPEND ls_document TO ct_document.
  2948.  
  2949. ENDMETHOD.
  2950.  
  2951.  
  2952. * <SIGNATURE>---------------------------------------------------------------------------------------+
  2953. * | Static Public Method ZFICLN_LCT_OUTBD_MAPPER=>MAP_ITEM
  2954. * +-------------------------------------------------------------------------------------------------+
  2955. * | [--->] IV_SEGMENT TYPE ZLCT_MAP_SEGMENT
  2956. * | [--->] IS_ZLCTOBJECT_T TYPE ZLCTOBJECT_T
  2957. * | [--->] IS_ZLCTHEADER_T TYPE ZLCTHEADER_T
  2958. * | [--->] IS_ZLCTCONTRACT_T TYPE ZLCTCONTRACT_T
  2959. * | [--->] IS_ZLCTSALE_T TYPE ZLCTSALE_T
  2960. * | [--->] IT_ZLCTSTATUS_T TYPE ZLCTSTATUS_TT
  2961. * | [--->] IT_ZLCTDATE_T TYPE ZLCTDATE_TT
  2962. * | [--->] IT_ZLCTOPTION_T TYPE ZLCTOPTION_TT
  2963. * | [--->] IT_ZLCTPARTREL_T TYPE ZLCTPARTREL_TT
  2964. * | [--->] IT_ZLCTOBJECT_T TYPE ZLCTOBJECT_TT
  2965. * | [--->] IT_ZLCTARO_T TYPE ZLCTARO_TT
  2966. * | [--->] IT_ZLCTCOKSST_T TYPE ZLCTCOKSST_TT
  2967. * | [--->] IT_ZLCTCOND_T TYPE ZLCTCOND_TT
  2968. * | [--->] IT_ZLCTIMAGE_T TYPE ZLCTIMAGE_TT
  2969. * | [--->] IT_ZLCTVALUE_T TYPE ZLCTVALUE_TT
  2970. * | [<---] ES_ITEM_DATA TYPE ZLCTE1CON_ITEM
  2971. * +--------------------------------------------------------------------------------------</SIGNATURE>
  2972. METHOD map_item.
  2973. *&H***************************************************************
  2974. *&H SAP-Module : FI-LCT *
  2975. *&H Author : S.Kühnel *
  2976. *&H Company/Department: Sopra Steria GmbH *
  2977. *&H Phone : *
  2978. *&H E-Mail : sascha.kuehnel@soprasteria.com *
  2979. *&H Date of creation: 2018-03-01 *
  2980. *&D***************************************************************
  2981. *&D Description : *
  2982. *&D maps item segment *
  2983. *&C***************************************************************
  2984. *&C Change history : *
  2985. *&C Developer | Code/Date | Description *
  2986. *&C -------------------------------------------------------------*
  2987. *&C <Name> | <code>.<Date>| <Description> *
  2988. *&C***************************************************************
  2989. DATA: ls_map_t TYPE zlct_lnl_map_t.
  2990.  
  2991. LOOP AT mt_lnl_map_t INTO ls_map_t WHERE segment = iv_segment.
  2992.  
  2993. CASE ls_map_t-element_type.
  2994.  
  2995. WHEN 0 OR 1 OR 2. "Konstante, Struktur, Tabelle
  2996.  
  2997. CALL METHOD zficln_lct_outbd_mapper=>map_lnl_general
  2998. EXPORTING
  2999. iv_segment = iv_segment
  3000. is_map_t = ls_map_t
  3001. is_zlctobject_t = is_zlctobject_t
  3002. is_zlctheader_t = is_zlctheader_t
  3003. is_zlctcontract_t = is_zlctcontract_t
  3004. is_zlctsale_t = is_zlctsale_t
  3005. it_zlctstatus_t = it_zlctstatus_t
  3006. it_zlctdate_t = it_zlctdate_t
  3007. it_zlctoption_t = it_zlctoption_t
  3008. it_zlctpartrel_t = it_zlctpartrel_t
  3009. it_zlctobject_t = it_zlctobject_t
  3010. it_zlctaro_t = it_zlctaro_t
  3011. it_zlctcoksst_t = it_zlctcoksst_t
  3012. it_zlctcond_t = it_zlctcond_t
  3013. it_zlctimage_t = it_zlctimage_t
  3014. it_zlctvalue_t = it_zlctvalue_t
  3015. IMPORTING
  3016. es_data = es_item_data
  3017. EXCEPTIONS
  3018. mapping_error = 1
  3019. OTHERS = 2.
  3020. IF sy-subrc <> 0.
  3021. CONTINUE.
  3022. ENDIF.
  3023.  
  3024. WHEN 3. "freies Coding
  3025.  
  3026. CASE ls_map_t-element.
  3027. WHEN OTHERS.
  3028. ENDCASE.
  3029.  
  3030. ENDCASE.
  3031.  
  3032. ENDLOOP.
  3033.  
  3034. ENDMETHOD.
  3035.  
  3036.  
  3037. * <SIGNATURE>---------------------------------------------------------------------------------------+
  3038. * | Static Public Method ZFICLN_LCT_OUTBD_MAPPER=>MAP_ITEM_AP_IFRS
  3039. * +-------------------------------------------------------------------------------------------------+
  3040. * | [--->] IV_SEGMENT TYPE ZLCT_MAP_SEGMENT
  3041. * | [--->] IS_ZLCTOBJECT_T TYPE ZLCTOBJECT_T
  3042. * | [--->] IS_ZLCTHEADER_T TYPE ZLCTHEADER_T
  3043. * | [--->] IS_ZLCTCONTRACT_T TYPE ZLCTCONTRACT_T
  3044. * | [--->] IS_ZLCTSALE_T TYPE ZLCTSALE_T
  3045. * | [--->] IT_ZLCTSTATUS_T TYPE ZLCTSTATUS_TT
  3046. * | [--->] IT_ZLCTDATE_T TYPE ZLCTDATE_TT
  3047. * | [--->] IT_ZLCTOPTION_T TYPE ZLCTOPTION_TT
  3048. * | [--->] IT_ZLCTPARTREL_T TYPE ZLCTPARTREL_TT
  3049. * | [--->] IT_ZLCTOBJECT_T TYPE ZLCTOBJECT_TT
  3050. * | [--->] IT_ZLCTARO_T TYPE ZLCTARO_TT
  3051. * | [--->] IT_ZLCTCOKSST_T TYPE ZLCTCOKSST_TT
  3052. * | [--->] IT_ZLCTCOND_T TYPE ZLCTCOND_TT
  3053. * | [--->] IT_ZLCTIMAGE_T TYPE ZLCTIMAGE_TT
  3054. * | [--->] IT_ZLCTVALUE_T TYPE ZLCTVALUE_TT
  3055. * | [<---] ES_ITEM_AP_DATA TYPE ZLCTE1CON_ITEM_AP
  3056. * +--------------------------------------------------------------------------------------</SIGNATURE>
  3057. METHOD map_item_ap_ifrs.
  3058. *&H***************************************************************
  3059. *&H SAP-Module : FI-LCT *
  3060. *&H Author : S.Kühnel *
  3061. *&H Company/Department: Sopra Steria GmbH *
  3062. *&H Phone : *
  3063. *&H E-Mail : sascha.kuehnel@soprasteria.com *
  3064. *&H Date of creation: 2018-03-01 *
  3065. *&D***************************************************************
  3066. *&D Description : *
  3067. *&D maps item_ap (ifrs) segment *
  3068. *&C***************************************************************
  3069. *&C Change history : *
  3070. *&C Developer | Code/Date | Description *
  3071. *&C -------------------------------------------------------------*
  3072. *&C <Name> | <code>.<Date>| <Description> *
  3073. *&C***************************************************************
  3074. CONSTANTS: lc_ifrs TYPE c LENGTH 4 VALUE 'IFRS',
  3075. lc_fl TYPE c LENGTH 2 VALUE 'FL',
  3076. lc_ol TYPE c LENGTH 2 VALUE 'OL'.
  3077.  
  3078. DATA: ls_map_t TYPE zlct_lnl_map_t,
  3079. ls_zlctvalue TYPE zlctvalue_t,
  3080. ls_zlctdate TYPE zlctdate_t,
  3081. ls_zlctcond TYPE zlctcond_t.
  3082.  
  3083. FIELD-SYMBOLS: <ls_valuekind> TYPE zlct_valuekind_m.
  3084.  
  3085. LOOP AT mt_lnl_map_t INTO ls_map_t WHERE segment = iv_segment.
  3086.  
  3087. CASE ls_map_t-element_type.
  3088.  
  3089. WHEN 0 OR 1 OR 2. "Konstante, Struktur, Tabelle
  3090.  
  3091. CALL METHOD zficln_lct_outbd_mapper=>map_lnl_general
  3092. EXPORTING
  3093. iv_segment = iv_segment
  3094. is_map_t = ls_map_t
  3095. is_zlctobject_t = is_zlctobject_t
  3096. is_zlctheader_t = is_zlctheader_t
  3097. is_zlctcontract_t = is_zlctcontract_t
  3098. is_zlctsale_t = is_zlctsale_t
  3099. it_zlctstatus_t = it_zlctstatus_t
  3100. it_zlctdate_t = it_zlctdate_t
  3101. it_zlctoption_t = it_zlctoption_t
  3102. it_zlctpartrel_t = it_zlctpartrel_t
  3103. it_zlctobject_t = it_zlctobject_t
  3104. it_zlctaro_t = it_zlctaro_t
  3105. it_zlctcoksst_t = it_zlctcoksst_t
  3106. it_zlctcond_t = it_zlctcond_t
  3107. it_zlctimage_t = it_zlctimage_t
  3108. it_zlctvalue_t = it_zlctvalue_t
  3109. IMPORTING
  3110. es_data = es_item_ap_data
  3111. EXCEPTIONS
  3112. mapping_error = 1
  3113. OTHERS = 2.
  3114. IF sy-subrc <> 0.
  3115. CONTINUE.
  3116. ENDIF.
  3117.  
  3118. WHEN 3. "freies Coding
  3119.  
  3120. CASE ls_map_t-element.
  3121.  
  3122. WHEN 'ACC_PRINCIPLE'.
  3123. *** beg ins JB 20181016
  3124. es_item_ap_data-acc_principle = get_item_ap_data_acc_principle( iv_acc_principle = lc_ifrs
  3125. iv_company = is_zlctheader_t-zlctbukrs ).
  3126.  
  3127. *** end ins JB 20181016
  3128. WHEN 'IR_FIX_FLAG'.
  3129.  
  3130. CLEAR ls_zlctvalue.
  3131. *>>>>>>>>>>> beg ins Duc 20181012
  3132. *** beg ins JB 20181030
  3133. READ TABLE mt_zlct_valuekind_m ASSIGNING <ls_valuekind> WITH KEY ifrs_loc = lc_ifrs
  3134. segment = iv_segment
  3135. element = ls_map_t-element.
  3136. IF sy-subrc = 0.
  3137. *** end ins JB 2018
  3138. LOOP AT it_zlctcond_t INTO ls_zlctcond.
  3139. READ TABLE it_zlctvalue_t INTO ls_zlctvalue WITH KEY zvaluekind = <ls_valuekind>-zvaluekind zvaluegaap = lc_ifrs zvalueguid = ls_zlctcond-zvalueguid.
  3140. * READ TABLE it_zlctvalue_t INTO ls_zlctvalue WITH KEY zvaluekind = lc_w005 zvaluegaap = lc_ifrs.
  3141.  
  3142. IF sy-subrc <> 0.
  3143. READ TABLE it_zlctvalue_t INTO ls_zlctvalue WITH KEY zvaluekind = <ls_valuekind>-zvaluekind zvaluegaap = ''.
  3144. ELSE.
  3145. EXIT.
  3146. ENDIF.
  3147. ENDLOOP.
  3148. ENDIF.
  3149. *<<<<<<<<<<< end ins Duc 20181012
  3150. IF ls_zlctvalue IS NOT INITIAL.
  3151. es_item_ap_data-ir_fix_flag = abap_true.
  3152. ENDIF.
  3153.  
  3154. WHEN 'IR_FIX'.
  3155. *** beg ins JB 20181030
  3156. READ TABLE mt_zlct_valuekind_m ASSIGNING <ls_valuekind> WITH KEY ifrs_loc = lc_ifrs
  3157. segment = iv_segment
  3158. element = ls_map_t-element.
  3159. IF sy-subrc = 0.
  3160. *** end ins JB 2018
  3161.  
  3162. es_item_ap_data-ir_fix = get_item_ap_data_ir_fix( iv_zvaluekind = <ls_valuekind>-zvaluekind
  3163. iv_zvaluegaap = lc_ifrs
  3164. it_zlctcond_t = it_zlctcond_t
  3165. it_zlctvalue_t = it_zlctvalue_t ).
  3166. ENDIF.
  3167.  
  3168.  
  3169. WHEN 'IR_INT_FLAG'.
  3170.  
  3171. CLEAR ls_zlctvalue.
  3172. *>>>>>>>>>>> beg ins Duc 20181012
  3173. *** beg ins JB 20181030
  3174. READ TABLE mt_zlct_valuekind_m ASSIGNING <ls_valuekind> WITH KEY ifrs_loc = lc_ifrs
  3175. segment = iv_segment
  3176. element = ls_map_t-element.
  3177. IF sy-subrc = 0.
  3178. *** end ins JB 2018
  3179. LOOP AT it_zlctcond_t INTO ls_zlctcond.
  3180. READ TABLE it_zlctvalue_t INTO ls_zlctvalue WITH KEY zvaluekind = <ls_valuekind>-zvaluekind zvaluegaap = lc_ifrs zvalueguid = ls_zlctcond-zvalueguid.
  3181. * READ TABLE it_zlctvalue_t INTO ls_zlctvalue WITH KEY zvaluekind = lc_w004 zvaluegaap = lc_ifrs.
  3182.  
  3183. IF sy-subrc <> 0.
  3184. READ TABLE it_zlctvalue_t INTO ls_zlctvalue WITH KEY zvaluekind = <ls_valuekind>-zvaluekind zvaluegaap = ''.
  3185. ELSE.
  3186. EXIT.
  3187. ENDIF.
  3188. ENDLOOP.
  3189. ENDIF.
  3190. *<<<<<<<<<<< end ins Duc 20181012
  3191.  
  3192. IF ls_zlctvalue IS NOT INITIAL.
  3193. es_item_ap_data-ir_int_flag = abap_true.
  3194. ENDIF.
  3195.  
  3196. WHEN 'IR_INT'.
  3197.  
  3198. CLEAR ls_zlctvalue.
  3199. *>>>>>>>>>>> beg ins Duc 20181012
  3200. *** beg ins JB 20181030
  3201. READ TABLE mt_zlct_valuekind_m ASSIGNING <ls_valuekind> WITH KEY ifrs_loc = lc_ifrs
  3202. segment = iv_segment
  3203. element = ls_map_t-element.
  3204. IF sy-subrc = 0.
  3205. *** end ins JB 2018
  3206. LOOP AT it_zlctcond_t INTO ls_zlctcond.
  3207. READ TABLE it_zlctvalue_t INTO ls_zlctvalue WITH KEY zvaluekind = <ls_valuekind>-zvaluekind zvaluegaap = lc_ifrs zvalueguid = ls_zlctcond-zvalueguid.
  3208. * READ TABLE it_zlctvalue_t INTO ls_zlctvalue WITH KEY zvaluekind = lc_w004 zvaluegaap = lc_ifrs.
  3209.  
  3210. IF sy-subrc <> 0.
  3211. READ TABLE it_zlctvalue_t INTO ls_zlctvalue WITH KEY zvaluekind = <ls_valuekind>-zvaluekind zvaluegaap = ''.
  3212. ELSE.
  3213. EXIT.
  3214. ENDIF.
  3215. ENDLOOP.
  3216. ENDIF.
  3217. *<<<<<<<<<<< end ins Duc 20181012
  3218.  
  3219. IF ls_zlctvalue IS NOT INITIAL.
  3220. es_item_ap_data-ir_int = ls_zlctvalue-zvalue.
  3221. ENDIF.
  3222.  
  3223. WHEN 'CON_NDPER_W'.
  3224.  
  3225. CLEAR ls_zlctdate.
  3226. READ TABLE it_zlctdate_t INTO ls_zlctdate WITH KEY zobjzuord = is_zlctobject_t-zobjid zdatart = mc_zlctdatart_dpidur.
  3227. es_item_ap_data-con_ndper_w = ls_zlctdate-zdatmm.
  3228.  
  3229. IF es_item_ap_data-con_ndper_w = '000'.
  3230. es_item_ap_data-con_ndper_w = ''.
  3231. ENDIF.
  3232.  
  3233. WHEN 'CON_NDJHR_W'.
  3234.  
  3235. CLEAR ls_zlctdate.
  3236. READ TABLE it_zlctdate_t INTO ls_zlctdate WITH KEY zobjzuord = is_zlctobject_t-zobjid zdatart = mc_zlctdatart_dpidur.
  3237. es_item_ap_data-con_ndjhr_w = ls_zlctdate-zdatdau.
  3238.  
  3239. IF es_item_ap_data-con_ndjhr_w = '00000000'.
  3240. es_item_ap_data-con_ndjhr_w = ''.
  3241. ENDIF.
  3242.  
  3243. WHEN 'AFA_PER'.
  3244.  
  3245. CLEAR ls_zlctdate.
  3246. READ TABLE it_zlctdate_t INTO ls_zlctdate WITH KEY zobjzuord = is_zlctobject_t-zobjid zdatart = mc_zlctdatart_dpidur.
  3247. es_item_ap_data-afa_per = ls_zlctdate-zdatmm.
  3248.  
  3249. IF es_item_ap_data-afa_per = '000'.
  3250. es_item_ap_data-afa_per = ''.
  3251. ENDIF.
  3252.  
  3253. WHEN 'AFA_YEAR'.
  3254.  
  3255. CLEAR ls_zlctdate.
  3256. READ TABLE it_zlctdate_t INTO ls_zlctdate WITH KEY zobjzuord = is_zlctobject_t-zobjid zdatart = mc_zlctdatart_dpidur.
  3257. es_item_ap_data-afa_year = ls_zlctdate-zdatdau.
  3258.  
  3259. IF es_item_ap_data-afa_year ='00000000'.
  3260. es_item_ap_data-afa_year = ''.
  3261. ENDIF.
  3262.  
  3263. WHEN 'CON_RISK_ID'.
  3264.  
  3265. es_item_ap_data-con_risk_id = is_zlctobject_t-zconris1+2(2).
  3266.  
  3267. WHEN 'LEASE_CLASS_LESSOR'.
  3268. IF is_zlctcontract_t-zintlease IS NOT INITIAL. "Defect: 2060117168
  3269. IF is_zlctobject_t-zintleas1 = abap_true.
  3270. es_item_ap_data-lease_class_lessor = lc_fl.
  3271. ELSE.
  3272. es_item_ap_data-lease_class_lessor = lc_ol.
  3273. ENDIF.
  3274. ENDIF.
  3275. ENDCASE.
  3276.  
  3277. ENDCASE.
  3278.  
  3279. ENDLOOP.
  3280.  
  3281. ENDMETHOD.
  3282.  
  3283.  
  3284. * <SIGNATURE>---------------------------------------------------------------------------------------+
  3285. * | Static Public Method ZFICLN_LCT_OUTBD_MAPPER=>MAP_ITEM_AP_LOC
  3286. * +-------------------------------------------------------------------------------------------------+
  3287. * | [--->] IV_SEGMENT TYPE ZLCT_MAP_SEGMENT
  3288. * | [--->] IS_ZLCTOBJECT_T TYPE ZLCTOBJECT_T
  3289. * | [--->] IS_ZLCTHEADER_T TYPE ZLCTHEADER_T
  3290. * | [--->] IS_ZLCTCONTRACT_T TYPE ZLCTCONTRACT_T
  3291. * | [--->] IS_ZLCTSALE_T TYPE ZLCTSALE_T
  3292. * | [--->] IT_ZLCTSTATUS_T TYPE ZLCTSTATUS_TT
  3293. * | [--->] IT_ZLCTDATE_T TYPE ZLCTDATE_TT
  3294. * | [--->] IT_ZLCTOPTION_T TYPE ZLCTOPTION_TT
  3295. * | [--->] IT_ZLCTPARTREL_T TYPE ZLCTPARTREL_TT
  3296. * | [--->] IT_ZLCTOBJECT_T TYPE ZLCTOBJECT_TT
  3297. * | [--->] IT_ZLCTARO_T TYPE ZLCTARO_TT
  3298. * | [--->] IT_ZLCTCOKSST_T TYPE ZLCTCOKSST_TT
  3299. * | [--->] IT_ZLCTCOND_T TYPE ZLCTCOND_TT
  3300. * | [--->] IT_ZLCTIMAGE_T TYPE ZLCTIMAGE_TT
  3301. * | [--->] IT_ZLCTVALUE_T TYPE ZLCTVALUE_TT
  3302. * | [<---] ES_ITEM_AP_DATA TYPE ZLCTE1CON_ITEM_AP
  3303. * +--------------------------------------------------------------------------------------</SIGNATURE>
  3304. METHOD map_item_ap_loc.
  3305. *&H***************************************************************
  3306. *&H SAP-Module : FI-LCT *
  3307. *&H Author : S.Kühnel *
  3308. *&H Company/Department: Sopra Steria GmbH *
  3309. *&H Phone : *
  3310. *&H E-Mail : sascha.kuehnel@soprasteria.com *
  3311. *&H Date of creation: 2018-03-01 *
  3312. *&D***************************************************************
  3313. *&D Description : *
  3314. *&D maps item_ap (loc) segment *
  3315. *&C***************************************************************
  3316. *&C Change history : *
  3317. *&C Developer | Code/Date | Description *
  3318. *&C -------------------------------------------------------------*
  3319. *&C <Name> | <code>.<Date>| <Description> *
  3320. *&C***************************************************************
  3321. CONSTANTS: lc_loc TYPE c LENGTH 4 VALUE 'LOC',
  3322. * LC_W005 TYPE C LENGTH 4 VALUE 'W005',
  3323. * LC_W004 TYPE C LENGTH 4 VALUE 'W004',
  3324. lc_fl TYPE c LENGTH 2 VALUE 'FL',
  3325. lc_ol TYPE c LENGTH 2 VALUE 'OL'.
  3326.  
  3327. DATA: ls_map_t TYPE zlct_lnl_map_t,
  3328. ls_zlctvalue TYPE zlctvalue_t,
  3329. ls_zlctdate TYPE zlctdate_t,
  3330. ls_zlctcond TYPE zlctcond_t.
  3331.  
  3332. FIELD-SYMBOLS: <ls_valuekind> TYPE zlct_valuekind_m.
  3333.  
  3334. LOOP AT mt_lnl_map_t INTO ls_map_t WHERE segment = iv_segment.
  3335.  
  3336. CASE ls_map_t-element_type.
  3337.  
  3338. WHEN 0 OR 1 OR 2. "Konstante, Struktur, Tabelle
  3339.  
  3340. CALL METHOD zficln_lct_outbd_mapper=>map_lnl_general
  3341. EXPORTING
  3342. iv_segment = iv_segment
  3343. is_map_t = ls_map_t
  3344. is_zlctobject_t = is_zlctobject_t
  3345. is_zlctheader_t = is_zlctheader_t
  3346. is_zlctcontract_t = is_zlctcontract_t
  3347. is_zlctsale_t = is_zlctsale_t
  3348. it_zlctstatus_t = it_zlctstatus_t
  3349. it_zlctdate_t = it_zlctdate_t
  3350. it_zlctoption_t = it_zlctoption_t
  3351. it_zlctpartrel_t = it_zlctpartrel_t
  3352. it_zlctobject_t = it_zlctobject_t
  3353. it_zlctaro_t = it_zlctaro_t
  3354. it_zlctcoksst_t = it_zlctcoksst_t
  3355. it_zlctcond_t = it_zlctcond_t
  3356. it_zlctimage_t = it_zlctimage_t
  3357. it_zlctvalue_t = it_zlctvalue_t
  3358. IMPORTING
  3359. es_data = es_item_ap_data
  3360. EXCEPTIONS
  3361. mapping_error = 1
  3362. OTHERS = 2.
  3363. IF sy-subrc <> 0.
  3364. CONTINUE.
  3365. ENDIF.
  3366.  
  3367. WHEN 3. "freies Coding
  3368.  
  3369. CASE ls_map_t-element.
  3370.  
  3371. WHEN 'ACC_PRINCIPLE'.
  3372. *** beg ins JB 20181016
  3373. es_item_ap_data-acc_principle = get_item_ap_data_acc_principle( iv_acc_principle = lc_loc
  3374. iv_company = is_zlctheader_t-zlctbukrs ).
  3375.  
  3376. *** end ins JB 20181016
  3377. WHEN 'IR_FIX_FLAG'.
  3378.  
  3379. CLEAR ls_zlctvalue.
  3380. *>>>>>>>>>>> beg ins Duc 20181012
  3381. *** beg ins JB 20181030
  3382. READ TABLE mt_zlct_valuekind_m ASSIGNING <ls_valuekind> WITH KEY ifrs_loc = lc_loc
  3383. segment = iv_segment
  3384. element = ls_map_t-element.
  3385. IF sy-subrc = 0.
  3386. *** end ins JB 2018
  3387. LOOP AT it_zlctcond_t INTO ls_zlctcond.
  3388. READ TABLE it_zlctvalue_t INTO ls_zlctvalue WITH KEY zvaluekind = <ls_valuekind>-zvaluekind zvaluegaap = lc_loc zvalueguid = ls_zlctcond-zvalueguid.
  3389. * READ TABLE it_zlctvalue_t INTO ls_zlctvalue WITH KEY zvaluekind = lc_w005 zvaluegaap = lc_loc.
  3390.  
  3391. IF sy-subrc <> 0.
  3392. READ TABLE it_zlctvalue_t INTO ls_zlctvalue WITH KEY zvaluekind = <ls_valuekind>-zvaluekind zvaluegaap = ''.
  3393. ELSE.
  3394. EXIT.
  3395. ENDIF.
  3396. ENDLOOP.
  3397. ENDIF.
  3398. *<<<<<<<<<<< end ins Duc 20181012
  3399.  
  3400. IF ls_zlctvalue IS NOT INITIAL.
  3401. es_item_ap_data-ir_fix_flag = abap_true.
  3402. ENDIF.
  3403.  
  3404. WHEN 'IR_FIX'.
  3405. *** beg ins JB 20181030
  3406. READ TABLE mt_zlct_valuekind_m ASSIGNING <ls_valuekind> WITH KEY ifrs_loc = lc_loc
  3407. segment = iv_segment
  3408. element = ls_map_t-element.
  3409. IF sy-subrc = 0.
  3410. *** end ins JB 2018
  3411.  
  3412. es_item_ap_data-ir_fix = get_item_ap_data_ir_fix( iv_zvaluekind = <ls_valuekind>-zvaluekind
  3413. iv_zvaluegaap = lc_loc
  3414. it_zlctcond_t = it_zlctcond_t
  3415. it_zlctvalue_t = it_zlctvalue_t ).
  3416. ENDIF.
  3417.  
  3418. WHEN 'IR_INT_FLAG'.
  3419.  
  3420. CLEAR ls_zlctvalue.
  3421. *>>>>>>>>>>> beg ins Duc 20181012
  3422. *** beg ins JB 20181030
  3423. READ TABLE mt_zlct_valuekind_m ASSIGNING <ls_valuekind> WITH KEY ifrs_loc = lc_loc
  3424. segment = iv_segment
  3425. element = ls_map_t-element.
  3426. IF sy-subrc = 0.
  3427. *** end ins JB 2018
  3428. LOOP AT it_zlctcond_t INTO ls_zlctcond.
  3429. READ TABLE it_zlctvalue_t INTO ls_zlctvalue WITH KEY zvaluekind = <ls_valuekind>-zvaluekind zvaluegaap = lc_loc zvalueguid = ls_zlctcond-zvalueguid.
  3430. * READ TABLE it_zlctvalue_t INTO ls_zlctvalue WITH KEY zvaluekind = lc_w004 zvaluegaap = lc_loc.
  3431.  
  3432. IF sy-subrc <> 0.
  3433. READ TABLE it_zlctvalue_t INTO ls_zlctvalue WITH KEY zvaluekind = <ls_valuekind>-zvaluekind zvaluegaap = ''.
  3434. ELSE.
  3435. EXIT.
  3436. ENDIF.
  3437. ENDLOOP.
  3438. ENDIF.
  3439. *<<<<<<<<<<< end ins Duc 20181012
  3440.  
  3441. IF ls_zlctvalue IS NOT INITIAL.
  3442. es_item_ap_data-ir_int_flag = abap_true.
  3443. ENDIF.
  3444.  
  3445. WHEN 'IR_INT'.
  3446.  
  3447. CLEAR ls_zlctvalue.
  3448. *>>>>>>>>>>> beg ins Duc 20181012
  3449. *** beg ins JB 20181030
  3450. READ TABLE mt_zlct_valuekind_m ASSIGNING <ls_valuekind> WITH KEY ifrs_loc = lc_loc
  3451. segment = iv_segment
  3452. element = ls_map_t-element.
  3453. IF sy-subrc = 0.
  3454. *** end ins JB 2018
  3455. LOOP AT it_zlctcond_t INTO ls_zlctcond.
  3456. READ TABLE it_zlctvalue_t INTO ls_zlctvalue WITH KEY zvaluekind = <ls_valuekind>-zvaluekind zvaluegaap = lc_loc zvalueguid = ls_zlctcond-zvalueguid.
  3457. * READ TABLE it_zlctvalue_t INTO ls_zlctvalue WITH KEY zvaluekind = lc_w004 zvaluegaap = lc_loc.
  3458.  
  3459. IF sy-subrc <> 0.
  3460. READ TABLE it_zlctvalue_t INTO ls_zlctvalue WITH KEY zvaluekind = <ls_valuekind>-zvaluekind zvaluegaap = ''.
  3461. ELSE.
  3462. EXIT.
  3463. ENDIF.
  3464. ENDLOOP.
  3465. ENDIF.
  3466. *<<<<<<<<<<< end ins Duc 20181012
  3467.  
  3468. IF ls_zlctvalue IS NOT INITIAL.
  3469. es_item_ap_data-ir_int = ls_zlctvalue-zvalue.
  3470. ENDIF.
  3471.  
  3472. WHEN 'CON_NDPER_W'.
  3473.  
  3474. CLEAR ls_zlctdate.
  3475. READ TABLE it_zlctdate_t INTO ls_zlctdate WITH KEY zobjzuord = is_zlctobject_t-zobjid zdatart = mc_zlctdatart_dpidur.
  3476. es_item_ap_data-con_ndper_w = ls_zlctdate-zdatmm.
  3477.  
  3478. IF es_item_ap_data-con_ndper_w = '000'.
  3479. es_item_ap_data-con_ndper_w = ''.
  3480. ENDIF.
  3481.  
  3482. WHEN 'CON_NDJHR_W'.
  3483.  
  3484. CLEAR ls_zlctdate.
  3485. READ TABLE it_zlctdate_t INTO ls_zlctdate WITH KEY zobjzuord = is_zlctobject_t-zobjid zdatart = mc_zlctdatart_dpidur.
  3486. es_item_ap_data-con_ndjhr_w = ls_zlctdate-zdatdau.
  3487.  
  3488. IF es_item_ap_data-con_ndjhr_w = '00000000'.
  3489. es_item_ap_data-con_ndjhr_w = ''.
  3490. ENDIF.
  3491.  
  3492. WHEN 'AFA_PER'.
  3493.  
  3494. CLEAR ls_zlctdate.
  3495. READ TABLE it_zlctdate_t INTO ls_zlctdate WITH KEY zobjzuord = is_zlctobject_t-zobjid zdatart = mc_zlctdatart_dpldur.
  3496. es_item_ap_data-afa_per = ls_zlctdate-zdatmm.
  3497.  
  3498. IF es_item_ap_data-afa_per = '000'.
  3499. es_item_ap_data-afa_per = ''.
  3500. ENDIF.
  3501.  
  3502. WHEN 'AFA_YEAR'.
  3503.  
  3504. CLEAR ls_zlctdate.
  3505. READ TABLE it_zlctdate_t INTO ls_zlctdate WITH KEY zobjzuord = is_zlctobject_t-zobjid zdatart = mc_zlctdatart_dpldur.
  3506. es_item_ap_data-afa_year = ls_zlctdate-zdatdau.
  3507.  
  3508. IF es_item_ap_data-afa_year = '00000000'.
  3509. es_item_ap_data-afa_year = ''.
  3510. ENDIF.
  3511.  
  3512. WHEN 'CON_RISK_ID'.
  3513.  
  3514. es_item_ap_data-con_risk_id = is_zlctobject_t-zconris1+2(2).
  3515.  
  3516. WHEN 'LEASE_CLASS_LESSOR'.
  3517. IF is_zlctcontract_t-zintlease IS NOT INITIAL. "Defect: 2060117168
  3518. IF is_zlctobject_t-zintleas1 = abap_true.
  3519. es_item_ap_data-lease_class_lessor = lc_fl.
  3520. ELSE.
  3521. es_item_ap_data-lease_class_lessor = lc_ol.
  3522. ENDIF.
  3523. ENDIF.
  3524. ENDCASE.
  3525.  
  3526. ENDCASE.
  3527.  
  3528. ENDLOOP.
  3529.  
  3530. ENDMETHOD.
  3531.  
  3532.  
  3533. * <SIGNATURE>---------------------------------------------------------------------------------------+
  3534. * | Static Public Method ZFICLN_LCT_OUTBD_MAPPER=>MAP_ITEM_AS_CA_IFRS
  3535. * +-------------------------------------------------------------------------------------------------+
  3536. * | [--->] IV_SEGMENT TYPE ZLCT_MAP_SEGMENT
  3537. * | [--->] IV_ZOPTREACER TYPE ZLCTOPTREACER(optional)
  3538. * | [--->] IS_ZLCTOBJECT_T TYPE ZLCTOBJECT_T
  3539. * | [--->] IS_ZLCTOPTION_T TYPE ZLCTOPTION_T
  3540. * | [--->] IS_ZLCTHEADER_T TYPE ZLCTHEADER_T
  3541. * | [--->] IS_ZLCTCONTRACT_T TYPE ZLCTCONTRACT_T
  3542. * | [--->] IS_ZLCTSALE_T TYPE ZLCTSALE_T
  3543. * | [--->] IT_ZLCTSTATUS_T TYPE ZLCTSTATUS_TT
  3544. * | [--->] IT_ZLCTDATE_T TYPE ZLCTDATE_TT
  3545. * | [--->] IT_ZLCTOPTION_T TYPE ZLCTOPTION_TT
  3546. * | [--->] IT_ZLCTPARTREL_T TYPE ZLCTPARTREL_TT
  3547. * | [--->] IT_ZLCTOBJECT_T TYPE ZLCTOBJECT_TT
  3548. * | [--->] IT_ZLCTARO_T TYPE ZLCTARO_TT
  3549. * | [--->] IT_ZLCTCOKSST_T TYPE ZLCTCOKSST_TT
  3550. * | [--->] IT_ZLCTCOND_T TYPE ZLCTCOND_TT
  3551. * | [--->] IT_ZLCTIMAGE_T TYPE ZLCTIMAGE_TT
  3552. * | [--->] IT_ZLCTVALUE_T TYPE ZLCTVALUE_TT
  3553. * | [<---] ES_ITEM_AS_CA_DATA TYPE ZLCTE1CON_AS_CA
  3554. * +--------------------------------------------------------------------------------------</SIGNATURE>
  3555. METHOD map_item_as_ca_ifrs.
  3556. *&H***************************************************************
  3557. *&H SAP-Module : FI-LCT *
  3558. *&H Author : S.Kühnel *
  3559. *&H Company/Department: Sopra Steria GmbH *
  3560. *&H Phone : *
  3561. *&H E-Mail : sascha.kuehnel@soprasteria.com *
  3562. *&H Date of creation: 2018-03-01 *
  3563. *&D***************************************************************
  3564. *&D Description : *
  3565. *&D maps item_as_ca (ifrs) segment *
  3566. *&C***************************************************************
  3567. *&C Change history : *
  3568. *&C Developer | Code/Date | Description *
  3569. *&C -------------------------------------------------------------*
  3570. *&C <Name> | <code>.<Date>| <Description> *
  3571. *&C***************************************************************
  3572. CONSTANTS: lc_ifrs TYPE c LENGTH 4 VALUE 'IFRS'.
  3573.  
  3574. DATA: ls_map_t TYPE zlct_lnl_map_t,
  3575. ls_zlct_opco_type_t TYPE zlct_opco_type_t.
  3576.  
  3577. READ TABLE mt_zlct_opco_type_t INTO ls_zlct_opco_type_t
  3578. WITH KEY ifrs_loc = lc_ifrs
  3579. segment = iv_segment " ins JB 20181026
  3580. optart = is_zlctoption_t-zoptart.
  3581.  
  3582. IF sy-subrc <> 0.
  3583. EXIT.
  3584. ENDIF.
  3585.  
  3586. LOOP AT mt_lnl_map_t INTO ls_map_t WHERE segment = iv_segment.
  3587.  
  3588. CASE ls_map_t-element_type.
  3589.  
  3590. WHEN 0 OR 1 OR 2. "Konstante, Struktur, Tabelle
  3591.  
  3592. CALL METHOD zficln_lct_outbd_mapper=>map_lnl_general
  3593. EXPORTING
  3594. iv_segment = iv_segment
  3595. is_map_t = ls_map_t
  3596. is_zlctobject_t = is_zlctobject_t
  3597. is_zlctoption_t = is_zlctoption_t
  3598. is_zlctheader_t = is_zlctheader_t
  3599. is_zlctcontract_t = is_zlctcontract_t
  3600. is_zlctsale_t = is_zlctsale_t
  3601. it_zlctstatus_t = it_zlctstatus_t
  3602. it_zlctdate_t = it_zlctdate_t
  3603. it_zlctoption_t = it_zlctoption_t
  3604. it_zlctpartrel_t = it_zlctpartrel_t
  3605. it_zlctobject_t = it_zlctobject_t
  3606. it_zlctaro_t = it_zlctaro_t
  3607. it_zlctcoksst_t = it_zlctcoksst_t
  3608. it_zlctcond_t = it_zlctcond_t
  3609. it_zlctimage_t = it_zlctimage_t
  3610. it_zlctvalue_t = it_zlctvalue_t
  3611. IMPORTING
  3612. es_data = es_item_as_ca_data
  3613. EXCEPTIONS
  3614. mapping_error = 1
  3615. OTHERS = 2.
  3616. IF sy-subrc <> 0.
  3617. CONTINUE.
  3618. ENDIF.
  3619.  
  3620. WHEN 3. "freies Coding
  3621.  
  3622. CASE ls_map_t-element.
  3623.  
  3624. WHEN 'ACC_PRINCIPLE'.
  3625. *** beg ins JB 20181016
  3626. es_item_as_ca_data-acc_principle = get_item_ap_data_acc_principle( iv_acc_principle = lc_ifrs
  3627. iv_company = is_zlctheader_t-zlctbukrs ).
  3628.  
  3629. *** end ins JB 20181016
  3630. WHEN 'CA_TYPE'.
  3631.  
  3632. es_item_as_ca_data-ca_type = map_ca_type( is_zlctoption_t-zoptart ).
  3633.  
  3634. WHEN 'RV_AMOUNT_EXPECTED'.
  3635.  
  3636. es_item_as_ca_data-rv_amount_expected = map_rv_amount_expected( is_zlctobject_t = is_zlctobject_t
  3637. it_zlctcond_t = it_zlctcond_t ).
  3638. *** beg ins JB 20181016
  3639. WHEN 'DELETE_SEGMENT'.
  3640. IF iv_zoptreacer IS NOT INITIAL.
  3641. es_item_as_ca_data-delete_segment = abap_true.
  3642. ENDIF.
  3643. *** end ins JB 20181016
  3644. ENDCASE.
  3645.  
  3646. ENDCASE.
  3647.  
  3648. ENDLOOP.
  3649.  
  3650. ENDMETHOD.
  3651.  
  3652.  
  3653. * <SIGNATURE>---------------------------------------------------------------------------------------+
  3654. * | Static Public Method ZFICLN_LCT_OUTBD_MAPPER=>MAP_ITEM_AS_CA_LOC
  3655. * +-------------------------------------------------------------------------------------------------+
  3656. * | [--->] IV_SEGMENT TYPE ZLCT_MAP_SEGMENT
  3657. * | [--->] IV_ZOPTREACER TYPE ZLCTOPTREACER(optional)
  3658. * | [--->] IS_ZLCTOBJECT_T TYPE ZLCTOBJECT_T
  3659. * | [--->] IS_ZLCTOPTION_T TYPE ZLCTOPTION_T
  3660. * | [--->] IS_ZLCTHEADER_T TYPE ZLCTHEADER_T
  3661. * | [--->] IS_ZLCTCONTRACT_T TYPE ZLCTCONTRACT_T
  3662. * | [--->] IS_ZLCTSALE_T TYPE ZLCTSALE_T
  3663. * | [--->] IT_ZLCTSTATUS_T TYPE ZLCTSTATUS_TT
  3664. * | [--->] IT_ZLCTDATE_T TYPE ZLCTDATE_TT
  3665. * | [--->] IT_ZLCTOPTION_T TYPE ZLCTOPTION_TT
  3666. * | [--->] IT_ZLCTPARTREL_T TYPE ZLCTPARTREL_TT
  3667. * | [--->] IT_ZLCTOBJECT_T TYPE ZLCTOBJECT_TT
  3668. * | [--->] IT_ZLCTARO_T TYPE ZLCTARO_TT
  3669. * | [--->] IT_ZLCTCOKSST_T TYPE ZLCTCOKSST_TT
  3670. * | [--->] IT_ZLCTCOND_T TYPE ZLCTCOND_TT
  3671. * | [--->] IT_ZLCTIMAGE_T TYPE ZLCTIMAGE_TT
  3672. * | [--->] IT_ZLCTVALUE_T TYPE ZLCTVALUE_TT
  3673. * | [<---] ES_ITEM_AS_CA_DATA TYPE ZLCTE1CON_AS_CA
  3674. * +--------------------------------------------------------------------------------------</SIGNATURE>
  3675. METHOD map_item_as_ca_loc.
  3676. *&H***************************************************************
  3677. *&H SAP-Module : FI-LCT *
  3678. *&H Author : S.Kühnel *
  3679. *&H Company/Department: Sopra Steria GmbH *
  3680. *&H Phone : *
  3681. *&H E-Mail : sascha.kuehnel@soprasteria.com *
  3682. *&H Date of creation: 2018-03-01 *
  3683. *&D***************************************************************
  3684. *&D Description : *
  3685. *&D maps item_as_ca (loc) segment *
  3686. *&C***************************************************************
  3687. *&C Change history : *
  3688. *&C Developer | Code/Date | Description *
  3689. *&C -------------------------------------------------------------*
  3690. *&C <Name> | <code>.<Date>| <Description> *
  3691. *&C***************************************************************
  3692. CONSTANTS: lc_loc TYPE c LENGTH 4 VALUE 'LOC'.
  3693.  
  3694. DATA: ls_map_t TYPE zlct_lnl_map_t,
  3695. ls_zlct_opco_type_t TYPE zlct_opco_type_t.
  3696.  
  3697. READ TABLE mt_zlct_opco_type_t INTO ls_zlct_opco_type_t
  3698. WITH KEY ifrs_loc = lc_loc
  3699. segment = iv_segment " ins JB 20181026
  3700. optart = is_zlctoption_t-zoptart.
  3701.  
  3702. IF sy-subrc <> 0.
  3703. EXIT.
  3704. ENDIF.
  3705.  
  3706. LOOP AT mt_lnl_map_t INTO ls_map_t WHERE segment = iv_segment.
  3707.  
  3708. CASE ls_map_t-element_type.
  3709.  
  3710. WHEN 0 OR 1 OR 2. "Konstante, Struktur, Tabelle
  3711.  
  3712. CALL METHOD zficln_lct_outbd_mapper=>map_lnl_general
  3713. EXPORTING
  3714. iv_segment = iv_segment
  3715. is_map_t = ls_map_t
  3716. is_zlctobject_t = is_zlctobject_t
  3717. is_zlctoption_t = is_zlctoption_t
  3718. is_zlctheader_t = is_zlctheader_t
  3719. is_zlctcontract_t = is_zlctcontract_t
  3720. is_zlctsale_t = is_zlctsale_t
  3721. it_zlctstatus_t = it_zlctstatus_t
  3722. it_zlctdate_t = it_zlctdate_t
  3723. it_zlctoption_t = it_zlctoption_t
  3724. it_zlctpartrel_t = it_zlctpartrel_t
  3725. it_zlctobject_t = it_zlctobject_t
  3726. it_zlctaro_t = it_zlctaro_t
  3727. it_zlctcoksst_t = it_zlctcoksst_t
  3728. it_zlctcond_t = it_zlctcond_t
  3729. it_zlctimage_t = it_zlctimage_t
  3730. it_zlctvalue_t = it_zlctvalue_t
  3731. IMPORTING
  3732. es_data = es_item_as_ca_data
  3733. EXCEPTIONS
  3734. mapping_error = 1
  3735. OTHERS = 2.
  3736. IF sy-subrc <> 0.
  3737. CONTINUE.
  3738. ENDIF.
  3739.  
  3740. WHEN 3. "freies Coding
  3741.  
  3742. CASE ls_map_t-element.
  3743.  
  3744. WHEN 'ACC_PRINCIPLE'.
  3745. *** beg ins JB 20181016
  3746. es_item_as_ca_data-acc_principle = get_item_ap_data_acc_principle( iv_acc_principle = lc_loc
  3747. iv_company = is_zlctheader_t-zlctbukrs ).
  3748.  
  3749. *** end ins JB 20181016
  3750. WHEN 'CA_TYPE'.
  3751.  
  3752. es_item_as_ca_data-ca_type = map_ca_type( is_zlctoption_t-zoptart ).
  3753.  
  3754. WHEN 'RV_AMOUNT_EXPECTED'.
  3755.  
  3756. es_item_as_ca_data-rv_amount_expected = map_rv_amount_expected( is_zlctobject_t = is_zlctobject_t
  3757. it_zlctcond_t = it_zlctcond_t ).
  3758.  
  3759. *** beg ins JB 20181019
  3760. WHEN 'DELETE_SEGMENT'.
  3761. IF iv_zoptreacer IS NOT INITIAL.
  3762. es_item_as_ca_data-delete_segment = abap_true.
  3763. ENDIF.
  3764. *** end ins JB 20181019
  3765. ENDCASE.
  3766.  
  3767. ENDCASE.
  3768.  
  3769. ENDLOOP.
  3770.  
  3771. ENDMETHOD.
  3772.  
  3773.  
  3774. * <SIGNATURE>---------------------------------------------------------------------------------------+
  3775. * | Static Public Method ZFICLN_LCT_OUTBD_MAPPER=>MAP_ITEM_AS_IFRS
  3776. * +-------------------------------------------------------------------------------------------------+
  3777. * | [--->] IV_SEGMENT TYPE ZLCT_MAP_SEGMENT
  3778. * | [--->] IS_ZLCTOBJECT_T TYPE ZLCTOBJECT_T
  3779. * | [--->] IS_ZLCTHEADER_T TYPE ZLCTHEADER_T
  3780. * | [--->] IS_ZLCTCONTRACT_T TYPE ZLCTCONTRACT_T
  3781. * | [--->] IS_ZLCTSALE_T TYPE ZLCTSALE_T
  3782. * | [--->] IT_ZLCTSTATUS_T TYPE ZLCTSTATUS_TT
  3783. * | [--->] IT_ZLCTDATE_T TYPE ZLCTDATE_TT
  3784. * | [--->] IT_ZLCTOPTION_T TYPE ZLCTOPTION_TT
  3785. * | [--->] IT_ZLCTPARTREL_T TYPE ZLCTPARTREL_TT
  3786. * | [--->] IT_ZLCTOBJECT_T TYPE ZLCTOBJECT_TT
  3787. * | [--->] IT_ZLCTARO_T TYPE ZLCTARO_TT
  3788. * | [--->] IT_ZLCTCOKSST_T TYPE ZLCTCOKSST_TT
  3789. * | [--->] IT_ZLCTCOND_T TYPE ZLCTCOND_TT
  3790. * | [--->] IT_ZLCTIMAGE_T TYPE ZLCTIMAGE_TT
  3791. * | [--->] IT_ZLCTVALUE_T TYPE ZLCTVALUE_TT
  3792. * | [<---] ES_ITEM_AS_DATA TYPE ZLCTE1CON_ITEM_AS
  3793. * +--------------------------------------------------------------------------------------</SIGNATURE>
  3794. METHOD map_item_as_ifrs.
  3795. *&H***************************************************************
  3796. *&H SAP-Module : FI-LCT *
  3797. *&H Author : S.Kühnel *
  3798. *&H Company/Department: Sopra Steria GmbH *
  3799. *&H Phone : *
  3800. *&H E-Mail : sascha.kuehnel@soprasteria.com *
  3801. *&H Date of creation: 2018-03-01 *
  3802. *&D***************************************************************
  3803. *&D Description : *
  3804. *&D maps item_as (ifrs) segment *
  3805. *&C***************************************************************
  3806. *&C Change history : *
  3807. *&C Developer | Code/Date | Description *
  3808. *&C -------------------------------------------------------------*
  3809. *&C <Name> | <code>.<Date>| <Description> *
  3810. *&C***************************************************************
  3811. CONSTANTS: lc_pmdur TYPE c LENGTH 5 VALUE 'PMDUR',
  3812. lc_gzidur TYPE c LENGTH 6 VALUE 'GZIDUR',
  3813. lc_ifrs TYPE c LENGTH 4 VALUE 'IFRS'.
  3814.  
  3815. DATA: ls_map_t TYPE zlct_lnl_map_t,
  3816. ls_zlctdate TYPE zlctdate_t,
  3817. ls_zlctdate_ctdur TYPE zlctdate_t.
  3818.  
  3819. LOOP AT mt_lnl_map_t INTO ls_map_t WHERE segment = iv_segment.
  3820.  
  3821. CASE ls_map_t-element_type.
  3822.  
  3823. WHEN 0 OR 1 OR 2. "Konstante, Struktur, Tabelle
  3824.  
  3825. CALL METHOD zficln_lct_outbd_mapper=>map_lnl_general
  3826. EXPORTING
  3827. iv_segment = iv_segment
  3828. is_map_t = ls_map_t
  3829. is_zlctobject_t = is_zlctobject_t
  3830. is_zlctheader_t = is_zlctheader_t
  3831. is_zlctcontract_t = is_zlctcontract_t
  3832. is_zlctsale_t = is_zlctsale_t
  3833. it_zlctstatus_t = it_zlctstatus_t
  3834. it_zlctdate_t = it_zlctdate_t
  3835. it_zlctoption_t = it_zlctoption_t
  3836. it_zlctpartrel_t = it_zlctpartrel_t
  3837. it_zlctobject_t = it_zlctobject_t
  3838. it_zlctaro_t = it_zlctaro_t
  3839. it_zlctcoksst_t = it_zlctcoksst_t
  3840. it_zlctcond_t = it_zlctcond_t
  3841. it_zlctimage_t = it_zlctimage_t
  3842. it_zlctvalue_t = it_zlctvalue_t
  3843. IMPORTING
  3844. es_data = es_item_as_data
  3845. EXCEPTIONS
  3846. mapping_error = 1
  3847. OTHERS = 2.
  3848. IF sy-subrc <> 0.
  3849. CONTINUE.
  3850. ENDIF.
  3851.  
  3852. WHEN 3. "freies Coding
  3853.  
  3854. CASE ls_map_t-element.
  3855.  
  3856. WHEN 'ACC_PRINCIPLE'.
  3857. *** beg ins JB 20181016
  3858. es_item_as_data-acc_principle = get_item_ap_data_acc_principle( iv_acc_principle = lc_ifrs
  3859. iv_company = is_zlctheader_t-zlctbukrs ).
  3860.  
  3861. *** end ins JB 20181016
  3862. WHEN 'CALC_END'.
  3863.  
  3864. CLEAR ls_zlctdate.
  3865. READ TABLE it_zlctdate_t INTO ls_zlctdate WITH KEY zobjzuord = is_zlctobject_t-zobjid zdatart = lc_pmdur.
  3866.  
  3867. IF sy-subrc = 0.
  3868.  
  3869. es_item_as_data-calc_end = ls_zlctdate-zdatebis.
  3870.  
  3871. ELSE.
  3872.  
  3873. CALL METHOD zficln_lct_outbd_mapper=>get_ctdur_date
  3874. EXPORTING
  3875. is_zlctheader_t = is_zlctheader_t
  3876. it_zlctobject_t = it_zlctobject_t
  3877. it_zlctdate_t = it_zlctdate_t
  3878. IMPORTING
  3879. es_zlctdate_ctdur = ls_zlctdate_ctdur.
  3880.  
  3881. es_item_as_data-calc_end = ls_zlctdate_ctdur-zdatebis.
  3882.  
  3883. CLEAR: ls_zlctdate_ctdur.
  3884.  
  3885. ENDIF.
  3886.  
  3887. IF es_item_as_data-calc_end = '00000000'.
  3888. es_item_as_data-calc_end = ''.
  3889. ENDIF.
  3890.  
  3891. WHEN 'LIFE_END'.
  3892.  
  3893. CLEAR ls_zlctdate.
  3894. READ TABLE it_zlctdate_t INTO ls_zlctdate WITH KEY zobjzuord = is_zlctobject_t-zobjid zdatart = lc_gzidur.
  3895.  
  3896. IF sy-subrc = 0.
  3897.  
  3898. es_item_as_data-life_end = ls_zlctdate-zdatebis.
  3899.  
  3900. ELSE.
  3901.  
  3902. CALL METHOD zficln_lct_outbd_mapper=>get_ctdur_date
  3903. EXPORTING
  3904. is_zlctheader_t = is_zlctheader_t
  3905. it_zlctobject_t = it_zlctobject_t
  3906. it_zlctdate_t = it_zlctdate_t
  3907. IMPORTING
  3908. es_zlctdate_ctdur = ls_zlctdate_ctdur.
  3909.  
  3910. es_item_as_data-life_end = ls_zlctdate_ctdur-zdatebis.
  3911.  
  3912. CLEAR: ls_zlctdate_ctdur.
  3913.  
  3914. ENDIF.
  3915.  
  3916. IF es_item_as_data-life_end = '00000000'.
  3917. es_item_as_data-life_end = ''.
  3918. ENDIF.
  3919.  
  3920. ENDCASE.
  3921.  
  3922. ENDCASE.
  3923.  
  3924. ENDLOOP.
  3925.  
  3926. ENDMETHOD.
  3927.  
  3928.  
  3929. * <SIGNATURE>---------------------------------------------------------------------------------------+
  3930. * | Static Public Method ZFICLN_LCT_OUTBD_MAPPER=>MAP_ITEM_AS_LOC
  3931. * +-------------------------------------------------------------------------------------------------+
  3932. * | [--->] IV_SEGMENT TYPE ZLCT_MAP_SEGMENT
  3933. * | [--->] IS_ZLCTOBJECT_T TYPE ZLCTOBJECT_T
  3934. * | [--->] IS_ZLCTHEADER_T TYPE ZLCTHEADER_T
  3935. * | [--->] IS_ZLCTCONTRACT_T TYPE ZLCTCONTRACT_T
  3936. * | [--->] IS_ZLCTSALE_T TYPE ZLCTSALE_T
  3937. * | [--->] IT_ZLCTSTATUS_T TYPE ZLCTSTATUS_TT
  3938. * | [--->] IT_ZLCTDATE_T TYPE ZLCTDATE_TT
  3939. * | [--->] IT_ZLCTOPTION_T TYPE ZLCTOPTION_TT
  3940. * | [--->] IT_ZLCTPARTREL_T TYPE ZLCTPARTREL_TT
  3941. * | [--->] IT_ZLCTOBJECT_T TYPE ZLCTOBJECT_TT
  3942. * | [--->] IT_ZLCTARO_T TYPE ZLCTARO_TT
  3943. * | [--->] IT_ZLCTCOKSST_T TYPE ZLCTCOKSST_TT
  3944. * | [--->] IT_ZLCTCOND_T TYPE ZLCTCOND_TT
  3945. * | [--->] IT_ZLCTIMAGE_T TYPE ZLCTIMAGE_TT
  3946. * | [--->] IT_ZLCTVALUE_T TYPE ZLCTVALUE_TT
  3947. * | [<---] ES_ITEM_AS_DATA TYPE ZLCTE1CON_ITEM_AS
  3948. * +--------------------------------------------------------------------------------------</SIGNATURE>
  3949. METHOD map_item_as_loc.
  3950. *&H***************************************************************
  3951. *&H SAP-Module : FI-LCT *
  3952. *&H Author : S.Kühnel *
  3953. *&H Company/Department: Sopra Steria GmbH *
  3954. *&H Phone : *
  3955. *&H E-Mail : sascha.kuehnel@soprasteria.com *
  3956. *&H Date of creation: 2018-03-01 *
  3957. *&D***************************************************************
  3958. *&D Description : *
  3959. *&D maps item_as (loc) segment *
  3960. *&C***************************************************************
  3961. *&C Change history : *
  3962. *&C Developer | Code/Date | Description *
  3963. *&C -------------------------------------------------------------*
  3964. *&C <Name> | <code>.<Date>| <Description> *
  3965. *&C***************************************************************
  3966. CONSTANTS: lc_gzhdur TYPE c LENGTH 6 VALUE 'GZHDUR',
  3967. lc_pmdur TYPE c LENGTH 5 VALUE 'PMDUR',
  3968. lc_loc TYPE c LENGTH 4 VALUE 'LOC'.
  3969.  
  3970. DATA: ls_map_t TYPE zlct_lnl_map_t,
  3971. ls_zlctdate TYPE zlctdate_t,
  3972. ls_zlctdate_ctdur TYPE zlctdate_t.
  3973.  
  3974. LOOP AT mt_lnl_map_t INTO ls_map_t WHERE segment = iv_segment.
  3975.  
  3976. CASE ls_map_t-element_type.
  3977.  
  3978. WHEN 0 OR 1 OR 2. "Konstante, Struktur, Tabelle
  3979.  
  3980. CALL METHOD zficln_lct_outbd_mapper=>map_lnl_general
  3981. EXPORTING
  3982. iv_segment = iv_segment
  3983. is_map_t = ls_map_t
  3984. is_zlctobject_t = is_zlctobject_t
  3985. is_zlctheader_t = is_zlctheader_t
  3986. is_zlctcontract_t = is_zlctcontract_t
  3987. is_zlctsale_t = is_zlctsale_t
  3988. it_zlctstatus_t = it_zlctstatus_t
  3989. it_zlctdate_t = it_zlctdate_t
  3990. it_zlctoption_t = it_zlctoption_t
  3991. it_zlctpartrel_t = it_zlctpartrel_t
  3992. it_zlctobject_t = it_zlctobject_t
  3993. it_zlctaro_t = it_zlctaro_t
  3994. it_zlctcoksst_t = it_zlctcoksst_t
  3995. it_zlctcond_t = it_zlctcond_t
  3996. it_zlctimage_t = it_zlctimage_t
  3997. it_zlctvalue_t = it_zlctvalue_t
  3998. IMPORTING
  3999. es_data = es_item_as_data
  4000. EXCEPTIONS
  4001. mapping_error = 1
  4002. OTHERS = 2.
  4003. IF sy-subrc <> 0.
  4004. CONTINUE.
  4005. ENDIF.
  4006.  
  4007. WHEN 3. "freies Coding
  4008.  
  4009. CASE ls_map_t-element.
  4010.  
  4011. WHEN 'ACC_PRINCIPLE'.
  4012. *** beg ins JB 20181016
  4013. es_item_as_data-acc_principle = get_item_ap_data_acc_principle( iv_acc_principle = lc_loc
  4014. iv_company = is_zlctheader_t-zlctbukrs ).
  4015.  
  4016. *** end ins JB 20181016
  4017. WHEN 'CALC_END'.
  4018.  
  4019. CLEAR ls_zlctdate.
  4020. READ TABLE it_zlctdate_t INTO ls_zlctdate WITH KEY zobjzuord = is_zlctobject_t-zobjid zdatart = lc_pmdur.
  4021.  
  4022. IF sy-subrc = 0.
  4023.  
  4024. es_item_as_data-calc_end = ls_zlctdate-zdatebis.
  4025.  
  4026. ELSE.
  4027.  
  4028. CALL METHOD zficln_lct_outbd_mapper=>get_ctdur_date
  4029. EXPORTING
  4030. is_zlctheader_t = is_zlctheader_t
  4031. it_zlctobject_t = it_zlctobject_t
  4032. it_zlctdate_t = it_zlctdate_t
  4033. IMPORTING
  4034. es_zlctdate_ctdur = ls_zlctdate_ctdur.
  4035.  
  4036. es_item_as_data-calc_end = ls_zlctdate_ctdur-zdatebis.
  4037.  
  4038. CLEAR: ls_zlctdate_ctdur.
  4039.  
  4040. ENDIF.
  4041.  
  4042. IF es_item_as_data-calc_end = '00000000'.
  4043. es_item_as_data-calc_end = ''.
  4044. ENDIF.
  4045.  
  4046. WHEN 'LIFE_END'.
  4047.  
  4048. CLEAR ls_zlctdate.
  4049. READ TABLE it_zlctdate_t INTO ls_zlctdate WITH KEY zobjzuord = is_zlctobject_t-zobjid zdatart = lc_gzhdur.
  4050.  
  4051. IF sy-subrc = 0.
  4052.  
  4053. es_item_as_data-life_end = ls_zlctdate-zdatebis.
  4054.  
  4055. ELSE.
  4056.  
  4057. CALL METHOD zficln_lct_outbd_mapper=>get_ctdur_date
  4058. EXPORTING
  4059. is_zlctheader_t = is_zlctheader_t
  4060. it_zlctobject_t = it_zlctobject_t
  4061. it_zlctdate_t = it_zlctdate_t
  4062. IMPORTING
  4063. es_zlctdate_ctdur = ls_zlctdate_ctdur.
  4064.  
  4065. es_item_as_data-life_end = ls_zlctdate_ctdur-zdatebis.
  4066.  
  4067. CLEAR: ls_zlctdate_ctdur.
  4068.  
  4069. ENDIF.
  4070.  
  4071. IF es_item_as_data-life_end = '00000000'.
  4072. es_item_as_data-life_end = ''.
  4073. ENDIF.
  4074.  
  4075. ENDCASE.
  4076.  
  4077. ENDCASE.
  4078.  
  4079. ENDLOOP.
  4080.  
  4081. ENDMETHOD.
  4082.  
  4083.  
  4084. * <SIGNATURE>---------------------------------------------------------------------------------------+
  4085. * | Static Public Method ZFICLN_LCT_OUTBD_MAPPER=>MAP_ITEM_CA_COND_IFRS
  4086. * +-------------------------------------------------------------------------------------------------+
  4087. * | [--->] IV_SEGMENT TYPE ZLCT_MAP_SEGMENT
  4088. * | [--->] IV_PARENT TYPE ZLCT_MAP_SEGMENT(optional)
  4089. * | [--->] IS_ZLCTOBJECT_T TYPE ZLCTOBJECT_T
  4090. * | [--->] IS_ZLCTOPTION_T TYPE ZLCTOPTION_T
  4091. * | [--->] IS_ZLCTCOND_T TYPE ZLCTCOND_T
  4092. * | [--->] IS_ZLCTHEADER_T TYPE ZLCTHEADER_T
  4093. * | [--->] IS_ZLCTCONTRACT_T TYPE ZLCTCONTRACT_T
  4094. * | [--->] IS_ZLCTSALE_T TYPE ZLCTSALE_T
  4095. * | [--->] IT_ZLCTSTATUS_T TYPE ZLCTSTATUS_TT
  4096. * | [--->] IT_ZLCTDATE_T TYPE ZLCTDATE_TT
  4097. * | [--->] IT_ZLCTOPTION_T TYPE ZLCTOPTION_TT
  4098. * | [--->] IT_ZLCTPARTREL_T TYPE ZLCTPARTREL_TT
  4099. * | [--->] IT_ZLCTOBJECT_T TYPE ZLCTOBJECT_TT
  4100. * | [--->] IT_ZLCTARO_T TYPE ZLCTARO_TT
  4101. * | [--->] IT_ZLCTCOKSST_T TYPE ZLCTCOKSST_TT
  4102. * | [--->] IT_ZLCTCOND_T TYPE ZLCTCOND_TT
  4103. * | [--->] IT_ZLCTIMAGE_T TYPE ZLCTIMAGE_TT
  4104. * | [--->] IT_ZLCTVALUE_T TYPE ZLCTVALUE_TT
  4105. * | [<---] ES_ITEM_CA_COND_DATA TYPE ZLCTE1CON_CA_COND
  4106. * +--------------------------------------------------------------------------------------</SIGNATURE>
  4107. METHOD map_item_ca_cond_ifrs.
  4108. *&H***************************************************************
  4109. *&H SAP-Module : FI-LCT *
  4110. *&H Author : S.Kühnel *
  4111. *&H Company/Department: Sopra Steria GmbH *
  4112. *&H Phone : *
  4113. *&H E-Mail : sascha.kuehnel@soprasteria.com *
  4114. *&H Date of creation: 2018-03-01 *
  4115. *&D***************************************************************
  4116. *&D Description : *
  4117. *&D maps item_ca_cond (ifrs) segment *
  4118. *&C***************************************************************
  4119. *&C Change history : *
  4120. *&C Developer | Code/Date | Description *
  4121. *&C -------------------------------------------------------------*
  4122. *&C <Name> | <code>.<Date>| <Description> *
  4123. *&C***************************************************************
  4124. CONSTANTS: lc_ifrs TYPE c LENGTH 4 VALUE 'IFRS'.
  4125.  
  4126. DATA: ls_map_t TYPE zlct_lnl_map_t,
  4127. ls_zlct_opco_type_t TYPE zlct_opco_type_t,
  4128. lv_zahlrhythmus TYPE zlctcondrth.
  4129.  
  4130. CLEAR lv_zahlrhythmus.
  4131. IF is_zlctcond_t-zcondrth = '0100'.
  4132. lv_zahlrhythmus = is_zlctcond_t-zcondrth.
  4133. ELSE.
  4134. lv_zahlrhythmus = '0000'.
  4135. ENDIF.
  4136.  
  4137. CLEAR ls_zlct_opco_type_t.
  4138. READ TABLE mt_zlct_opco_type_t INTO ls_zlct_opco_type_t
  4139. WITH KEY ifrs_loc = lc_ifrs
  4140. segment = iv_parent optart = is_zlctoption_t-zoptart " cha JB 2018
  4141. condart = is_zlctcond_t-zcondart condrth = lv_zahlrhythmus.
  4142.  
  4143. IF sy-subrc <> 0.
  4144. EXIT.
  4145. ENDIF.
  4146.  
  4147. *** beg ins JB 20181029
  4148. IF ls_zlct_opco_type_t-zcondreacer = abap_true.
  4149. IF is_zlctcond_t-zcondreacer = abap_false.
  4150. EXIT.
  4151. ENDIF.
  4152. ELSE.
  4153. EXIT.
  4154. ENDIF.
  4155. *** end ins JB 20181029
  4156.  
  4157.  
  4158. LOOP AT mt_lnl_map_t INTO ls_map_t WHERE segment = iv_segment.
  4159.  
  4160. CASE ls_map_t-element_type.
  4161.  
  4162. WHEN 0 OR 1 OR 2. "Konstante, Struktur, Tabelle
  4163.  
  4164. CALL METHOD zficln_lct_outbd_mapper=>map_lnl_general
  4165. EXPORTING
  4166. iv_segment = iv_segment
  4167. is_map_t = ls_map_t
  4168. is_zlctobject_t = is_zlctobject_t
  4169. is_zlctoption_t = is_zlctoption_t
  4170. is_zlctcond_t = is_zlctcond_t
  4171. is_zlctheader_t = is_zlctheader_t
  4172. is_zlctcontract_t = is_zlctcontract_t
  4173. is_zlctsale_t = is_zlctsale_t
  4174. it_zlctstatus_t = it_zlctstatus_t
  4175. it_zlctdate_t = it_zlctdate_t
  4176. it_zlctoption_t = it_zlctoption_t
  4177. it_zlctpartrel_t = it_zlctpartrel_t
  4178. it_zlctobject_t = it_zlctobject_t
  4179. it_zlctaro_t = it_zlctaro_t
  4180. it_zlctcoksst_t = it_zlctcoksst_t
  4181. it_zlctcond_t = it_zlctcond_t
  4182. it_zlctimage_t = it_zlctimage_t
  4183. it_zlctvalue_t = it_zlctvalue_t
  4184. IMPORTING
  4185. es_data = es_item_ca_cond_data
  4186. EXCEPTIONS
  4187. mapping_error = 1
  4188. OTHERS = 2.
  4189. IF sy-subrc <> 0.
  4190. CONTINUE.
  4191. ENDIF.
  4192.  
  4193. WHEN 3. "freies Coding
  4194.  
  4195. CASE ls_map_t-element.
  4196.  
  4197. WHEN 'ACC_PRINCIPLE'.
  4198. *** beg ins JB 20181016
  4199. es_item_ca_cond_data-acc_principle = get_item_ap_data_acc_principle( iv_acc_principle = lc_ifrs
  4200. iv_company = is_zlctheader_t-zlctbukrs ).
  4201. *** end ins JB 20181016
  4202. WHEN 'COND_TYPE'.
  4203.  
  4204. es_item_ca_cond_data-cond_type = ls_zlct_opco_type_t-condart_lnl.
  4205.  
  4206. WHEN 'PAYM_RHYTHM'.
  4207.  
  4208. es_item_ca_cond_data-paym_rhythm = map_zcondrth( is_zlctcond_t-zcondrth ).
  4209.  
  4210. WHEN 'PAYM_FORM'.
  4211.  
  4212. es_item_ca_cond_data-paym_form = map_zcondzalw( is_zlctcond_t-zcondzalw ).
  4213.  
  4214. WHEN 'CA_TYPE'.
  4215.  
  4216. es_item_ca_cond_data-ca_type = map_ca_type( is_zlctoption_t-zoptart ).
  4217.  
  4218. *>>>>>>>>>>> beg ins Duc 20180921
  4219. WHEN 'VALID_FROM'.
  4220. es_item_ca_cond_data-valid_from = get_valid_from( is_zlctcond_t ).
  4221. *** beg ins JB 20181030
  4222. IF ls_map_t-type_d = abap_true AND es_item_ca_cond_data-valid_from = '00000000'.
  4223. es_item_ca_cond_data-valid_from = ''.
  4224. ENDIF.
  4225. *** end ins JB 20181030
  4226. WHEN 'VALID_TO'.
  4227. es_item_ca_cond_data-valid_to = get_valid_to( is_zlctcond_t ).
  4228. *** beg ins JB 20181030
  4229. IF ls_map_t-type_d = abap_true AND es_item_ca_cond_data-valid_to = '00000000'.
  4230. es_item_ca_cond_data-valid_to = ''.
  4231. ENDIF.
  4232. *** end ins JB 20181030
  4233. *>>>>>>>>>>> end ins Duc 20180921
  4234.  
  4235. ENDCASE.
  4236.  
  4237. ENDCASE.
  4238.  
  4239. ENDLOOP.
  4240.  
  4241. ENDMETHOD.
  4242.  
  4243.  
  4244. * <SIGNATURE>---------------------------------------------------------------------------------------+
  4245. * | Static Public Method ZFICLN_LCT_OUTBD_MAPPER=>MAP_ITEM_CA_COND_LOC
  4246. * +-------------------------------------------------------------------------------------------------+
  4247. * | [--->] IV_SEGMENT TYPE ZLCT_MAP_SEGMENT
  4248. * | [--->] IV_PARENT TYPE ZLCT_MAP_SEGMENT
  4249. * | [--->] IS_ZLCTOBJECT_T TYPE ZLCTOBJECT_T
  4250. * | [--->] IS_ZLCTOPTION_T TYPE ZLCTOPTION_T
  4251. * | [--->] IS_ZLCTCOND_T TYPE ZLCTCOND_T
  4252. * | [--->] IS_ZLCTHEADER_T TYPE ZLCTHEADER_T
  4253. * | [--->] IS_ZLCTCONTRACT_T TYPE ZLCTCONTRACT_T
  4254. * | [--->] IS_ZLCTSALE_T TYPE ZLCTSALE_T
  4255. * | [--->] IT_ZLCTSTATUS_T TYPE ZLCTSTATUS_TT
  4256. * | [--->] IT_ZLCTDATE_T TYPE ZLCTDATE_TT
  4257. * | [--->] IT_ZLCTOPTION_T TYPE ZLCTOPTION_TT
  4258. * | [--->] IT_ZLCTPARTREL_T TYPE ZLCTPARTREL_TT
  4259. * | [--->] IT_ZLCTOBJECT_T TYPE ZLCTOBJECT_TT
  4260. * | [--->] IT_ZLCTARO_T TYPE ZLCTARO_TT
  4261. * | [--->] IT_ZLCTCOKSST_T TYPE ZLCTCOKSST_TT
  4262. * | [--->] IT_ZLCTCOND_T TYPE ZLCTCOND_TT
  4263. * | [--->] IT_ZLCTIMAGE_T TYPE ZLCTIMAGE_TT
  4264. * | [--->] IT_ZLCTVALUE_T TYPE ZLCTVALUE_TT
  4265. * | [<---] ES_ITEM_CA_COND_DATA TYPE ZLCTE1CON_CA_COND
  4266. * +--------------------------------------------------------------------------------------</SIGNATURE>
  4267. METHOD map_item_ca_cond_loc.
  4268. *&H***************************************************************
  4269. *&H SAP-Module : FI-LCT *
  4270. *&H Author : S.Kühnel *
  4271. *&H Company/Department: Sopra Steria GmbH *
  4272. *&H Phone : *
  4273. *&H E-Mail : sascha.kuehnel@soprasteria.com *
  4274. *&H Date of creation: 2018-03-01 *
  4275. *&D***************************************************************
  4276. *&D Description : *
  4277. *&D maps item_ca_cond (loc) segment *
  4278. *&C***************************************************************
  4279. *&C Change history : *
  4280. *&C Developer | Code/Date | Description *
  4281. *&C -------------------------------------------------------------*
  4282. *&C <Name> | <code>.<Date>| <Description> *
  4283. *&C***************************************************************
  4284. CONSTANTS: lc_loc TYPE c LENGTH 4 VALUE 'LOC'.
  4285.  
  4286. DATA: ls_map_t TYPE zlct_lnl_map_t,
  4287. ls_zlct_opco_type_t TYPE zlct_opco_type_t,
  4288. lv_zahlrhythmus TYPE zlctcondrth.
  4289.  
  4290. CLEAR lv_zahlrhythmus.
  4291. IF is_zlctcond_t-zcondrth = '0100'.
  4292. lv_zahlrhythmus = is_zlctcond_t-zcondrth.
  4293. ELSE.
  4294. lv_zahlrhythmus = '0000'.
  4295. ENDIF.
  4296.  
  4297. CLEAR ls_zlct_opco_type_t.
  4298. READ TABLE mt_zlct_opco_type_t INTO ls_zlct_opco_type_t
  4299. WITH KEY ifrs_loc = lc_loc
  4300. segment = iv_parent optart = is_zlctoption_t-zoptart " cha JB 2018
  4301. condart = is_zlctcond_t-zcondart condrth = lv_zahlrhythmus.
  4302.  
  4303. IF sy-subrc <> 0.
  4304. EXIT.
  4305. ENDIF.
  4306.  
  4307.  
  4308. *** beg ins JB 20181029
  4309. IF ls_zlct_opco_type_t-zcondreacer = abap_true.
  4310. IF is_zlctcond_t-zcondreacer = abap_false.
  4311. EXIT.
  4312. ENDIF.
  4313. ELSE.
  4314. EXIT.
  4315. ENDIF.
  4316. *** end ins JB 20181029
  4317.  
  4318. LOOP AT mt_lnl_map_t INTO ls_map_t WHERE segment = iv_segment.
  4319.  
  4320. CASE ls_map_t-element_type.
  4321.  
  4322. WHEN 0 OR 1 OR 2. "Konstante, Struktur, Tabelle
  4323.  
  4324. CALL METHOD zficln_lct_outbd_mapper=>map_lnl_general
  4325. EXPORTING
  4326. iv_segment = iv_segment
  4327. is_map_t = ls_map_t
  4328. is_zlctobject_t = is_zlctobject_t
  4329. is_zlctoption_t = is_zlctoption_t
  4330. is_zlctcond_t = is_zlctcond_t
  4331. is_zlctheader_t = is_zlctheader_t
  4332. is_zlctcontract_t = is_zlctcontract_t
  4333. is_zlctsale_t = is_zlctsale_t
  4334. it_zlctstatus_t = it_zlctstatus_t
  4335. it_zlctdate_t = it_zlctdate_t
  4336. it_zlctoption_t = it_zlctoption_t
  4337. it_zlctpartrel_t = it_zlctpartrel_t
  4338. it_zlctobject_t = it_zlctobject_t
  4339. it_zlctaro_t = it_zlctaro_t
  4340. it_zlctcoksst_t = it_zlctcoksst_t
  4341. it_zlctcond_t = it_zlctcond_t
  4342. it_zlctimage_t = it_zlctimage_t
  4343. it_zlctvalue_t = it_zlctvalue_t
  4344. IMPORTING
  4345. es_data = es_item_ca_cond_data
  4346. EXCEPTIONS
  4347. mapping_error = 1
  4348. OTHERS = 2.
  4349. IF sy-subrc <> 0.
  4350. CONTINUE.
  4351. ENDIF.
  4352.  
  4353. WHEN 3. "freies Coding
  4354.  
  4355. CASE ls_map_t-element.
  4356.  
  4357. WHEN 'ACC_PRINCIPLE'.
  4358. *** beg ins JB 20181016
  4359. es_item_ca_cond_data-acc_principle = get_item_ap_data_acc_principle( iv_acc_principle = lc_loc
  4360. iv_company = is_zlctheader_t-zlctbukrs ).
  4361. *** end ins JB 20181016
  4362. WHEN 'COND_TYPE'.
  4363.  
  4364. es_item_ca_cond_data-cond_type = ls_zlct_opco_type_t-condart_lnl.
  4365.  
  4366. WHEN 'PAYM_RHYTHM'.
  4367.  
  4368. es_item_ca_cond_data-paym_rhythm = map_zcondrth( is_zlctcond_t-zcondrth ).
  4369.  
  4370. WHEN 'PAYM_FORM'.
  4371.  
  4372. es_item_ca_cond_data-paym_form = map_zcondzalw( is_zlctcond_t-zcondzalw ).
  4373.  
  4374. WHEN 'CA_TYPE'.
  4375.  
  4376. es_item_ca_cond_data-ca_type = map_ca_type( is_zlctoption_t-zoptart ).
  4377. *>>>>>>>>>>> beg ins Duc 20180921
  4378. WHEN 'VALID_FROM'.
  4379. es_item_ca_cond_data-valid_from = get_valid_from( is_zlctcond_t ).
  4380. *** beg ins JB 20181030
  4381. IF ls_map_t-type_d = abap_true AND es_item_ca_cond_data-valid_from = '00000000'.
  4382. es_item_ca_cond_data-valid_from = ''.
  4383. ENDIF.
  4384. *** end ins JB 20181030
  4385. WHEN 'VALID_TO'.
  4386. es_item_ca_cond_data-valid_to = get_valid_to( is_zlctcond_t ).
  4387. *** beg ins JB 20181030
  4388. IF ls_map_t-type_d = abap_true AND es_item_ca_cond_data-valid_to = '00000000'.
  4389. es_item_ca_cond_data-valid_to = ''.
  4390. ENDIF.
  4391. *** end ins JB 20181030
  4392. *>>>>>>>>>>> end ins Duc 20180921
  4393.  
  4394. ENDCASE.
  4395.  
  4396. ENDCASE.
  4397.  
  4398. ENDLOOP.
  4399.  
  4400. ENDMETHOD.
  4401.  
  4402.  
  4403. * <SIGNATURE>---------------------------------------------------------------------------------------+
  4404. * | Static Public Method ZFICLN_LCT_OUTBD_MAPPER=>MAP_ITEM_CFACT
  4405. * +-------------------------------------------------------------------------------------------------+
  4406. * | [--->] IV_SEGMENT TYPE ZLCT_MAP_SEGMENT
  4407. * | [--->] IS_ZLCTOBJECT_T TYPE ZLCTOBJECT_T
  4408. * | [--->] IS_ZLCTCOND_T TYPE ZLCTCOND_T
  4409. * | [--->] IS_ZLCTHEADER_T TYPE ZLCTHEADER_T
  4410. * | [--->] IS_ZLCTCONTRACT_T TYPE ZLCTCONTRACT_T
  4411. * | [--->] IS_ZLCTSALE_T TYPE ZLCTSALE_T
  4412. * | [--->] IT_ZLCTSTATUS_T TYPE ZLCTSTATUS_TT
  4413. * | [--->] IT_ZLCTDATE_T TYPE ZLCTDATE_TT
  4414. * | [--->] IT_ZLCTOPTION_T TYPE ZLCTOPTION_TT
  4415. * | [--->] IT_ZLCTPARTREL_T TYPE ZLCTPARTREL_TT
  4416. * | [--->] IT_ZLCTOBJECT_T TYPE ZLCTOBJECT_TT
  4417. * | [--->] IT_ZLCTARO_T TYPE ZLCTARO_TT
  4418. * | [--->] IT_ZLCTCOKSST_T TYPE ZLCTCOKSST_TT
  4419. * | [--->] IT_ZLCTCOND_T TYPE ZLCTCOND_TT
  4420. * | [--->] IT_ZLCTIMAGE_T TYPE ZLCTIMAGE_TT
  4421. * | [--->] IT_ZLCTVALUE_T TYPE ZLCTVALUE_TT
  4422. * | [<---] ES_ITEM_CFACT_DATA TYPE ZLCTE1CON_ITEM_CFACT
  4423. * +--------------------------------------------------------------------------------------</SIGNATURE>
  4424. METHOD map_item_cfact.
  4425. *&H***************************************************************
  4426. *&H SAP-Module : FI-LCT *
  4427. *&H Author : S.Kühnel *
  4428. *&H Company/Department: Sopra Steria GmbH *
  4429. *&H Phone : *
  4430. *&H E-Mail : sascha.kuehnel@soprasteria.com *
  4431. *&H Date of creation: 2018-03-01 *
  4432. *&D***************************************************************
  4433. *&D Description : *
  4434. *&D maps item_cfact segment *
  4435. *&C***************************************************************
  4436. *&C Change history : *
  4437. *&C Developer | Code/Date | Description *
  4438. *&C -------------------------------------------------------------*
  4439. *&C <Name> | <code>.<Date>| <Description> *
  4440. *&C***************************************************************
  4441. DATA: ls_map_t TYPE zlct_lnl_map_t,
  4442. ls_zlctmap_help_t TYPE zlctmap_help_t,
  4443. ls_zlct_condkindt_t TYPE zlct_condkindt_t,
  4444. lv_segment TYPE zlct_map_segment,
  4445. lv_zahlrhythmus TYPE zlctcondrth.
  4446.  
  4447. IF is_zlctcond_t-zcondrth = '0100'.
  4448. lv_zahlrhythmus = is_zlctcond_t-zcondrth.
  4449. ELSE.
  4450. lv_zahlrhythmus = '0000'.
  4451. ENDIF.
  4452.  
  4453. lv_segment = iv_segment+6.
  4454. READ TABLE mt_zlctmap_help_t INTO ls_zlctmap_help_t WITH KEY zsegment = lv_segment zcondart_source = is_zlctcond_t-zcondart zcondrth = lv_zahlrhythmus.
  4455. IF sy-subrc <> 0.
  4456. EXIT.
  4457. ENDIF.
  4458.  
  4459. LOOP AT mt_lnl_map_t INTO ls_map_t WHERE segment = iv_segment.
  4460.  
  4461. CASE ls_map_t-element_type.
  4462.  
  4463. WHEN 0 OR 1 OR 2. "Konstante, Struktur, Tabelle
  4464.  
  4465. CALL METHOD zficln_lct_outbd_mapper=>map_lnl_general
  4466. EXPORTING
  4467. iv_segment = iv_segment
  4468. is_map_t = ls_map_t
  4469. is_zlctobject_t = is_zlctobject_t
  4470. is_zlctcond_t = is_zlctcond_t
  4471. is_zlctheader_t = is_zlctheader_t
  4472. is_zlctcontract_t = is_zlctcontract_t
  4473. is_zlctsale_t = is_zlctsale_t
  4474. it_zlctstatus_t = it_zlctstatus_t
  4475. it_zlctdate_t = it_zlctdate_t
  4476. it_zlctoption_t = it_zlctoption_t
  4477. it_zlctpartrel_t = it_zlctpartrel_t
  4478. it_zlctobject_t = it_zlctobject_t
  4479. it_zlctaro_t = it_zlctaro_t
  4480. it_zlctcoksst_t = it_zlctcoksst_t
  4481. it_zlctcond_t = it_zlctcond_t
  4482. it_zlctimage_t = it_zlctimage_t
  4483. it_zlctvalue_t = it_zlctvalue_t
  4484. IMPORTING
  4485. es_data = es_item_cfact_data
  4486. EXCEPTIONS
  4487. mapping_error = 1
  4488. OTHERS = 2.
  4489. IF sy-subrc <> 0.
  4490. CONTINUE.
  4491. ENDIF.
  4492.  
  4493. WHEN 3. "freies Coding
  4494.  
  4495. CASE ls_map_t-element.
  4496. WHEN 'CFACT_TYPE'.
  4497.  
  4498. es_item_cfact_data-cfact_type = ls_zlctmap_help_t-z_condart_target.
  4499.  
  4500. WHEN 'CFACT_COMD'.
  4501.  
  4502. CLEAR: ls_zlct_condkindt_t.
  4503.  
  4504. READ TABLE mt_zlctcondkind_t INTO ls_zlct_condkindt_t WITH KEY zcondart = ls_zlctmap_help_t-zcondart_source.
  4505. es_item_cfact_data-cfact_comd = ls_zlct_condkindt_t-zdescription.
  4506.  
  4507. ENDCASE.
  4508.  
  4509. ENDCASE.
  4510.  
  4511. ENDLOOP.
  4512.  
  4513. ENDMETHOD.
  4514.  
  4515.  
  4516. * <SIGNATURE>---------------------------------------------------------------------------------------+
  4517. * | Static Public Method ZFICLN_LCT_OUTBD_MAPPER=>MAP_ITEM_CLASSM_IFRS
  4518. * +-------------------------------------------------------------------------------------------------+
  4519. * | [--->] IV_SEGMENT TYPE ZLCT_MAP_SEGMENT
  4520. * | [--->] IS_ZLCTOBJECT_T TYPE ZLCTOBJECT_T
  4521. * | [--->] IS_ZLCTHEADER_T TYPE ZLCTHEADER_T
  4522. * | [--->] IS_ZLCTCONTRACT_T TYPE ZLCTCONTRACT_T
  4523. * | [--->] IS_ZLCTSALE_T TYPE ZLCTSALE_T
  4524. * | [--->] IT_ZLCTSTATUS_T TYPE ZLCTSTATUS_TT
  4525. * | [--->] IT_ZLCTDATE_T TYPE ZLCTDATE_TT
  4526. * | [--->] IT_ZLCTOPTION_T TYPE ZLCTOPTION_TT
  4527. * | [--->] IT_ZLCTPARTREL_T TYPE ZLCTPARTREL_TT
  4528. * | [--->] IT_ZLCTOBJECT_T TYPE ZLCTOBJECT_TT
  4529. * | [--->] IT_ZLCTARO_T TYPE ZLCTARO_TT
  4530. * | [--->] IT_ZLCTCOKSST_T TYPE ZLCTCOKSST_TT
  4531. * | [--->] IT_ZLCTCOND_T TYPE ZLCTCOND_TT
  4532. * | [--->] IT_ZLCTIMAGE_T TYPE ZLCTIMAGE_TT
  4533. * | [--->] IT_ZLCTVALUE_T TYPE ZLCTVALUE_TT
  4534. * | [<---] ES_ITEM_CLASSM_DATA TYPE ZLCTE1CON_ITEM_CLASSM
  4535. * +--------------------------------------------------------------------------------------</SIGNATURE>
  4536. METHOD map_item_classm_ifrs.
  4537. *&H***************************************************************
  4538. *&H SAP-Module : FI-LCT *
  4539. *&H Author : S.Kühnel *
  4540. *&H Company/Department: Sopra Steria GmbH *
  4541. *&H Phone : *
  4542. *&H E-Mail : sascha.kuehnel@soprasteria.com *
  4543. *&H Date of creation: 2018-03-01 *
  4544. *&D***************************************************************
  4545. *&D Description : *
  4546. *&D maps item_classm (ifrs) segment *
  4547. *&C***************************************************************
  4548. *&C Change history : *
  4549. *&C Developer | Code/Date | Description *
  4550. *&C -------------------------------------------------------------*
  4551. *&C <Name> | <code>.<Date>| <Description> *
  4552. *&C***************************************************************
  4553. CONSTANTS lc_ifrs TYPE c LENGTH 4 VALUE 'IFRS'.
  4554.  
  4555. DATA: ls_map_t TYPE zlct_lnl_map_t.
  4556.  
  4557. LOOP AT mt_lnl_map_t INTO ls_map_t WHERE segment = iv_segment.
  4558.  
  4559. CASE ls_map_t-element_type.
  4560.  
  4561. WHEN 0 OR 1 OR 2. "Konstante, Struktur, Tabelle
  4562.  
  4563. CALL METHOD zficln_lct_outbd_mapper=>map_lnl_general
  4564. EXPORTING
  4565. iv_segment = iv_segment
  4566. is_map_t = ls_map_t
  4567. is_zlctobject_t = is_zlctobject_t
  4568. is_zlctheader_t = is_zlctheader_t
  4569. is_zlctcontract_t = is_zlctcontract_t
  4570. is_zlctsale_t = is_zlctsale_t
  4571. it_zlctstatus_t = it_zlctstatus_t
  4572. it_zlctdate_t = it_zlctdate_t
  4573. it_zlctoption_t = it_zlctoption_t
  4574. it_zlctpartrel_t = it_zlctpartrel_t
  4575. it_zlctobject_t = it_zlctobject_t
  4576. it_zlctaro_t = it_zlctaro_t
  4577. it_zlctcoksst_t = it_zlctcoksst_t
  4578. it_zlctcond_t = it_zlctcond_t
  4579. it_zlctimage_t = it_zlctimage_t
  4580. it_zlctvalue_t = it_zlctvalue_t
  4581. IMPORTING
  4582. es_data = es_item_classm_data
  4583. EXCEPTIONS
  4584. mapping_error = 1
  4585. OTHERS = 2.
  4586. IF sy-subrc <> 0.
  4587. CONTINUE.
  4588. ENDIF.
  4589.  
  4590. WHEN 3. "freies Coding
  4591.  
  4592. CASE ls_map_t-element.
  4593.  
  4594. WHEN 'ACC_PRINCIPLE'.
  4595. *** beg ins JB 20181016
  4596. es_item_classm_data-acc_principle = get_item_ap_data_acc_principle( iv_acc_principle = lc_ifrs
  4597. iv_company = is_zlctheader_t-zlctbukrs ).
  4598. *** end ins JB 20181016
  4599. WHEN 'CON_ERGKL_MAN'.
  4600.  
  4601. es_item_classm_data-con_ergkl_man = is_zlctobject_t-zobjclaifrs.
  4602.  
  4603. ENDCASE.
  4604.  
  4605. ENDCASE.
  4606.  
  4607. ENDLOOP.
  4608.  
  4609. ENDMETHOD.
  4610.  
  4611.  
  4612. * <SIGNATURE>---------------------------------------------------------------------------------------+
  4613. * | Static Public Method ZFICLN_LCT_OUTBD_MAPPER=>MAP_ITEM_CLASSM_LOC
  4614. * +-------------------------------------------------------------------------------------------------+
  4615. * | [--->] IV_SEGMENT TYPE ZLCT_MAP_SEGMENT
  4616. * | [--->] IS_ZLCTOBJECT_T TYPE ZLCTOBJECT_T
  4617. * | [--->] IS_ZLCTHEADER_T TYPE ZLCTHEADER_T
  4618. * | [--->] IS_ZLCTCONTRACT_T TYPE ZLCTCONTRACT_T
  4619. * | [--->] IS_ZLCTSALE_T TYPE ZLCTSALE_T
  4620. * | [--->] IT_ZLCTSTATUS_T TYPE ZLCTSTATUS_TT
  4621. * | [--->] IT_ZLCTDATE_T TYPE ZLCTDATE_TT
  4622. * | [--->] IT_ZLCTOPTION_T TYPE ZLCTOPTION_TT
  4623. * | [--->] IT_ZLCTPARTREL_T TYPE ZLCTPARTREL_TT
  4624. * | [--->] IT_ZLCTOBJECT_T TYPE ZLCTOBJECT_TT
  4625. * | [--->] IT_ZLCTARO_T TYPE ZLCTARO_TT
  4626. * | [--->] IT_ZLCTCOKSST_T TYPE ZLCTCOKSST_TT
  4627. * | [--->] IT_ZLCTCOND_T TYPE ZLCTCOND_TT
  4628. * | [--->] IT_ZLCTIMAGE_T TYPE ZLCTIMAGE_TT
  4629. * | [--->] IT_ZLCTVALUE_T TYPE ZLCTVALUE_TT
  4630. * | [<---] ES_ITEM_CLASSM_DATA TYPE ZLCTE1CON_ITEM_CLASSM
  4631. * +--------------------------------------------------------------------------------------</SIGNATURE>
  4632. METHOD map_item_classm_loc.
  4633. *&H***************************************************************
  4634. *&H SAP-Module : FI-LCT *
  4635. *&H Author : S.Kühnel *
  4636. *&H Company/Department: Sopra Steria GmbH *
  4637. *&H Phone : *
  4638. *&H E-Mail : sascha.kuehnel@soprasteria.com *
  4639. *&H Date of creation: 2018-03-01 *
  4640. *&D***************************************************************
  4641. *&D Description : *
  4642. *&D maps item_classm (loc) segment *
  4643. *&C***************************************************************
  4644. *&C Change history : *
  4645. *&C Developer | Code/Date | Description *
  4646. *&C -------------------------------------------------------------*
  4647. *&C <Name> | <code>.<Date>| <Description> *
  4648. *&C***************************************************************
  4649. CONSTANTS: lc_loc TYPE c LENGTH 4 VALUE 'LOC'.
  4650.  
  4651. DATA: ls_map_t TYPE zlct_lnl_map_t.
  4652.  
  4653. LOOP AT mt_lnl_map_t INTO ls_map_t WHERE segment = iv_segment.
  4654.  
  4655. CASE ls_map_t-element_type.
  4656.  
  4657. WHEN 0 OR 1 OR 2. "Konstante, Struktur, Tabelle
  4658.  
  4659. CALL METHOD zficln_lct_outbd_mapper=>map_lnl_general
  4660. EXPORTING
  4661. iv_segment = iv_segment
  4662. is_map_t = ls_map_t
  4663. is_zlctobject_t = is_zlctobject_t
  4664. is_zlctheader_t = is_zlctheader_t
  4665. is_zlctcontract_t = is_zlctcontract_t
  4666. is_zlctsale_t = is_zlctsale_t
  4667. it_zlctstatus_t = it_zlctstatus_t
  4668. it_zlctdate_t = it_zlctdate_t
  4669. it_zlctoption_t = it_zlctoption_t
  4670. it_zlctpartrel_t = it_zlctpartrel_t
  4671. it_zlctobject_t = it_zlctobject_t
  4672. it_zlctaro_t = it_zlctaro_t
  4673. it_zlctcoksst_t = it_zlctcoksst_t
  4674. it_zlctcond_t = it_zlctcond_t
  4675. it_zlctimage_t = it_zlctimage_t
  4676. it_zlctvalue_t = it_zlctvalue_t
  4677. IMPORTING
  4678. es_data = es_item_classm_data
  4679. EXCEPTIONS
  4680. mapping_error = 1
  4681. OTHERS = 2.
  4682. IF sy-subrc <> 0.
  4683. CONTINUE.
  4684. ENDIF.
  4685.  
  4686. WHEN 3. "freies Coding
  4687.  
  4688. CASE ls_map_t-element.
  4689.  
  4690. WHEN 'ACC_PRINCIPLE'.
  4691. *** beg ins JB 20181016
  4692. es_item_classm_data-acc_principle = get_item_ap_data_acc_principle( iv_acc_principle = lc_loc
  4693. iv_company = is_zlctheader_t-zlctbukrs ).
  4694. *** end ins JB 20181016
  4695. WHEN 'CON_ERGKL_MAN'.
  4696.  
  4697. es_item_classm_data-con_ergkl_man = is_zlctobject_t-zobjclasloc.
  4698.  
  4699. ENDCASE.
  4700.  
  4701. ENDCASE.
  4702.  
  4703. ENDLOOP.
  4704.  
  4705. ENDMETHOD.
  4706.  
  4707.  
  4708. * <SIGNATURE>---------------------------------------------------------------------------------------+
  4709. * | Static Public Method ZFICLN_LCT_OUTBD_MAPPER=>MAP_ITEM_COND
  4710. * +-------------------------------------------------------------------------------------------------+
  4711. * | [--->] IV_SEGMENT TYPE ZLCT_MAP_SEGMENT
  4712. * | [--->] IS_ZLCTOBJECT_T TYPE ZLCTOBJECT_T
  4713. * | [--->] IS_ZLCTCOND_T TYPE ZLCTCOND_T
  4714. * | [--->] IS_ZLCTHEADER_T TYPE ZLCTHEADER_T
  4715. * | [--->] IS_ZLCTCONTRACT_T TYPE ZLCTCONTRACT_T
  4716. * | [--->] IS_ZLCTSALE_T TYPE ZLCTSALE_T
  4717. * | [--->] IT_ZLCTSTATUS_T TYPE ZLCTSTATUS_TT
  4718. * | [--->] IT_ZLCTDATE_T TYPE ZLCTDATE_TT
  4719. * | [--->] IT_ZLCTOPTION_T TYPE ZLCTOPTION_TT
  4720. * | [--->] IT_ZLCTPARTREL_T TYPE ZLCTPARTREL_TT
  4721. * | [--->] IT_ZLCTOBJECT_T TYPE ZLCTOBJECT_TT
  4722. * | [--->] IT_ZLCTARO_T TYPE ZLCTARO_TT
  4723. * | [--->] IT_ZLCTCOKSST_T TYPE ZLCTCOKSST_TT
  4724. * | [--->] IT_ZLCTCOND_T TYPE ZLCTCOND_TT
  4725. * | [--->] IT_ZLCTIMAGE_T TYPE ZLCTIMAGE_TT
  4726. * | [--->] IT_ZLCTVALUE_T TYPE ZLCTVALUE_TT
  4727. * | [<---] ES_ITEM_COND_DATA TYPE ZLCTE1CON_ITEM_COND
  4728. * +--------------------------------------------------------------------------------------</SIGNATURE>
  4729. METHOD map_item_cond.
  4730. *&H***************************************************************
  4731. *&H SAP-Module : FI-LCT *
  4732. *&H Author : S.Kühnel *
  4733. *&H Company/Department: Sopra Steria GmbH *
  4734. *&H Phone : *
  4735. *&H E-Mail : sascha.kuehnel@soprasteria.com *
  4736. *&H Date of creation: 2018-03-01 *
  4737. *&D***************************************************************
  4738. *&D Description : *
  4739. *&D maps item_cond segment *
  4740. *&C***************************************************************
  4741. *&C Change history : *
  4742. *&C Developer | Code/Date | Description *
  4743. *&C -------------------------------------------------------------*
  4744. *&C <Name> | <code>.<Date>| <Description> *
  4745. *&C***************************************************************
  4746. DATA: ls_map_t TYPE zlct_lnl_map_t,
  4747. lv_zahlrhythmus TYPE zlctcondrth,
  4748. ls_zlctmap_help_t TYPE zlctmap_help_t,
  4749. lv_segment TYPE zlct_map_segment.
  4750.  
  4751. IF is_zlctcond_t-zcondrth <> '0100'.
  4752. lv_zahlrhythmus = '0000'.
  4753. ELSE.
  4754. lv_zahlrhythmus = is_zlctcond_t-zcondrth.
  4755. ENDIF.
  4756.  
  4757. lv_segment = iv_segment+6.
  4758. READ TABLE mt_zlctmap_help_t INTO ls_zlctmap_help_t WITH KEY zsegment = lv_segment zcondart_source = is_zlctcond_t-zcondart zcondrth = lv_zahlrhythmus.
  4759. IF sy-subrc <> 0.
  4760. EXIT.
  4761. ENDIF.
  4762.  
  4763. LOOP AT mt_lnl_map_t INTO ls_map_t WHERE segment = iv_segment.
  4764.  
  4765. CASE ls_map_t-element_type.
  4766.  
  4767. WHEN 0 OR 1 OR 2. "Konstante, Struktur, Tabelle
  4768.  
  4769. CALL METHOD zficln_lct_outbd_mapper=>map_lnl_general
  4770. EXPORTING
  4771. iv_segment = iv_segment
  4772. is_map_t = ls_map_t
  4773. is_zlctobject_t = is_zlctobject_t
  4774. is_zlctcond_t = is_zlctcond_t
  4775. is_zlctheader_t = is_zlctheader_t
  4776. is_zlctcontract_t = is_zlctcontract_t
  4777. is_zlctsale_t = is_zlctsale_t
  4778. it_zlctstatus_t = it_zlctstatus_t
  4779. it_zlctdate_t = it_zlctdate_t
  4780. it_zlctoption_t = it_zlctoption_t
  4781. it_zlctpartrel_t = it_zlctpartrel_t
  4782. it_zlctobject_t = it_zlctobject_t
  4783. it_zlctaro_t = it_zlctaro_t
  4784. it_zlctcoksst_t = it_zlctcoksst_t
  4785. it_zlctcond_t = it_zlctcond_t
  4786. it_zlctimage_t = it_zlctimage_t
  4787. it_zlctvalue_t = it_zlctvalue_t
  4788. IMPORTING
  4789. es_data = es_item_cond_data
  4790. EXCEPTIONS
  4791. mapping_error = 1
  4792. OTHERS = 2.
  4793. IF sy-subrc <> 0.
  4794. CONTINUE.
  4795. ENDIF.
  4796.  
  4797. WHEN 3. "freies Coding
  4798.  
  4799. CASE ls_map_t-element.
  4800. WHEN 'COND_TYPE'.
  4801.  
  4802. es_item_cond_data-cond_type = ls_zlctmap_help_t-z_condart_target.
  4803.  
  4804. WHEN 'PAYM_RHYTHM'.
  4805.  
  4806. es_item_cond_data-paym_rhythm = map_zcondrth( is_zlctcond_t-zcondrth ).
  4807.  
  4808. WHEN 'PAYM_FORM'.
  4809.  
  4810. es_item_cond_data-paym_form = map_zcondzalw( is_zlctcond_t-zcondzalw ).
  4811. *>>>>>>>>>>> beg ins Duc 20180921
  4812. WHEN 'VALID_FROM'.
  4813. es_item_cond_data-valid_from = get_valid_from( is_zlctcond_t ).
  4814. *** beg ins JB 20181030
  4815. IF ls_map_t-type_d = abap_true AND es_item_cond_data-valid_from = '00000000'.
  4816. es_item_cond_data-valid_from = ''.
  4817. ENDIF.
  4818. *** end ins JB 20181030
  4819. WHEN 'VALID_TO'.
  4820. es_item_cond_data-valid_to = get_valid_to( is_zlctcond_t ).
  4821. *** beg ins JB 20181030
  4822. IF ls_map_t-type_d = abap_true AND es_item_cond_data-valid_to = '00000000'.
  4823. es_item_cond_data-valid_to = ''.
  4824. ENDIF.
  4825. *** end ins JB 20181030
  4826. *>>>>>>>>>>> end ins Duc 20180921
  4827.  
  4828. ENDCASE.
  4829. ENDCASE.
  4830. ENDLOOP.
  4831. ENDMETHOD.
  4832.  
  4833.  
  4834. * <SIGNATURE>---------------------------------------------------------------------------------------+
  4835. * | Static Public Method ZFICLN_LCT_OUTBD_MAPPER=>MAP_ITEM_CONDV
  4836. * +-------------------------------------------------------------------------------------------------+
  4837. * | [--->] IV_SEGMENT TYPE ZLCT_MAP_SEGMENT
  4838. * | [--->] IS_ZLCTOBJECT_T TYPE ZLCTOBJECT_T
  4839. * | [--->] IS_ZLCTCOND_T TYPE ZLCTCOND_T
  4840. * | [--->] IS_ZLCTHEADER_T TYPE ZLCTHEADER_T
  4841. * | [--->] IS_ZLCTCONTRACT_T TYPE ZLCTCONTRACT_T
  4842. * | [--->] IS_ZLCTSALE_T TYPE ZLCTSALE_T
  4843. * | [--->] IT_ZLCTSTATUS_T TYPE ZLCTSTATUS_TT
  4844. * | [--->] IT_ZLCTDATE_T TYPE ZLCTDATE_TT
  4845. * | [--->] IT_ZLCTOPTION_T TYPE ZLCTOPTION_TT
  4846. * | [--->] IT_ZLCTPARTREL_T TYPE ZLCTPARTREL_TT
  4847. * | [--->] IT_ZLCTOBJECT_T TYPE ZLCTOBJECT_TT
  4848. * | [--->] IT_ZLCTARO_T TYPE ZLCTARO_TT
  4849. * | [--->] IT_ZLCTCOKSST_T TYPE ZLCTCOKSST_TT
  4850. * | [--->] IT_ZLCTCOND_T TYPE ZLCTCOND_TT
  4851. * | [--->] IT_ZLCTIMAGE_T TYPE ZLCTIMAGE_TT
  4852. * | [--->] IT_ZLCTVALUE_T TYPE ZLCTVALUE_TT
  4853. * | [<---] ES_ITEM_CONDV_DATA TYPE ZLCTE1CON_ITEM_CONDV
  4854. * +--------------------------------------------------------------------------------------</SIGNATURE>
  4855. METHOD map_item_condv.
  4856. *&H***************************************************************
  4857. *&H SAP-Module : FI-LCT *
  4858. *&H Author : S.Kühnel *
  4859. *&H Company/Department: Sopra Steria GmbH *
  4860. *&H Phone : *
  4861. *&H E-Mail : sascha.kuehnel@soprasteria.com *
  4862. *&H Date of creation: 2018-03-01 *
  4863. *&D***************************************************************
  4864. *&D Description : *
  4865. *&D maps item_condv segment *
  4866. *&C***************************************************************
  4867. *&C Change history : *
  4868. *&C Developer | Code/Date | Description *
  4869. *&C -------------------------------------------------------------*
  4870. *&C <Name> | <code>.<Date>| <Description> *
  4871. *&C***************************************************************
  4872. DATA: ls_map_t TYPE zlct_lnl_map_t,
  4873. lv_zahlrhythmus TYPE zlctcondrth,
  4874. ls_zlctmap_help_t TYPE zlctmap_help_t,
  4875. lv_segment TYPE zlct_map_segment.
  4876.  
  4877. IF is_zlctcond_t-zcondrth <> '0100'.
  4878. lv_zahlrhythmus = '0000'.
  4879. ELSE.
  4880. lv_zahlrhythmus = is_zlctcond_t-zcondrth.
  4881. ENDIF.
  4882.  
  4883. lv_segment = iv_segment+6.
  4884. READ TABLE mt_zlctmap_help_t INTO ls_zlctmap_help_t WITH KEY zsegment = lv_segment zcondart_source = is_zlctcond_t-zcondart zcondrth = lv_zahlrhythmus.
  4885. IF sy-subrc <> 0.
  4886. EXIT.
  4887. ENDIF.
  4888.  
  4889. LOOP AT mt_lnl_map_t INTO ls_map_t WHERE segment = iv_segment.
  4890.  
  4891. CASE ls_map_t-element_type.
  4892.  
  4893. WHEN 0 OR 1 OR 2. "Konstante, Struktur, Tabelle
  4894.  
  4895. CALL METHOD zficln_lct_outbd_mapper=>map_lnl_general
  4896. EXPORTING
  4897. iv_segment = iv_segment
  4898. is_map_t = ls_map_t
  4899. is_zlctobject_t = is_zlctobject_t
  4900. is_zlctcond_t = is_zlctcond_t
  4901. is_zlctheader_t = is_zlctheader_t
  4902. is_zlctcontract_t = is_zlctcontract_t
  4903. is_zlctsale_t = is_zlctsale_t
  4904. it_zlctstatus_t = it_zlctstatus_t
  4905. it_zlctdate_t = it_zlctdate_t
  4906. it_zlctoption_t = it_zlctoption_t
  4907. it_zlctpartrel_t = it_zlctpartrel_t
  4908. it_zlctobject_t = it_zlctobject_t
  4909. it_zlctaro_t = it_zlctaro_t
  4910. it_zlctcoksst_t = it_zlctcoksst_t
  4911. it_zlctcond_t = it_zlctcond_t
  4912. it_zlctimage_t = it_zlctimage_t
  4913. it_zlctvalue_t = it_zlctvalue_t
  4914. IMPORTING
  4915. es_data = es_item_condv_data
  4916. EXCEPTIONS
  4917. mapping_error = 1
  4918. OTHERS = 2.
  4919. IF sy-subrc <> 0.
  4920. CONTINUE.
  4921. ENDIF.
  4922.  
  4923. WHEN 3. "freies Coding
  4924.  
  4925. CASE ls_map_t-element.
  4926. WHEN 'COND_TYPE'.
  4927.  
  4928. es_item_condv_data-cond_type = ls_zlctmap_help_t-z_condart_target.
  4929.  
  4930. ENDCASE.
  4931.  
  4932. ENDCASE.
  4933.  
  4934. ENDLOOP.
  4935.  
  4936. ENDMETHOD.
  4937.  
  4938.  
  4939. * <SIGNATURE>---------------------------------------------------------------------------------------+
  4940. * | Static Public Method ZFICLN_LCT_OUTBD_MAPPER=>MAP_ITEM_EO
  4941. * +-------------------------------------------------------------------------------------------------+
  4942. * | [--->] IV_SEGMENT TYPE ZLCT_MAP_SEGMENT
  4943. * | [--->] IS_ZLCTOBJECT_T TYPE ZLCTOBJECT_T
  4944. * | [--->] IS_ZLCTOPTION_T TYPE ZLCTOPTION_T
  4945. * | [--->] IS_ZLCTHEADER_T TYPE ZLCTHEADER_T
  4946. * | [--->] IS_ZLCTCONTRACT_T TYPE ZLCTCONTRACT_T
  4947. * | [--->] IS_ZLCTSALE_T TYPE ZLCTSALE_T
  4948. * | [--->] IT_ZLCTSTATUS_T TYPE ZLCTSTATUS_TT
  4949. * | [--->] IT_ZLCTDATE_T TYPE ZLCTDATE_TT
  4950. * | [--->] IT_ZLCTOPTION_T TYPE ZLCTOPTION_TT
  4951. * | [--->] IT_ZLCTPARTREL_T TYPE ZLCTPARTREL_TT
  4952. * | [--->] IT_ZLCTOBJECT_T TYPE ZLCTOBJECT_TT
  4953. * | [--->] IT_ZLCTARO_T TYPE ZLCTARO_TT
  4954. * | [--->] IT_ZLCTCOKSST_T TYPE ZLCTCOKSST_TT
  4955. * | [--->] IT_ZLCTCOND_T TYPE ZLCTCOND_TT
  4956. * | [--->] IT_ZLCTIMAGE_T TYPE ZLCTIMAGE_TT
  4957. * | [--->] IT_ZLCTVALUE_T TYPE ZLCTVALUE_TT
  4958. * | [<---] ES_ITEM_EO_DATA TYPE ZLCTE1CON_ITEM_EO
  4959. * +--------------------------------------------------------------------------------------</SIGNATURE>
  4960. METHOD map_item_eo.
  4961. *&H***************************************************************
  4962. *&H SAP-Module : FI-LCT *
  4963. *&H Author : S.Kühnel *
  4964. *&H Company/Department: Sopra Steria GmbH *
  4965. *&H Phone : *
  4966. *&H E-Mail : sascha.kuehnel@soprasteria.com *
  4967. *&H Date of creation: 2018-03-01 *
  4968. *&D***************************************************************
  4969. *&D Description : *
  4970. *&D maps item_eo segment *
  4971. *&C***************************************************************
  4972. *&C Change history : *
  4973. *&C Developer | Code/Date | Description *
  4974. *&C -------------------------------------------------------------*
  4975. *&C <Name> | <code>.<Date>| <Description> *
  4976. *&C***************************************************************
  4977.  
  4978.  
  4979. DATA: lv_counter TYPE syindex.
  4980.  
  4981. DATA: ls_map_t TYPE zlct_lnl_map_t,
  4982. ls_zlct_opco_type_t TYPE zlct_opco_type_t,
  4983. lv_zahlrhythmus TYPE zlctcondrth,
  4984. ls_zlctcond TYPE zlctcond_t,
  4985. ls_zlctcond_one TYPE zlctcond_t,
  4986. lv_item_count TYPE i.
  4987.  
  4988. FIELD-SYMBOLS: <ls_zlctcond> TYPE zlctcond_t.
  4989.  
  4990. CLEAR ls_zlct_opco_type_t.
  4991. READ TABLE mt_zlct_opco_type_t INTO ls_zlct_opco_type_t
  4992. WITH KEY segment = iv_segment optart = is_zlctoption_t-zoptart.
  4993.  
  4994. IF sy-subrc <> 0.
  4995. EXIT.
  4996. ENDIF.
  4997.  
  4998. LOOP AT it_zlctcond_t INTO ls_zlctcond WHERE zoptguid = is_zlctoption_t-zoptguid.
  4999. CLEAR lv_zahlrhythmus.
  5000. *** Es wird nur die Einmalzahlung übergeben
  5001. IF ls_zlctcond-zcondrth = mc_zcondrth_0100.
  5002. lv_zahlrhythmus = ls_zlctcond-zcondrth.
  5003. ELSE.
  5004. *** Bei allen anderen Zahlrhytmen wird 0000 übergeben.
  5005. lv_zahlrhythmus = '0000'.
  5006. ENDIF.
  5007.  
  5008. CLEAR ls_zlct_opco_type_t.
  5009. READ TABLE mt_zlct_opco_type_t INTO ls_zlct_opco_type_t
  5010. WITH KEY segment = iv_segment optart = is_zlctoption_t-zoptart
  5011. condart = ls_zlctcond-zcondart condrth = lv_zahlrhythmus.
  5012.  
  5013. IF sy-subrc = 0.
  5014. CLEAR ls_zlctcond_one.
  5015. ls_zlctcond_one = ls_zlctcond.
  5016. ADD 1 TO lv_item_count.
  5017. ENDIF.
  5018.  
  5019. ENDLOOP. "it_zlctcond_t
  5020.  
  5021. LOOP AT mt_lnl_map_t INTO ls_map_t WHERE segment = iv_segment.
  5022.  
  5023. CASE ls_map_t-element_type.
  5024.  
  5025. WHEN 0 OR 1 OR 2. "Konstante, Struktur, Tabelle
  5026.  
  5027. CALL METHOD zficln_lct_outbd_mapper=>map_lnl_general
  5028. EXPORTING
  5029. iv_segment = iv_segment
  5030. is_map_t = ls_map_t
  5031. is_zlctobject_t = is_zlctobject_t
  5032. is_zlctoption_t = is_zlctoption_t
  5033. is_zlctheader_t = is_zlctheader_t
  5034. is_zlctcontract_t = is_zlctcontract_t
  5035. is_zlctsale_t = is_zlctsale_t
  5036. it_zlctstatus_t = it_zlctstatus_t
  5037. it_zlctdate_t = it_zlctdate_t
  5038. it_zlctoption_t = it_zlctoption_t
  5039. it_zlctpartrel_t = it_zlctpartrel_t
  5040. it_zlctobject_t = it_zlctobject_t
  5041. it_zlctaro_t = it_zlctaro_t
  5042. it_zlctcoksst_t = it_zlctcoksst_t
  5043. it_zlctcond_t = it_zlctcond_t
  5044. it_zlctimage_t = it_zlctimage_t
  5045. it_zlctvalue_t = it_zlctvalue_t
  5046. IMPORTING
  5047. es_data = es_item_eo_data
  5048. EXCEPTIONS
  5049. mapping_error = 1
  5050. OTHERS = 2.
  5051. IF sy-subrc <> 0.
  5052. CONTINUE.
  5053. ENDIF.
  5054.  
  5055. WHEN 3. "freies Coding
  5056.  
  5057. CASE ls_map_t-element.
  5058.  
  5059. WHEN 'CA_EO_PENALTY_DATE'.
  5060.  
  5061. IF lv_item_count = 1.
  5062. es_item_eo_data-ca_eo_penalty_date = ls_zlctcond_one-zcondexdat.
  5063. ENDIF.
  5064.  
  5065. IF es_item_eo_data-ca_eo_penalty_date = '00000000'.
  5066. es_item_eo_data-ca_eo_penalty_date = ''.
  5067. ENDIF.
  5068.  
  5069. WHEN 'CA_EO_PENALTY_FLAG'.
  5070.  
  5071. CLEAR lv_counter.
  5072. LOOP AT it_zlctcond_t ASSIGNING <ls_zlctcond> WHERE zoptguid = is_zlctoption_t-zoptguid
  5073. AND zobjzuord = is_zlctobject_t-zobjid
  5074. AND zcondart = mc_condart_pm005
  5075. AND zcondrth = mc_zcondrth_0100.
  5076. ADD 1 TO lv_counter.
  5077. ENDLOOP.
  5078. *** Es darf nur einen Datensatz geben
  5079. IF lv_counter EQ 1.
  5080. es_item_eo_data-ca_eo_penalty_flag = abap_true.
  5081. ENDIF.
  5082.  
  5083.  
  5084. WHEN 'CA_EO_PENALTY'.
  5085.  
  5086. CLEAR lv_counter.
  5087. LOOP AT it_zlctcond_t ASSIGNING <ls_zlctcond> WHERE zoptguid = is_zlctoption_t-zoptguid
  5088. AND zobjzuord = is_zlctobject_t-zobjid
  5089. AND zcondart = mc_condart_pm005.
  5090. ADD 1 TO lv_counter.
  5091. ENDLOOP.
  5092. *** Es darf nur einen Datensatz geben
  5093. IF lv_counter EQ 1
  5094. *** Er sollte zur Option gehören
  5095. AND <ls_zlctcond>-zoptguid = is_zlctoption_t-zoptguid
  5096. *** Prüfung der Einmalzahlung
  5097. AND <ls_zlctcond>-zcondrth EQ mc_zcondrth_0100.
  5098. WRITE: <ls_zlctcond>-zcondwert TO es_item_eo_data-ca_eo_penalty CURRENCY <ls_zlctcond>-zcondcurr.
  5099. ENDIF.
  5100.  
  5101. *** beg ins JB 180911
  5102. WHEN 'CA_EO_EX_OPT_FLAG'.
  5103. IF is_zlctoption_t-zoptreacer = '3'.
  5104. es_item_eo_data-ca_eo_ex_opt_flag = abap_true.
  5105. ENDIF.
  5106. *** end ins JB 180911
  5107. ENDCASE.
  5108.  
  5109. ENDCASE.
  5110.  
  5111. ENDLOOP.
  5112.  
  5113. ENDMETHOD.
  5114.  
  5115.  
  5116. * <SIGNATURE>---------------------------------------------------------------------------------------+
  5117. * | Instance Public Method ZFICLN_LCT_OUTBD_MAPPER->MAP_ITEM_EO_COND
  5118. * +-------------------------------------------------------------------------------------------------+
  5119. * | [--->] IV_SEGMENT TYPE ZLCT_MAP_SEGMENT
  5120. * | [--->] IV_PARENT TYPE ZLCT_MAP_SEGMENT
  5121. * | [--->] IS_ZLCTOBJECT_T TYPE ZLCTOBJECT_T
  5122. * | [--->] IS_ZLCTOPTION_T TYPE ZLCTOPTION_T
  5123. * | [--->] IS_ZLCTCOND_T TYPE ZLCTCOND_T
  5124. * | [--->] IS_ZLCTHEADER_T TYPE ZLCTHEADER_T
  5125. * | [--->] IS_ZLCTCONTRACT_T TYPE ZLCTCONTRACT_T
  5126. * | [--->] IS_ZLCTSALE_T TYPE ZLCTSALE_T
  5127. * | [--->] IT_ZLCTSTATUS_T TYPE ZLCTSTATUS_TT
  5128. * | [--->] IT_ZLCTDATE_T TYPE ZLCTDATE_TT
  5129. * | [--->] IT_ZLCTOPTION_T TYPE ZLCTOPTION_TT
  5130. * | [--->] IT_ZLCTPARTREL_T TYPE ZLCTPARTREL_TT
  5131. * | [--->] IT_ZLCTOBJECT_T TYPE ZLCTOBJECT_TT
  5132. * | [--->] IT_ZLCTARO_T TYPE ZLCTARO_TT
  5133. * | [--->] IT_ZLCTCOKSST_T TYPE ZLCTCOKSST_TT
  5134. * | [--->] IT_ZLCTCOND_T TYPE ZLCTCOND_TT
  5135. * | [--->] IT_ZLCTIMAGE_T TYPE ZLCTIMAGE_TT
  5136. * | [--->] IT_ZLCTVALUE_T TYPE ZLCTVALUE_TT
  5137. * | [<---] ES_ITEM_EO_COND_DATA TYPE ZLCTE1CON_EO_COND
  5138. * +--------------------------------------------------------------------------------------</SIGNATURE>
  5139. METHOD map_item_eo_cond.
  5140. *&H***************************************************************
  5141. *&H SAP-Module : FI-LCT *
  5142. *&H Author : S.Kühnel *
  5143. *&H Company/Department: Sopra Steria GmbH *
  5144. *&H Phone : *
  5145. *&H E-Mail : sascha.kuehnel@soprasteria.com *
  5146. *&H Date of creation: 2018-03-01 *
  5147. *&D***************************************************************
  5148. *&D Description : *
  5149. *&D maps item_eo_cond segment *
  5150. *&C***************************************************************
  5151. *&C Change history : *
  5152. *&C Developer | Code/Date | Description *
  5153. *&C -------------------------------------------------------------*
  5154. *&C <Name> | <code>.<Date>| <Description> *
  5155. *&C***************************************************************
  5156. DATA: ls_map_t TYPE zlct_lnl_map_t,
  5157. ls_zlct_opco_type_t TYPE zlct_opco_type_t,
  5158. lv_zahlrhythmus TYPE zlctcondrth.
  5159.  
  5160. *** Nur die Einmalzahlung wird übernommen
  5161. IF is_zlctcond_t-zcondrth = mc_zcondrth_0100.
  5162. lv_zahlrhythmus = is_zlctcond_t-zcondrth.
  5163. ELSE.
  5164. *** bei allen anderen Zahlungsrhythmen wird 0000 übergeben.
  5165. lv_zahlrhythmus = '0000'.
  5166. ENDIF.
  5167.  
  5168. READ TABLE mt_zlct_opco_type_t INTO ls_zlct_opco_type_t
  5169. WITH KEY segment = iv_parent optart = is_zlctoption_t-zoptart
  5170. condart = is_zlctcond_t-zcondart condrth = lv_zahlrhythmus.
  5171.  
  5172. IF sy-subrc <> 0.
  5173. EXIT.
  5174. ENDIF.
  5175.  
  5176. LOOP AT mt_lnl_map_t INTO ls_map_t WHERE segment = iv_segment.
  5177.  
  5178. CASE ls_map_t-element_type.
  5179.  
  5180. WHEN 0 OR 1 OR 2. "Konstante, Struktur, Tabelle
  5181.  
  5182. CALL METHOD zficln_lct_outbd_mapper=>map_lnl_general
  5183. EXPORTING
  5184. iv_segment = iv_segment
  5185. is_map_t = ls_map_t
  5186. is_zlctobject_t = is_zlctobject_t
  5187. is_zlctoption_t = is_zlctoption_t
  5188. is_zlctcond_t = is_zlctcond_t
  5189. is_zlctheader_t = is_zlctheader_t
  5190. is_zlctcontract_t = is_zlctcontract_t
  5191. is_zlctsale_t = is_zlctsale_t
  5192. it_zlctstatus_t = it_zlctstatus_t
  5193. it_zlctdate_t = it_zlctdate_t
  5194. it_zlctoption_t = it_zlctoption_t
  5195. it_zlctpartrel_t = it_zlctpartrel_t
  5196. it_zlctobject_t = it_zlctobject_t
  5197. it_zlctaro_t = it_zlctaro_t
  5198. it_zlctcoksst_t = it_zlctcoksst_t
  5199. it_zlctcond_t = it_zlctcond_t
  5200. it_zlctimage_t = it_zlctimage_t
  5201. it_zlctvalue_t = it_zlctvalue_t
  5202. IMPORTING
  5203. es_data = es_item_eo_cond_data
  5204. EXCEPTIONS
  5205. mapping_error = 1
  5206. OTHERS = 2.
  5207. IF sy-subrc <> 0.
  5208. CONTINUE.
  5209. ENDIF.
  5210.  
  5211. WHEN 3. "freies Coding
  5212.  
  5213. CASE ls_map_t-element.
  5214.  
  5215. WHEN 'COND_TYPE'.
  5216.  
  5217. es_item_eo_cond_data-cond_type = ls_zlct_opco_type_t-condart_lnl.
  5218.  
  5219. WHEN 'PAYM_RHYTHM'.
  5220.  
  5221. es_item_eo_cond_data-paym_rhythm = map_zcondrth( is_zlctcond_t-zcondrth ).
  5222.  
  5223. WHEN 'PAYM_FORM'.
  5224.  
  5225. es_item_eo_cond_data-paym_form = map_zcondzalw( is_zlctcond_t-zcondzalw ).
  5226.  
  5227. WHEN 'COND_VALUE'.
  5228.  
  5229. es_item_eo_cond_data-cond_value = map_item_eq_cond_value( is_zlctobject_t = is_zlctobject_t
  5230. is_zlctoption_t = is_zlctoption_t
  5231. is_zlctcond_t = is_zlctcond_t ).
  5232.  
  5233. *>>>>>>>>>>> beg ins Duc 20180921
  5234. WHEN 'VALID_FROM'.
  5235. es_item_eo_cond_data-valid_from = get_valid_from( is_zlctcond_t ).
  5236. *** beg ins JB 20181030
  5237. IF ls_map_t-type_d = abap_true AND es_item_eo_cond_data-valid_from = '00000000'.
  5238. es_item_eo_cond_data-valid_from = ''.
  5239. ENDIF.
  5240. *** end ins JB 20181030
  5241. WHEN 'VALID_TO'.
  5242. es_item_eo_cond_data-valid_to = get_valid_to( is_zlctcond_t ).
  5243. *** beg ins JB 20181030
  5244. IF ls_map_t-type_d = abap_true AND es_item_eo_cond_data-valid_to = '00000000'.
  5245. es_item_eo_cond_data-valid_to = ''.
  5246. ENDIF.
  5247. *** end ins JB 20181030
  5248. *>>>>>>>>>>> end ins Duc 20180921
  5249.  
  5250.  
  5251. ENDCASE.
  5252.  
  5253. ENDCASE.
  5254.  
  5255. ENDLOOP.
  5256.  
  5257. ENDMETHOD.
  5258.  
  5259.  
  5260. * <SIGNATURE>---------------------------------------------------------------------------------------+
  5261. * | Instance Private Method ZFICLN_LCT_OUTBD_MAPPER->MAP_ITEM_EQ_COND_VALUE
  5262. * +-------------------------------------------------------------------------------------------------+
  5263. * | [--->] IS_ZLCTOBJECT_T TYPE ZLCTOBJECT_T
  5264. * | [--->] IS_ZLCTOPTION_T TYPE ZLCTOPTION_T
  5265. * | [--->] IS_ZLCTCOND_T TYPE ZLCTCOND_T
  5266. * | [<-()] EV_COND_VALUE TYPE ZLCTE1CON_EO_COND-COND_VALUE
  5267. * +--------------------------------------------------------------------------------------</SIGNATURE>
  5268. METHOD map_item_eq_cond_value.
  5269.  
  5270.  
  5271. DATA: lv_conter TYPE syindex.
  5272.  
  5273. *** Übernehmen des Wertes wie ursprünglich konzepiert
  5274. ev_cond_value = is_zlctcond_t-zcondwert.
  5275.  
  5276.  
  5277. *** Prüfen ob es sich um eine Vertragsstrafe handelt.
  5278. *** Dies ist der Fall, wenn der Betrag nicht nur auf der Kopfebene übergeben wird.
  5279. * IF is_zlctcond_t-zcondart = mc_condart_pm005.
  5280. * LOOP AT mt_zlctcond_t ASSIGNING FIELD-SYMBOL(<ls_zlctcond_t>) WHERE zlctintreno = is_zlctcond_t-zlctintreno.
  5281. * ADD 1 TO lv_conter.
  5282. * ENDLOOP.
  5283. * IF lv_conter GT 1.
  5284. * CLEAR ev_cond_value.
  5285. * ENDIF.
  5286. *** Prüfen ob es sich um eine Einmalzahlung handelt. Diese soll auf Kopfebene übergeben werden.
  5287. *** Andere Zahlungen werden als Zahlungsplan mit Betrag übergeben.
  5288. * IF is_zlctcond_t-zcondrth EQ mc_zcondrth_0100.
  5289. * CLEAR ev_cond_value.
  5290. * ENDIF.
  5291. * ENDIF.
  5292.  
  5293.  
  5294.  
  5295. ENDMETHOD.
  5296.  
  5297.  
  5298. * <SIGNATURE>---------------------------------------------------------------------------------------+
  5299. * | Static Public Method ZFICLN_LCT_OUTBD_MAPPER=>MAP_ITEM_FLOAT
  5300. * +-------------------------------------------------------------------------------------------------+
  5301. * | [--->] IV_SEGMENT TYPE ZLCT_MAP_SEGMENT
  5302. * | [--->] IS_ZLCTOBJECT_T TYPE ZLCTOBJECT_T
  5303. * | [--->] IS_ZLCTCOND_T TYPE ZLCTCOND_T
  5304. * | [--->] IS_ZLCTHEADER_T TYPE ZLCTHEADER_T
  5305. * | [--->] IS_ZLCTCONTRACT_T TYPE ZLCTCONTRACT_T
  5306. * | [--->] IS_ZLCTSALE_T TYPE ZLCTSALE_T
  5307. * | [--->] IT_ZLCTSTATUS_T TYPE ZLCTSTATUS_TT
  5308. * | [--->] IT_ZLCTDATE_T TYPE ZLCTDATE_TT
  5309. * | [--->] IT_ZLCTOPTION_T TYPE ZLCTOPTION_TT
  5310. * | [--->] IT_ZLCTPARTREL_T TYPE ZLCTPARTREL_TT
  5311. * | [--->] IT_ZLCTOBJECT_T TYPE ZLCTOBJECT_TT
  5312. * | [--->] IT_ZLCTARO_T TYPE ZLCTARO_TT
  5313. * | [--->] IT_ZLCTCOKSST_T TYPE ZLCTCOKSST_TT
  5314. * | [--->] IT_ZLCTCOND_T TYPE ZLCTCOND_TT
  5315. * | [--->] IT_ZLCTIMAGE_T TYPE ZLCTIMAGE_TT
  5316. * | [--->] IT_ZLCTVALUE_T TYPE ZLCTVALUE_TT
  5317. * | [<---] ES_ITEM_FLOAT_DATA TYPE ZLCTE1CON_ITEM_FLOAT
  5318. * +--------------------------------------------------------------------------------------</SIGNATURE>
  5319. METHOD map_item_float.
  5320. *&H***************************************************************
  5321. *&H SAP-Module : FI-LCT *
  5322. *&H Author : S.Kühnel *
  5323. *&H Company/Department: Sopra Steria GmbH *
  5324. *&H Phone : *
  5325. *&H E-Mail : sascha.kuehnel@soprasteria.com *
  5326. *&H Date of creation: 2018-03-01 *
  5327. *&D***************************************************************
  5328. *&D Description : *
  5329. *&D maps item_float segment *
  5330. *&C***************************************************************
  5331. *&C Change history : *
  5332. *&C Developer | Code/Date | Description *
  5333. *&C -------------------------------------------------------------*
  5334. *&C <Name> | <code>.<Date>| <Description> *
  5335. *&C***************************************************************
  5336. DATA: ls_map_t TYPE zlct_lnl_map_t,
  5337. lv_zahlrhythmus TYPE zlctcondrth,
  5338. ls_zlctmap_help_t TYPE zlctmap_help_t,
  5339. lv_segment TYPE zlct_map_segment.
  5340.  
  5341. IF is_zlctcond_t-zcondrth <> '0100'.
  5342. lv_zahlrhythmus = '0000'.
  5343. ELSE.
  5344. lv_zahlrhythmus = is_zlctcond_t-zcondrth.
  5345. ENDIF.
  5346.  
  5347. lv_segment = iv_segment+6.
  5348. READ TABLE mt_zlctmap_help_t INTO ls_zlctmap_help_t WITH KEY zsegment = lv_segment zcondart_source = is_zlctcond_t-zcondart zcondrth = lv_zahlrhythmus.
  5349. IF sy-subrc <> 0.
  5350. EXIT.
  5351. ENDIF.
  5352.  
  5353. LOOP AT mt_lnl_map_t INTO ls_map_t WHERE segment = iv_segment.
  5354.  
  5355. CASE ls_map_t-element_type.
  5356.  
  5357. WHEN 0 OR 1 OR 2. "Konstante, Struktur, Tabelle
  5358.  
  5359. CALL METHOD zficln_lct_outbd_mapper=>map_lnl_general
  5360. EXPORTING
  5361. iv_segment = iv_segment
  5362. is_map_t = ls_map_t
  5363. is_zlctobject_t = is_zlctobject_t
  5364. is_zlctcond_t = is_zlctcond_t
  5365. is_zlctheader_t = is_zlctheader_t
  5366. is_zlctcontract_t = is_zlctcontract_t
  5367. is_zlctsale_t = is_zlctsale_t
  5368. it_zlctstatus_t = it_zlctstatus_t
  5369. it_zlctdate_t = it_zlctdate_t
  5370. it_zlctoption_t = it_zlctoption_t
  5371. it_zlctpartrel_t = it_zlctpartrel_t
  5372. it_zlctobject_t = it_zlctobject_t
  5373. it_zlctaro_t = it_zlctaro_t
  5374. it_zlctcoksst_t = it_zlctcoksst_t
  5375. it_zlctcond_t = it_zlctcond_t
  5376. it_zlctimage_t = it_zlctimage_t
  5377. it_zlctvalue_t = it_zlctvalue_t
  5378. IMPORTING
  5379. es_data = es_item_float_data
  5380. EXCEPTIONS
  5381. mapping_error = 1
  5382. OTHERS = 2.
  5383. IF sy-subrc <> 0.
  5384. CONTINUE.
  5385. ENDIF.
  5386.  
  5387. WHEN 3. "freies Coding
  5388.  
  5389. CASE ls_map_t-element.
  5390. WHEN 'COND_TYPE'.
  5391.  
  5392. es_item_float_data-cond_type = ls_zlctmap_help_t-z_condart_target.
  5393.  
  5394. WHEN 'PAYM_RHYTHM'.
  5395.  
  5396. es_item_float_data-paym_rhythm = map_zcondrth( is_zlctcond_t-zcondrth ).
  5397.  
  5398. WHEN 'PAYM_FORM'.
  5399.  
  5400. es_item_float_data-paym_form = map_zcondzalw( is_zlctcond_t-zcondzalw ).
  5401.  
  5402. *<<<<<<<<<<< beg ins Duc 20180921
  5403. WHEN 'VALID_FROM'.
  5404. es_item_float_data-valid_from = get_valid_from( is_zlctcond_t ).
  5405. *** beg ins JB 20181030
  5406. IF ls_map_t-type_d = abap_true AND es_item_float_data-valid_from = '00000000'.
  5407. es_item_float_data-valid_from = ''.
  5408. ENDIF.
  5409. *** end ins JB 20181030
  5410. WHEN 'VALID_TO'.
  5411. es_item_float_data-valid_to = get_valid_to( is_zlctcond_t ).
  5412. *** beg ins JB 20181030
  5413. IF ls_map_t-type_d = abap_true AND es_item_float_data-valid_to = '00000000'.
  5414. es_item_float_data-valid_to = ''.
  5415. ENDIF.
  5416. *** end ins JB 20181030
  5417. *>>>>>>>>>>> end ins Duc 20180921
  5418.  
  5419. ENDCASE.
  5420.  
  5421. ENDCASE.
  5422.  
  5423. ENDLOOP.
  5424.  
  5425. ENDMETHOD.
  5426.  
  5427.  
  5428. * <SIGNATURE>---------------------------------------------------------------------------------------+
  5429. * | Static Public Method ZFICLN_LCT_OUTBD_MAPPER=>MAP_ITEM_GEN
  5430. * +-------------------------------------------------------------------------------------------------+
  5431. * | [--->] IV_SEGMENT TYPE ZLCT_MAP_SEGMENT
  5432. * | [--->] IS_ZLCTOBJECT_T TYPE ZLCTOBJECT_T
  5433. * | [--->] IS_ZLCTHEADER_T TYPE ZLCTHEADER_T
  5434. * | [--->] IS_ZLCTCONTRACT_T TYPE ZLCTCONTRACT_T
  5435. * | [--->] IS_ZLCTSALE_T TYPE ZLCTSALE_T
  5436. * | [--->] IT_ZLCTSTATUS_T TYPE ZLCTSTATUS_TT
  5437. * | [--->] IT_ZLCTDATE_T TYPE ZLCTDATE_TT
  5438. * | [--->] IT_ZLCTOPTION_T TYPE ZLCTOPTION_TT
  5439. * | [--->] IT_ZLCTPARTREL_T TYPE ZLCTPARTREL_TT
  5440. * | [--->] IT_ZLCTOBJECT_T TYPE ZLCTOBJECT_TT
  5441. * | [--->] IT_ZLCTARO_T TYPE ZLCTARO_TT
  5442. * | [--->] IT_ZLCTCOKSST_T TYPE ZLCTCOKSST_TT
  5443. * | [--->] IT_ZLCTCOND_T TYPE ZLCTCOND_TT
  5444. * | [--->] IT_ZLCTIMAGE_T TYPE ZLCTIMAGE_TT
  5445. * | [--->] IT_ZLCTVALUE_T TYPE ZLCTVALUE_TT
  5446. * | [<---] ES_ITEM_GEN_DATA TYPE ZLCTE1CON_ITEM_GEN
  5447. * +--------------------------------------------------------------------------------------</SIGNATURE>
  5448. METHOD map_item_gen.
  5449. *&H***************************************************************
  5450. *&H SAP-Module : FI-LCT *
  5451. *&H Author : S.Kühnel *
  5452. *&H Company/Department: Sopra Steria GmbH *
  5453. *&H Phone : *
  5454. *&H E-Mail : sascha.kuehnel@soprasteria.com *
  5455. *&H Date of creation: 2018-03-01 *
  5456. *&D***************************************************************
  5457. *&D Description : *
  5458. *&D maps item_gen segment *
  5459. *&C***************************************************************
  5460. *&C Change history : *
  5461. *&C Developer | Code/Date | Description *
  5462. *&C -------------------------------------------------------------*
  5463. *&C <Name> | <code>.<Date>| <Description> *
  5464. *&C***************************************************************
  5465. DATA: ls_map_t TYPE zlct_lnl_map_t,
  5466. ls_obj_type TYPE zlct_obj_type_t.
  5467.  
  5468. LOOP AT mt_lnl_map_t INTO ls_map_t WHERE segment = iv_segment.
  5469.  
  5470. CASE ls_map_t-element_type.
  5471.  
  5472. WHEN 0 OR 1 OR 2. "Konstante, Struktur, Tabelle
  5473.  
  5474. CALL METHOD zficln_lct_outbd_mapper=>map_lnl_general
  5475. EXPORTING
  5476. iv_segment = iv_segment
  5477. is_map_t = ls_map_t
  5478. is_zlctobject_t = is_zlctobject_t
  5479. is_zlctheader_t = is_zlctheader_t
  5480. is_zlctcontract_t = is_zlctcontract_t
  5481. is_zlctsale_t = is_zlctsale_t
  5482. it_zlctstatus_t = it_zlctstatus_t
  5483. it_zlctdate_t = it_zlctdate_t
  5484. it_zlctoption_t = it_zlctoption_t
  5485. it_zlctpartrel_t = it_zlctpartrel_t
  5486. it_zlctobject_t = it_zlctobject_t
  5487. it_zlctaro_t = it_zlctaro_t
  5488. it_zlctcoksst_t = it_zlctcoksst_t
  5489. it_zlctcond_t = it_zlctcond_t
  5490. it_zlctimage_t = it_zlctimage_t
  5491. it_zlctvalue_t = it_zlctvalue_t
  5492. IMPORTING
  5493. es_data = es_item_gen_data
  5494. EXCEPTIONS
  5495. mapping_error = 1
  5496. OTHERS = 2.
  5497. IF sy-subrc <> 0.
  5498. CONTINUE.
  5499. ENDIF.
  5500.  
  5501. WHEN 3. "freies Coding
  5502.  
  5503. CASE ls_map_t-element.
  5504.  
  5505. WHEN 'OBJ_TYPE'.
  5506.  
  5507. CLEAR ls_obj_type.
  5508. READ TABLE mt_obj_type_t INTO ls_obj_type WITH KEY zobjtype = is_zlctobject_t-zobjtype.
  5509.  
  5510. es_item_gen_data-obj_type = ls_obj_type-zlnl_obj_type.
  5511.  
  5512. WHEN 'OBJ_ART'.
  5513.  
  5514. CLEAR ls_obj_type.
  5515. READ TABLE mt_obj_type_t INTO ls_obj_type WITH KEY zobjtype = is_zlctobject_t-zobjtype.
  5516.  
  5517. es_item_gen_data-obj_art = ls_obj_type-zlnl_obj_art.
  5518.  
  5519. ENDCASE.
  5520.  
  5521. ENDCASE.
  5522.  
  5523. ENDLOOP.
  5524.  
  5525. ENDMETHOD.
  5526.  
  5527.  
  5528. * <SIGNATURE>---------------------------------------------------------------------------------------+
  5529. * | Static Public Method ZFICLN_LCT_OUTBD_MAPPER=>MAP_ITEM_GEXT
  5530. * +-------------------------------------------------------------------------------------------------+
  5531. * | [--->] IV_SEGMENT TYPE ZLCT_MAP_SEGMENT
  5532. * | [--->] IS_ZLCTOBJECT_T TYPE ZLCTOBJECT_T
  5533. * | [--->] IS_ZLCTHEADER_T TYPE ZLCTHEADER_T
  5534. * | [--->] IS_ZLCTCONTRACT_T TYPE ZLCTCONTRACT_T
  5535. * | [--->] IS_ZLCTSALE_T TYPE ZLCTSALE_T
  5536. * | [--->] IT_ZLCTSTATUS_T TYPE ZLCTSTATUS_TT
  5537. * | [--->] IT_ZLCTDATE_T TYPE ZLCTDATE_TT
  5538. * | [--->] IT_ZLCTOPTION_T TYPE ZLCTOPTION_TT
  5539. * | [--->] IT_ZLCTPARTREL_T TYPE ZLCTPARTREL_TT
  5540. * | [--->] IT_ZLCTOBJECT_T TYPE ZLCTOBJECT_TT
  5541. * | [--->] IT_ZLCTARO_T TYPE ZLCTARO_TT
  5542. * | [--->] IT_ZLCTCOKSST_T TYPE ZLCTCOKSST_TT
  5543. * | [--->] IT_ZLCTCOND_T TYPE ZLCTCOND_TT
  5544. * | [--->] IT_ZLCTIMAGE_T TYPE ZLCTIMAGE_TT
  5545. * | [--->] IT_ZLCTVALUE_T TYPE ZLCTVALUE_TT
  5546. * | [<---] ES_ITEM_GEXT_DATA TYPE ZLCTE1CON_ITEM_GEXT
  5547. * +--------------------------------------------------------------------------------------</SIGNATURE>
  5548. METHOD map_item_gext.
  5549. *&H***************************************************************
  5550. *&H SAP-Module : FI-LCT *
  5551. *&H Author : S.Kühnel *
  5552. *&H Company/Department: Sopra Steria GmbH *
  5553. *&H Phone : *
  5554. *&H E-Mail : sascha.kuehnel@soprasteria.com *
  5555. *&H Date of creation: 2018-03-01 *
  5556. *&D***************************************************************
  5557. *&D Description : *
  5558. *&D maps item_gext segment *
  5559. *&C***************************************************************
  5560. *&C Change history : *
  5561. *&C Developer | Code/Date | Description *
  5562. *&C -------------------------------------------------------------*
  5563. *&C <Name> | <code>.<Date>| <Description> *
  5564. *&C***************************************************************
  5565. DATA: ls_map_t TYPE zlct_lnl_map_t.
  5566.  
  5567. LOOP AT mt_lnl_map_t INTO ls_map_t WHERE segment = iv_segment.
  5568.  
  5569. CASE ls_map_t-element_type.
  5570.  
  5571. WHEN 0 OR 1 OR 2. "Konstante, Struktur, Tabelle
  5572.  
  5573. CALL METHOD zficln_lct_outbd_mapper=>map_lnl_general
  5574. EXPORTING
  5575. iv_segment = iv_segment
  5576. is_map_t = ls_map_t
  5577. is_zlctobject_t = is_zlctobject_t
  5578. is_zlctheader_t = is_zlctheader_t
  5579. is_zlctcontract_t = is_zlctcontract_t
  5580. is_zlctsale_t = is_zlctsale_t
  5581. it_zlctstatus_t = it_zlctstatus_t
  5582. it_zlctdate_t = it_zlctdate_t
  5583. it_zlctoption_t = it_zlctoption_t
  5584. it_zlctpartrel_t = it_zlctpartrel_t
  5585. it_zlctobject_t = it_zlctobject_t
  5586. it_zlctaro_t = it_zlctaro_t
  5587. it_zlctcoksst_t = it_zlctcoksst_t
  5588. it_zlctcond_t = it_zlctcond_t
  5589. it_zlctimage_t = it_zlctimage_t
  5590. it_zlctvalue_t = it_zlctvalue_t
  5591. IMPORTING
  5592. es_data = es_item_gext_data
  5593. EXCEPTIONS
  5594. mapping_error = 1
  5595. OTHERS = 2.
  5596. IF sy-subrc <> 0.
  5597. CONTINUE.
  5598. ENDIF.
  5599.  
  5600. WHEN 3. "freies Coding
  5601.  
  5602. CASE ls_map_t-element.
  5603. *** beg ins JB 20181030
  5604. WHEN 'REVENUE_PARTICIPATION'.
  5605. es_item_gext_data-revenue_participation = get_item_gext_revenue_particip( iv_segment = iv_segment
  5606. iv_element = ls_map_t-element
  5607. is_zlctobject_t = is_zlctobject_t
  5608. it_zlctvalue_t = it_zlctvalue_t ).
  5609. *** end ins JB 2018
  5610. WHEN OTHERS.
  5611.  
  5612. ENDCASE.
  5613.  
  5614. ENDCASE.
  5615.  
  5616. ENDLOOP.
  5617.  
  5618. ENDMETHOD.
  5619.  
  5620.  
  5621. * <SIGNATURE>---------------------------------------------------------------------------------------+
  5622. * | Static Public Method ZFICLN_LCT_OUTBD_MAPPER=>MAP_ITEM_INDEX
  5623. * +-------------------------------------------------------------------------------------------------+
  5624. * | [--->] IV_SEGMENT TYPE ZLCT_MAP_SEGMENT
  5625. * | [--->] IS_ZLCTOBJECT_T TYPE ZLCTOBJECT_T
  5626. * | [--->] IS_ZLCTCOND_T TYPE ZLCTCOND_T
  5627. * | [--->] IS_ZLCTHEADER_T TYPE ZLCTHEADER_T
  5628. * | [--->] IS_ZLCTCONTRACT_T TYPE ZLCTCONTRACT_T
  5629. * | [--->] IS_ZLCTSALE_T TYPE ZLCTSALE_T
  5630. * | [--->] IT_ZLCTSTATUS_T TYPE ZLCTSTATUS_TT
  5631. * | [--->] IT_ZLCTDATE_T TYPE ZLCTDATE_TT
  5632. * | [--->] IT_ZLCTOPTION_T TYPE ZLCTOPTION_TT
  5633. * | [--->] IT_ZLCTPARTREL_T TYPE ZLCTPARTREL_TT
  5634. * | [--->] IT_ZLCTOBJECT_T TYPE ZLCTOBJECT_TT
  5635. * | [--->] IT_ZLCTARO_T TYPE ZLCTARO_TT
  5636. * | [--->] IT_ZLCTCOKSST_T TYPE ZLCTCOKSST_TT
  5637. * | [--->] IT_ZLCTCOND_T TYPE ZLCTCOND_TT
  5638. * | [--->] IT_ZLCTIMAGE_T TYPE ZLCTIMAGE_TT
  5639. * | [--->] IT_ZLCTVALUE_T TYPE ZLCTVALUE_TT
  5640. * | [<---] ES_ITEM_INDEX_DATA TYPE ZLCTE1CON_ITEM_INDEX
  5641. * +--------------------------------------------------------------------------------------</SIGNATURE>
  5642. METHOD map_item_index.
  5643. *&H***************************************************************
  5644. *&H SAP-Module : FI-LCT *
  5645. *&H Author : S.Kühnel *
  5646. *&H Company/Department: Sopra Steria GmbH *
  5647. *&H Phone : *
  5648. *&H E-Mail : sascha.kuehnel@soprasteria.com *
  5649. *&H Date of creation: 2018-03-01 *
  5650. *&D***************************************************************
  5651. *&D Description : *
  5652. *&D maps item_index segment *
  5653. *&C***************************************************************
  5654. *&C Change history : *
  5655. *&C Developer | Code/Date | Description *
  5656. *&C -------------------------------------------------------------*
  5657. *&C <Name> | <code>.<Date>| <Description> *
  5658. *&C***************************************************************
  5659. DATA: ls_map_t TYPE zlct_lnl_map_t,
  5660. lv_zahlrhythmus TYPE zlctcondrth,
  5661. ls_zlctmap_help_t TYPE zlctmap_help_t,
  5662. lv_segment TYPE zlct_map_segment.
  5663.  
  5664. IF is_zlctcond_t-zcondrth <> '0100'.
  5665. lv_zahlrhythmus = '0000'.
  5666. ELSE.
  5667. lv_zahlrhythmus = is_zlctcond_t-zcondrth.
  5668. ENDIF.
  5669.  
  5670. lv_segment = iv_segment+6.
  5671. READ TABLE mt_zlctmap_help_t INTO ls_zlctmap_help_t WITH KEY zsegment = lv_segment zcondart_source = is_zlctcond_t-zcondart zcondrth = lv_zahlrhythmus.
  5672. IF sy-subrc <> 0.
  5673. EXIT.
  5674. ENDIF.
  5675.  
  5676. LOOP AT mt_lnl_map_t INTO ls_map_t WHERE segment = iv_segment.
  5677.  
  5678. CASE ls_map_t-element_type.
  5679.  
  5680. WHEN 0 OR 1 OR 2. "Konstante, Struktur, Tabelle
  5681.  
  5682. CALL METHOD zficln_lct_outbd_mapper=>map_lnl_general
  5683. EXPORTING
  5684. iv_segment = iv_segment
  5685. is_map_t = ls_map_t
  5686. is_zlctobject_t = is_zlctobject_t
  5687. is_zlctcond_t = is_zlctcond_t
  5688. is_zlctheader_t = is_zlctheader_t
  5689. is_zlctcontract_t = is_zlctcontract_t
  5690. is_zlctsale_t = is_zlctsale_t
  5691. it_zlctstatus_t = it_zlctstatus_t
  5692. it_zlctdate_t = it_zlctdate_t
  5693. it_zlctoption_t = it_zlctoption_t
  5694. it_zlctpartrel_t = it_zlctpartrel_t
  5695. it_zlctobject_t = it_zlctobject_t
  5696. it_zlctaro_t = it_zlctaro_t
  5697. it_zlctcoksst_t = it_zlctcoksst_t
  5698. it_zlctcond_t = it_zlctcond_t
  5699. it_zlctimage_t = it_zlctimage_t
  5700. it_zlctvalue_t = it_zlctvalue_t
  5701. IMPORTING
  5702. es_data = es_item_index_data
  5703. EXCEPTIONS
  5704. mapping_error = 1
  5705. OTHERS = 2.
  5706. IF sy-subrc <> 0.
  5707. CONTINUE.
  5708. ENDIF.
  5709.  
  5710. WHEN 3. "freies Coding
  5711.  
  5712. CASE ls_map_t-element.
  5713. WHEN 'COND_TYPE'.
  5714.  
  5715. es_item_index_data-cond_type = ls_zlctmap_help_t-z_condart_target.
  5716.  
  5717. WHEN 'PAYM_RHYTHM'.
  5718.  
  5719. es_item_index_data-paym_rhythm = map_zcondrth( is_zlctcond_t-zcondrth ).
  5720.  
  5721. WHEN 'PAYM_FORM'.
  5722.  
  5723. es_item_index_data-paym_form = map_zcondzalw( is_zlctcond_t-zcondzalw ).
  5724. *<<<<<<<<<<< beg ins Duc 20180921
  5725. WHEN 'VALID_FROM'.
  5726. es_item_index_data-valid_from = get_valid_from( is_zlctcond_t ).
  5727. *** beg ins JB 20181030
  5728. IF ls_map_t-type_d = abap_true AND es_item_index_data-valid_from = '00000000'.
  5729. es_item_index_data-valid_from = ''.
  5730. ENDIF.
  5731. *** end ins JB 20181030
  5732. WHEN 'VALID_TO'.
  5733. es_item_index_data-valid_to = get_valid_to( is_zlctcond_t ).
  5734. *** beg ins JB 20181030
  5735. IF ls_map_t-type_d = abap_true AND es_item_index_data-valid_to = '00000000'.
  5736. es_item_index_data-valid_to = ''.
  5737. ENDIF.
  5738. *** end ins JB 20181030
  5739. *>>>>>>>>>>> end ins Duc 20180921
  5740.  
  5741. ENDCASE.
  5742.  
  5743. ENDCASE.
  5744.  
  5745. ENDLOOP.
  5746.  
  5747. ENDMETHOD.
  5748.  
  5749.  
  5750. * <SIGNATURE>---------------------------------------------------------------------------------------+
  5751. * | Static Public Method ZFICLN_LCT_OUTBD_MAPPER=>MAP_ITEM_LEEXT
  5752. * +-------------------------------------------------------------------------------------------------+
  5753. * | [--->] IV_SEGMENT TYPE ZLCT_MAP_SEGMENT
  5754. * | [--->] IS_ZLCTOBJECT_T TYPE ZLCTOBJECT_T
  5755. * | [--->] IS_ZLCTHEADER_T TYPE ZLCTHEADER_T
  5756. * | [--->] IS_ZLCTCONTRACT_T TYPE ZLCTCONTRACT_T
  5757. * | [--->] IS_ZLCTSALE_T TYPE ZLCTSALE_T
  5758. * | [--->] IT_ZLCTSTATUS_T TYPE ZLCTSTATUS_TT
  5759. * | [--->] IT_ZLCTDATE_T TYPE ZLCTDATE_TT
  5760. * | [--->] IT_ZLCTOPTION_T TYPE ZLCTOPTION_TT
  5761. * | [--->] IT_ZLCTPARTREL_T TYPE ZLCTPARTREL_TT
  5762. * | [--->] IT_ZLCTOBJECT_T TYPE ZLCTOBJECT_TT
  5763. * | [--->] IT_ZLCTARO_T TYPE ZLCTARO_TT
  5764. * | [--->] IT_ZLCTCOKSST_T TYPE ZLCTCOKSST_TT
  5765. * | [--->] IT_ZLCTCOND_T TYPE ZLCTCOND_TT
  5766. * | [--->] IT_ZLCTIMAGE_T TYPE ZLCTIMAGE_TT
  5767. * | [--->] IT_ZLCTVALUE_T TYPE ZLCTVALUE_TT
  5768. * | [<---] ES_ITEM_LEEXT_DATA TYPE ZLCTE1CON_ITEM_LEEXT
  5769. * +--------------------------------------------------------------------------------------</SIGNATURE>
  5770. METHOD map_item_leext.
  5771. *&H***************************************************************
  5772. *&H SAP-Module : FI-LCT *
  5773. *&H Author : S.Kühnel *
  5774. *&H Company/Department: Sopra Steria GmbH *
  5775. *&H Phone : *
  5776. *&H E-Mail : sascha.kuehnel@soprasteria.com *
  5777. *&H Date of creation: 2018-03-01 *
  5778. *&D***************************************************************
  5779. *&D Description : *
  5780. *&D maps item_leext segment *
  5781. *&C***************************************************************
  5782. *&C Change history : *
  5783. *&C Developer | Code/Date | Description *
  5784. *&C -------------------------------------------------------------*
  5785. *&C <Name> | <code>.<Date>| <Description> *
  5786. *&C***************************************************************
  5787. CONSTANTS: lc_gzidur TYPE zlctdatart VALUE 'GZIDUR'.
  5788.  
  5789. DATA: ls_map_t TYPE zlct_lnl_map_t,
  5790. ls_zlctdate TYPE zlctdate_t.
  5791.  
  5792.  
  5793. LOOP AT mt_lnl_map_t INTO ls_map_t WHERE segment = iv_segment.
  5794.  
  5795. CASE ls_map_t-element_type.
  5796.  
  5797. WHEN 0 OR 1 OR 2. "Konstante, Struktur, Tabelle
  5798.  
  5799. CALL METHOD zficln_lct_outbd_mapper=>map_lnl_general
  5800. EXPORTING
  5801. iv_segment = iv_segment
  5802. is_map_t = ls_map_t
  5803. is_zlctobject_t = is_zlctobject_t
  5804. is_zlctheader_t = is_zlctheader_t
  5805. is_zlctcontract_t = is_zlctcontract_t
  5806. is_zlctsale_t = is_zlctsale_t
  5807. it_zlctstatus_t = it_zlctstatus_t
  5808. it_zlctdate_t = it_zlctdate_t
  5809. it_zlctoption_t = it_zlctoption_t
  5810. it_zlctpartrel_t = it_zlctpartrel_t
  5811. it_zlctobject_t = it_zlctobject_t
  5812. it_zlctaro_t = it_zlctaro_t
  5813. it_zlctcoksst_t = it_zlctcoksst_t
  5814. it_zlctcond_t = it_zlctcond_t
  5815. it_zlctimage_t = it_zlctimage_t
  5816. it_zlctvalue_t = it_zlctvalue_t
  5817. IMPORTING
  5818. es_data = es_item_leext_data
  5819. EXCEPTIONS
  5820. mapping_error = 1
  5821. OTHERS = 2.
  5822. IF sy-subrc <> 0.
  5823. CONTINUE.
  5824. ENDIF.
  5825.  
  5826. WHEN 3. "freies Coding
  5827.  
  5828. CASE ls_map_t-element.
  5829.  
  5830. WHEN 'CON_BEG'.
  5831. CLEAR ls_zlctdate.
  5832. READ TABLE it_zlctdate_t INTO ls_zlctdate WITH KEY zobjzuord = is_zlctobject_t-zobjid zdatart = lc_gzidur. " cha jb 20181010
  5833.  
  5834. IF sy-subrc = 0.
  5835.  
  5836. es_item_leext_data-con_beg = ls_zlctdate-zdatdate.
  5837.  
  5838. ELSE.
  5839. *** beg cha JB 20181010 Änderung auf gzidur
  5840. CLEAR: ls_zlctdate.
  5841. ls_zlctdate = zficln_lct_outbd_mapper=>get_general_date( EXPORTING iv_zdatart = lc_gzidur
  5842. is_zlctheader_t = is_zlctheader_t
  5843. it_zlctobject_t = it_zlctobject_t
  5844. it_zlctdate_t = it_zlctdate_t ).
  5845.  
  5846. *** end cha JB 20181010 Änderung auf gzidur
  5847.  
  5848. es_item_leext_data-con_beg = ls_zlctdate-zdatdate.
  5849.  
  5850. CLEAR: ls_zlctdate.
  5851.  
  5852. ENDIF.
  5853.  
  5854. IF es_item_leext_data-con_beg = '00000000'.
  5855. es_item_leext_data-con_beg = ''.
  5856. ENDIF.
  5857.  
  5858. WHEN 'CON_END'.
  5859.  
  5860. CLEAR ls_zlctdate.
  5861. READ TABLE it_zlctdate_t INTO ls_zlctdate WITH KEY zobjzuord = is_zlctobject_t-zobjid zdatart = lc_gzidur.
  5862.  
  5863. IF sy-subrc = 0.
  5864.  
  5865. es_item_leext_data-con_end = ls_zlctdate-zdatebis.
  5866.  
  5867. ELSE.
  5868.  
  5869. *** beg cha JB 2018 Änderung auf gzidur
  5870. CLEAR: ls_zlctdate.
  5871. ls_zlctdate = zficln_lct_outbd_mapper=>get_general_date( EXPORTING iv_zdatart = lc_gzidur
  5872. is_zlctheader_t = is_zlctheader_t
  5873. it_zlctobject_t = it_zlctobject_t
  5874. it_zlctdate_t = it_zlctdate_t ).
  5875.  
  5876. es_item_leext_data-con_end = ls_zlctdate-zdatebis.
  5877.  
  5878. CLEAR: ls_zlctdate.
  5879.  
  5880. *** end cha JB 2018 Änderung auf gzidur
  5881.  
  5882. ENDIF.
  5883.  
  5884. IF es_item_leext_data-con_end = '00000000'.
  5885. es_item_leext_data-con_end = ''.
  5886. ENDIF.
  5887.  
  5888. ENDCASE.
  5889.  
  5890. ENDCASE.
  5891.  
  5892. ENDLOOP.
  5893.  
  5894. ENDMETHOD.
  5895.  
  5896.  
  5897. * <SIGNATURE>---------------------------------------------------------------------------------------+
  5898. * | Static Public Method ZFICLN_LCT_OUTBD_MAPPER=>MAP_ITEM_LEINT
  5899. * +-------------------------------------------------------------------------------------------------+
  5900. * | [--->] IV_SEGMENT TYPE ZLCT_MAP_SEGMENT
  5901. * | [--->] IS_ZLCTOBJECT_T TYPE ZLCTOBJECT_T
  5902. * | [--->] IS_ZLCTHEADER_T TYPE ZLCTHEADER_T
  5903. * | [--->] IS_ZLCTCONTRACT_T TYPE ZLCTCONTRACT_T
  5904. * | [--->] IS_ZLCTSALE_T TYPE ZLCTSALE_T
  5905. * | [--->] IT_ZLCTSTATUS_T TYPE ZLCTSTATUS_TT
  5906. * | [--->] IT_ZLCTDATE_T TYPE ZLCTDATE_TT
  5907. * | [--->] IT_ZLCTOPTION_T TYPE ZLCTOPTION_TT
  5908. * | [--->] IT_ZLCTPARTREL_T TYPE ZLCTPARTREL_TT
  5909. * | [--->] IT_ZLCTOBJECT_T TYPE ZLCTOBJECT_TT
  5910. * | [--->] IT_ZLCTARO_T TYPE ZLCTARO_TT
  5911. * | [--->] IT_ZLCTCOKSST_T TYPE ZLCTCOKSST_TT
  5912. * | [--->] IT_ZLCTCOND_T TYPE ZLCTCOND_TT
  5913. * | [--->] IT_ZLCTIMAGE_T TYPE ZLCTIMAGE_TT
  5914. * | [--->] IT_ZLCTVALUE_T TYPE ZLCTVALUE_TT
  5915. * | [<---] ES_ITEM_LEINT_DATA TYPE ZLCTE1CON_ITEM_LEINT
  5916. * +--------------------------------------------------------------------------------------</SIGNATURE>
  5917. METHOD map_item_leint.
  5918. *&H***************************************************************
  5919. *&H SAP-Module : FI-LCT *
  5920. *&H Author : S.Kühnel *
  5921. *&H Company/Department: Sopra Steria GmbH *
  5922. *&H Phone : *
  5923. *&H E-Mail : sascha.kuehnel@soprasteria.com *
  5924. *&H Date of creation: 2018-03-01 *
  5925. *&D***************************************************************
  5926. *&D Description : *
  5927. *&D maps item_leint segment *
  5928. *&C***************************************************************
  5929. *&C Change history : *
  5930. *&C Developer | Code/Date | Description *
  5931. *&C -------------------------------------------------------------*
  5932. *&C <Name> | <code>.<Date>| <Description> *
  5933. *&C***************************************************************
  5934. DATA: ls_map_t TYPE zlct_lnl_map_t.
  5935.  
  5936. LOOP AT mt_lnl_map_t INTO ls_map_t WHERE segment = iv_segment.
  5937.  
  5938. CASE ls_map_t-element_type.
  5939.  
  5940. WHEN 0 OR 1 OR 2. "Konstante, Struktur, Tabelle
  5941.  
  5942. CALL METHOD zficln_lct_outbd_mapper=>map_lnl_general
  5943. EXPORTING
  5944. iv_segment = iv_segment
  5945. is_map_t = ls_map_t
  5946. is_zlctobject_t = is_zlctobject_t
  5947. is_zlctheader_t = is_zlctheader_t
  5948. is_zlctcontract_t = is_zlctcontract_t
  5949. is_zlctsale_t = is_zlctsale_t
  5950. it_zlctstatus_t = it_zlctstatus_t
  5951. it_zlctdate_t = it_zlctdate_t
  5952. it_zlctoption_t = it_zlctoption_t
  5953. it_zlctpartrel_t = it_zlctpartrel_t
  5954. it_zlctobject_t = it_zlctobject_t
  5955. it_zlctaro_t = it_zlctaro_t
  5956. it_zlctcoksst_t = it_zlctcoksst_t
  5957. it_zlctcond_t = it_zlctcond_t
  5958. it_zlctimage_t = it_zlctimage_t
  5959. it_zlctvalue_t = it_zlctvalue_t
  5960. IMPORTING
  5961. es_data = es_item_leint_data
  5962. EXCEPTIONS
  5963. mapping_error = 1
  5964. OTHERS = 2.
  5965. IF sy-subrc <> 0.
  5966. CONTINUE.
  5967. ENDIF.
  5968.  
  5969. WHEN 3. "freies Coding
  5970.  
  5971. CASE ls_map_t-element.
  5972. WHEN 'GROUP_PROPERTY_FLAG'.
  5973. IF is_zlctcontract_t-zintlease IS NOT INITIAL. "Defect: 2060117168
  5974. es_item_leint_data-group_property_flag = is_zlctobject_t-zobjkonz.
  5975. ENDIF.
  5976.  
  5977. **** beg ins JB 180911 check num
  5978. * WHEN 'IDB_KEY'.
  5979. * IF es_item_leint_data-idb_key CO ' 0123456789'.
  5980. * es_item_leint_data-idb_key = is_zlctobject_t-zobjimken.
  5981. * ELSE.
  5982. * """ Message ausgeben.
  5983. * ENDIF.
  5984. **** end ins JB 180911 check num
  5985.  
  5986.  
  5987. ENDCASE.
  5988.  
  5989. ENDCASE.
  5990.  
  5991. ENDLOOP.
  5992.  
  5993. ENDMETHOD.
  5994.  
  5995.  
  5996. * <SIGNATURE>---------------------------------------------------------------------------------------+
  5997. * | Static Public Method ZFICLN_LCT_OUTBD_MAPPER=>MAP_ITEM_PUR
  5998. * +-------------------------------------------------------------------------------------------------+
  5999. * | [--->] IV_SEGMENT TYPE ZLCT_MAP_SEGMENT
  6000. * | [--->] IS_ZLCTOBJECT_T TYPE ZLCTOBJECT_T
  6001. * | [--->] IS_ZLCTOPTION_T TYPE ZLCTOPTION_T
  6002. * | [--->] IS_ZLCTHEADER_T TYPE ZLCTHEADER_T
  6003. * | [--->] IS_ZLCTCONTRACT_T TYPE ZLCTCONTRACT_T
  6004. * | [--->] IS_ZLCTSALE_T TYPE ZLCTSALE_T
  6005. * | [--->] IT_ZLCTSTATUS_T TYPE ZLCTSTATUS_TT
  6006. * | [--->] IT_ZLCTDATE_T TYPE ZLCTDATE_TT
  6007. * | [--->] IT_ZLCTOPTION_T TYPE ZLCTOPTION_TT
  6008. * | [--->] IT_ZLCTPARTREL_T TYPE ZLCTPARTREL_TT
  6009. * | [--->] IT_ZLCTOBJECT_T TYPE ZLCTOBJECT_TT
  6010. * | [--->] IT_ZLCTARO_T TYPE ZLCTARO_TT
  6011. * | [--->] IT_ZLCTCOKSST_T TYPE ZLCTCOKSST_TT
  6012. * | [--->] IT_ZLCTCOND_T TYPE ZLCTCOND_TT
  6013. * | [--->] IT_ZLCTIMAGE_T TYPE ZLCTIMAGE_TT
  6014. * | [--->] IT_ZLCTVALUE_T TYPE ZLCTVALUE_TT
  6015. * | [<---] ES_ITEM_PUR_DATA TYPE ZLCTE1CON_ITEM_PUR
  6016. * +--------------------------------------------------------------------------------------</SIGNATURE>
  6017. METHOD map_item_pur.
  6018. *&H***************************************************************
  6019. *&H SAP-Module : FI-LCT *
  6020. *&H Author : S.Kühnel *
  6021. *&H Company/Department: Sopra Steria GmbH *
  6022. *&H Phone : *
  6023. *&H E-Mail : sascha.kuehnel@soprasteria.com *
  6024. *&H Date of creation: 2018-03-01 *
  6025. *&D***************************************************************
  6026. *&D Description : *
  6027. *&D maps item_pur segment *
  6028. *&C***************************************************************
  6029. *&C Change history : *
  6030. *&C Developer | Code/Date | Description *
  6031. *&C -------------------------------------------------------------*
  6032. *&C <Name> | <code>.<Date>| <Description> *
  6033. *&C***************************************************************
  6034.  
  6035. DATA: lv_counter TYPE syindex.
  6036.  
  6037.  
  6038. DATA: ls_map_t TYPE zlct_lnl_map_t,
  6039. ls_zlct_opco_type_t TYPE zlct_opco_type_t.
  6040.  
  6041.  
  6042. READ TABLE mt_zlct_opco_type_t INTO ls_zlct_opco_type_t
  6043. WITH KEY segment = iv_segment optart = is_zlctoption_t-zoptart.
  6044.  
  6045. IF sy-subrc <> 0.
  6046. EXIT.
  6047. ENDIF.
  6048.  
  6049. LOOP AT mt_lnl_map_t INTO ls_map_t WHERE segment = iv_segment.
  6050.  
  6051. CASE ls_map_t-element_type.
  6052.  
  6053. WHEN 0 OR 1 OR 2. "Konstante, Struktur, Tabelle
  6054.  
  6055. CALL METHOD zficln_lct_outbd_mapper=>map_lnl_general
  6056. EXPORTING
  6057. iv_segment = iv_segment
  6058. is_map_t = ls_map_t
  6059. is_zlctobject_t = is_zlctobject_t
  6060. is_zlctoption_t = is_zlctoption_t
  6061. is_zlctheader_t = is_zlctheader_t
  6062. is_zlctcontract_t = is_zlctcontract_t
  6063. is_zlctsale_t = is_zlctsale_t
  6064. it_zlctstatus_t = it_zlctstatus_t
  6065. it_zlctdate_t = it_zlctdate_t
  6066. it_zlctoption_t = it_zlctoption_t
  6067. it_zlctpartrel_t = it_zlctpartrel_t
  6068. it_zlctobject_t = it_zlctobject_t
  6069. it_zlctaro_t = it_zlctaro_t
  6070. it_zlctcoksst_t = it_zlctcoksst_t
  6071. it_zlctcond_t = it_zlctcond_t
  6072. it_zlctimage_t = it_zlctimage_t
  6073. it_zlctvalue_t = it_zlctvalue_t
  6074. IMPORTING
  6075. es_data = es_item_pur_data
  6076. EXCEPTIONS
  6077. mapping_error = 1
  6078. OTHERS = 2.
  6079. IF sy-subrc <> 0.
  6080. CONTINUE.
  6081. ENDIF.
  6082.  
  6083. WHEN 3. "freies Coding
  6084.  
  6085. CASE ls_map_t-element.
  6086.  
  6087. WHEN 'CA_PO_AMOUNT'.
  6088. *** Prüfen ob Kaufoption(PO01) mit Kondition(PM010) vorliegt.
  6089. *** Wenn ja dann Prüfung ob es noch weitere Datensätze gibt.
  6090. *** Wenn ja dann Prüfung auf Einmalzahlung
  6091. *** Wenn ja dann Prüfung auf weiter Zahlung
  6092. *** Wenn ja Fehler -> nichts übergeben.
  6093.  
  6094. IF is_zlctoption_t-zoptart EQ mc_zoptart_po01.
  6095. LOOP AT it_zlctcond_t ASSIGNING FIELD-SYMBOL(<ls_zlctcond>) WHERE zcondart = mc_condart_pm010
  6096. AND zcondrth = mc_zcondrth_0100
  6097. AND zoptguid = is_zlctoption_t-zoptguid
  6098. AND zobjzuord = is_zlctoption_t-zobjzuord.
  6099. .
  6100. ADD 1 TO lv_counter.
  6101. ENDLOOP.
  6102. IF lv_counter EQ 1.
  6103. WRITE: <ls_zlctcond>-zcondwert TO es_item_pur_data-ca_po_amount CURRENCY <ls_zlctcond>-zcondcurr.
  6104. ENDIF.
  6105. ENDIF.
  6106. *** beg ins JB 180911
  6107. WHEN 'CA_PO_EX_OPT_FLAG'.
  6108. IF is_zlctoption_t-zoptreacer = '3'.
  6109. es_item_pur_data-ca_po_ex_opt_flag = abap_true.
  6110. ENDIF.
  6111. *** end ins JB 180911
  6112.  
  6113. ENDCASE.
  6114.  
  6115. ENDCASE.
  6116.  
  6117. ENDLOOP.
  6118.  
  6119. ENDMETHOD.
  6120.  
  6121.  
  6122. * <SIGNATURE>---------------------------------------------------------------------------------------+
  6123. * | Static Public Method ZFICLN_LCT_OUTBD_MAPPER=>MAP_ITEM_PUR_COND
  6124. * +-------------------------------------------------------------------------------------------------+
  6125. * | [--->] IV_SEGMENT TYPE ZLCT_MAP_SEGMENT
  6126. * | [--->] IV_PARENT TYPE ZLCT_MAP_SEGMENT
  6127. * | [--->] IS_ZLCTOBJECT_T TYPE ZLCTOBJECT_T
  6128. * | [--->] IS_ZLCTOPTION_T TYPE ZLCTOPTION_T
  6129. * | [--->] IS_ZLCTCOND_T TYPE ZLCTCOND_T
  6130. * | [--->] IS_ZLCTHEADER_T TYPE ZLCTHEADER_T
  6131. * | [--->] IS_ZLCTCONTRACT_T TYPE ZLCTCONTRACT_T
  6132. * | [--->] IS_ZLCTSALE_T TYPE ZLCTSALE_T
  6133. * | [--->] IT_ZLCTSTATUS_T TYPE ZLCTSTATUS_TT
  6134. * | [--->] IT_ZLCTDATE_T TYPE ZLCTDATE_TT
  6135. * | [--->] IT_ZLCTOPTION_T TYPE ZLCTOPTION_TT
  6136. * | [--->] IT_ZLCTPARTREL_T TYPE ZLCTPARTREL_TT
  6137. * | [--->] IT_ZLCTOBJECT_T TYPE ZLCTOBJECT_TT
  6138. * | [--->] IT_ZLCTARO_T TYPE ZLCTARO_TT
  6139. * | [--->] IT_ZLCTCOKSST_T TYPE ZLCTCOKSST_TT
  6140. * | [--->] IT_ZLCTCOND_T TYPE ZLCTCOND_TT
  6141. * | [--->] IT_ZLCTIMAGE_T TYPE ZLCTIMAGE_TT
  6142. * | [--->] IT_ZLCTVALUE_T TYPE ZLCTVALUE_TT
  6143. * | [<---] ES_ITEM_PUR_COND_DATA TYPE ZLCTE1CON_PUR_COND
  6144. * +--------------------------------------------------------------------------------------</SIGNATURE>
  6145. METHOD map_item_pur_cond.
  6146. *&H***************************************************************
  6147. *&H SAP-Module : FI-LCT *
  6148. *&H Author : S.Kühnel *
  6149. *&H Company/Department: Sopra Steria GmbH *
  6150. *&H Phone : *
  6151. *&H E-Mail : sascha.kuehnel@soprasteria.com *
  6152. *&H Date of creation: 2018-03-01 *
  6153. *&D***************************************************************
  6154. *&D Description : *
  6155. *&D maps item_pur_cond segment *
  6156. *&C***************************************************************
  6157. *&C Change history : *
  6158. *&C Developer | Code/Date | Description *
  6159. *&C -------------------------------------------------------------*
  6160. *&C <Name> | <code>.<Date>| <Description> *
  6161. *&C***************************************************************
  6162. DATA: ls_map_t TYPE zlct_lnl_map_t,
  6163. ls_zlct_opco_type_t TYPE zlct_opco_type_t,
  6164. lv_zahlrhythmus TYPE zlctcondrth.
  6165.  
  6166. IF is_zlctcond_t-zcondrth = mc_zcondrth_0100.
  6167. lv_zahlrhythmus = is_zlctcond_t-zcondrth.
  6168. ELSE.
  6169. lv_zahlrhythmus = '0000'.
  6170. ENDIF.
  6171.  
  6172. READ TABLE mt_zlct_opco_type_t INTO ls_zlct_opco_type_t
  6173. WITH KEY segment = iv_parent optart = is_zlctoption_t-zoptart
  6174. condart = is_zlctcond_t-zcondart condrth = lv_zahlrhythmus.
  6175.  
  6176. IF sy-subrc <> 0.
  6177. EXIT.
  6178. ENDIF.
  6179.  
  6180. LOOP AT mt_lnl_map_t INTO ls_map_t WHERE segment = iv_segment.
  6181.  
  6182. CASE ls_map_t-element_type.
  6183.  
  6184. WHEN 0 OR 1 OR 2. "Konstante, Struktur, Tabelle
  6185.  
  6186. CALL METHOD zficln_lct_outbd_mapper=>map_lnl_general
  6187. EXPORTING
  6188. iv_segment = iv_segment
  6189. is_map_t = ls_map_t
  6190. is_zlctobject_t = is_zlctobject_t
  6191. is_zlctoption_t = is_zlctoption_t
  6192. is_zlctcond_t = is_zlctcond_t
  6193. is_zlctheader_t = is_zlctheader_t
  6194. is_zlctcontract_t = is_zlctcontract_t
  6195. is_zlctsale_t = is_zlctsale_t
  6196. it_zlctstatus_t = it_zlctstatus_t
  6197. it_zlctdate_t = it_zlctdate_t
  6198. it_zlctoption_t = it_zlctoption_t
  6199. it_zlctpartrel_t = it_zlctpartrel_t
  6200. it_zlctobject_t = it_zlctobject_t
  6201. it_zlctaro_t = it_zlctaro_t
  6202. it_zlctcoksst_t = it_zlctcoksst_t
  6203. it_zlctcond_t = it_zlctcond_t
  6204. it_zlctimage_t = it_zlctimage_t
  6205. it_zlctvalue_t = it_zlctvalue_t
  6206. IMPORTING
  6207. es_data = es_item_pur_cond_data
  6208. EXCEPTIONS
  6209. mapping_error = 1
  6210. OTHERS = 2.
  6211. IF sy-subrc <> 0.
  6212. CONTINUE.
  6213. ENDIF.
  6214.  
  6215. WHEN 3. "freies Coding
  6216.  
  6217. CASE ls_map_t-element.
  6218.  
  6219. WHEN 'COND_TYPE'.
  6220.  
  6221. es_item_pur_cond_data-cond_type = ls_zlct_opco_type_t-condart_lnl.
  6222.  
  6223. WHEN 'PAYM_RHYTHM'.
  6224.  
  6225. es_item_pur_cond_data-paym_rhythm = map_zcondrth( is_zlctcond_t-zcondrth ).
  6226.  
  6227. WHEN 'PAYM_FORM'.
  6228.  
  6229. es_item_pur_cond_data-paym_form = map_zcondzalw( is_zlctcond_t-zcondzalw ).
  6230.  
  6231. WHEN 'COND_VALUE'.
  6232. *** Prüfen ob Option Kaufoption vorliegt. Das wird nur auf der Kopfebene übertragen. Alle anderen werden auf Positionsebene übertragen.
  6233. IF is_zlctcond_t-zcondart NE mc_condart_pm010.
  6234. WRITE: is_zlctcond_t-zcondwert TO es_item_pur_cond_data-cond_value CURRENCY is_zlctcond_t-zcondcurr.
  6235. ENDIF.
  6236. *>>>>>>>>>>> beg ins Duc 20180921
  6237. WHEN 'VALID_FROM'.
  6238. es_item_pur_cond_data-valid_from = get_valid_from( is_zlctcond_t ).
  6239. *** beg ins JB 20181030
  6240. IF ls_map_t-type_d = abap_true AND es_item_pur_cond_data-valid_from = '00000000'.
  6241. es_item_pur_cond_data-valid_from = ''.
  6242. ENDIF.
  6243. *** end ins JB 20181030
  6244. WHEN 'VALID_TO'.
  6245. es_item_pur_cond_data-valid_to = get_valid_to( is_zlctcond_t ).
  6246. *** beg ins JB 20181030
  6247. IF ls_map_t-type_d = abap_true AND es_item_pur_cond_data-valid_to = '00000000'.
  6248. es_item_pur_cond_data-valid_to = ''.
  6249. ENDIF.
  6250. *** end ins JB 20181030
  6251. *>>>>>>>>>>> end ins Duc 20180921
  6252. ENDCASE.
  6253.  
  6254. ENDCASE.
  6255.  
  6256. ENDLOOP.
  6257.  
  6258. ENDMETHOD.
  6259.  
  6260.  
  6261. * <SIGNATURE>---------------------------------------------------------------------------------------+
  6262. * | Static Public Method ZFICLN_LCT_OUTBD_MAPPER=>MAP_ITEM_PUT
  6263. * +-------------------------------------------------------------------------------------------------+
  6264. * | [--->] IV_SEGMENT TYPE ZLCT_MAP_SEGMENT
  6265. * | [--->] IS_ZLCTOBJECT_T TYPE ZLCTOBJECT_T
  6266. * | [--->] IS_ZLCTOPTION_T TYPE ZLCTOPTION_T
  6267. * | [--->] IS_ZLCTHEADER_T TYPE ZLCTHEADER_T
  6268. * | [--->] IS_ZLCTCONTRACT_T TYPE ZLCTCONTRACT_T
  6269. * | [--->] IS_ZLCTSALE_T TYPE ZLCTSALE_T
  6270. * | [--->] IT_ZLCTSTATUS_T TYPE ZLCTSTATUS_TT
  6271. * | [--->] IT_ZLCTDATE_T TYPE ZLCTDATE_TT
  6272. * | [--->] IT_ZLCTOPTION_T TYPE ZLCTOPTION_TT
  6273. * | [--->] IT_ZLCTPARTREL_T TYPE ZLCTPARTREL_TT
  6274. * | [--->] IT_ZLCTOBJECT_T TYPE ZLCTOBJECT_TT
  6275. * | [--->] IT_ZLCTARO_T TYPE ZLCTARO_TT
  6276. * | [--->] IT_ZLCTCOKSST_T TYPE ZLCTCOKSST_TT
  6277. * | [--->] IT_ZLCTCOND_T TYPE ZLCTCOND_TT
  6278. * | [--->] IT_ZLCTIMAGE_T TYPE ZLCTIMAGE_TT
  6279. * | [--->] IT_ZLCTVALUE_T TYPE ZLCTVALUE_TT
  6280. * | [<---] ES_ITEM_PUT_DATA TYPE ZLCTE1CON_ITEM_PUT
  6281. * +--------------------------------------------------------------------------------------</SIGNATURE>
  6282. METHOD map_item_put.
  6283. *&H***************************************************************
  6284. *&H SAP-Module : FI-LCT *
  6285. *&H Author : S.Kühnel *
  6286. *&H Company/Department: Sopra Steria GmbH *
  6287. *&H Phone : *
  6288. *&H E-Mail : sascha.kuehnel@soprasteria.com *
  6289. *&H Date of creation: 2018-03-01 *
  6290. *&D***************************************************************
  6291. *&D Description : *
  6292. *&D maps item_put segment *
  6293. *&C***************************************************************
  6294. *&C Change history : *
  6295. *&C Developer | Code/Date | Description *
  6296. *&C -------------------------------------------------------------*
  6297. *&C <Name> | <code>.<Date>| <Description> *
  6298. *&C***************************************************************
  6299. DATA: lv_counter TYPE syindex.
  6300.  
  6301. DATA: ls_map_t TYPE zlct_lnl_map_t,
  6302. ls_zlct_opco_type_t TYPE zlct_opco_type_t.
  6303.  
  6304. READ TABLE mt_zlct_opco_type_t INTO ls_zlct_opco_type_t
  6305. WITH KEY segment = iv_segment optart = is_zlctoption_t-zoptart.
  6306.  
  6307. IF sy-subrc <> 0.
  6308. EXIT.
  6309. ENDIF.
  6310.  
  6311. LOOP AT mt_lnl_map_t INTO ls_map_t WHERE segment = iv_segment.
  6312.  
  6313. CASE ls_map_t-element_type.
  6314.  
  6315. WHEN 0 OR 1 OR 2. "Konstante, Struktur, Tabelle
  6316.  
  6317. CALL METHOD zficln_lct_outbd_mapper=>map_lnl_general
  6318. EXPORTING
  6319. iv_segment = iv_segment
  6320. is_map_t = ls_map_t
  6321. is_zlctobject_t = is_zlctobject_t
  6322. is_zlctoption_t = is_zlctoption_t
  6323. is_zlctheader_t = is_zlctheader_t
  6324. is_zlctcontract_t = is_zlctcontract_t
  6325. is_zlctsale_t = is_zlctsale_t
  6326. it_zlctstatus_t = it_zlctstatus_t
  6327. it_zlctdate_t = it_zlctdate_t
  6328. it_zlctoption_t = it_zlctoption_t
  6329. it_zlctpartrel_t = it_zlctpartrel_t
  6330. it_zlctobject_t = it_zlctobject_t
  6331. it_zlctaro_t = it_zlctaro_t
  6332. it_zlctcoksst_t = it_zlctcoksst_t
  6333. it_zlctcond_t = it_zlctcond_t
  6334. it_zlctimage_t = it_zlctimage_t
  6335. it_zlctvalue_t = it_zlctvalue_t
  6336. IMPORTING
  6337. es_data = es_item_put_data
  6338. EXCEPTIONS
  6339. mapping_error = 1
  6340. OTHERS = 2.
  6341. IF sy-subrc <> 0.
  6342. CONTINUE.
  6343. ENDIF.
  6344.  
  6345. WHEN 3. "freies Coding
  6346.  
  6347. CASE ls_map_t-element.
  6348.  
  6349. WHEN 'CA_PU_AMOUNT'.
  6350. *** Prüfen auf Andienungsrecht
  6351. LOOP AT it_zlctcond_t ASSIGNING FIELD-SYMBOL(<ls_zlctcond>) WHERE zcondart = mc_condart_pm009
  6352. AND zcondrth = mc_zcondrth_0100
  6353. AND zoptguid = is_zlctoption_t-zoptguid
  6354. AND zobjzuord = is_zlctoption_t-zobjzuord.
  6355. ADD 1 TO lv_counter.
  6356. ENDLOOP.
  6357. IF lv_counter EQ 1.
  6358. WRITE: <ls_zlctcond>-zcondwert TO es_item_put_data-ca_pu_amount CURRENCY <ls_zlctcond>-zcondcurr.
  6359. ENDIF.
  6360.  
  6361. *** beg ins JB 180911
  6362. WHEN 'CA_PU_EX_OPT_FLAG'.
  6363. IF is_zlctoption_t-zoptreacer = 3.
  6364. es_item_put_data-ca_pu_ex_opt_flag = abap_true.
  6365. ENDIF.
  6366. *** end ins JB 180911
  6367.  
  6368. ENDCASE.
  6369.  
  6370. ENDCASE.
  6371.  
  6372. ENDLOOP.
  6373.  
  6374. ENDMETHOD.
  6375.  
  6376.  
  6377. * <SIGNATURE>---------------------------------------------------------------------------------------+
  6378. * | Instance Public Method ZFICLN_LCT_OUTBD_MAPPER->MAP_ITEM_PUT_COND
  6379. * +-------------------------------------------------------------------------------------------------+
  6380. * | [--->] IV_SEGMENT TYPE ZLCT_MAP_SEGMENT
  6381. * | [--->] IV_PARENT TYPE ZLCT_MAP_SEGMENT
  6382. * | [--->] IS_ZLCTOBJECT_T TYPE ZLCTOBJECT_T
  6383. * | [--->] IS_ZLCTOPTION_T TYPE ZLCTOPTION_T
  6384. * | [--->] IS_ZLCTCOND_T TYPE ZLCTCOND_T
  6385. * | [--->] IS_ZLCTHEADER_T TYPE ZLCTHEADER_T
  6386. * | [--->] IS_ZLCTCONTRACT_T TYPE ZLCTCONTRACT_T
  6387. * | [--->] IS_ZLCTSALE_T TYPE ZLCTSALE_T
  6388. * | [--->] IT_ZLCTSTATUS_T TYPE ZLCTSTATUS_TT
  6389. * | [--->] IT_ZLCTDATE_T TYPE ZLCTDATE_TT
  6390. * | [--->] IT_ZLCTOPTION_T TYPE ZLCTOPTION_TT
  6391. * | [--->] IT_ZLCTPARTREL_T TYPE ZLCTPARTREL_TT
  6392. * | [--->] IT_ZLCTOBJECT_T TYPE ZLCTOBJECT_TT
  6393. * | [--->] IT_ZLCTARO_T TYPE ZLCTARO_TT
  6394. * | [--->] IT_ZLCTCOKSST_T TYPE ZLCTCOKSST_TT
  6395. * | [--->] IT_ZLCTCOND_T TYPE ZLCTCOND_TT
  6396. * | [--->] IT_ZLCTIMAGE_T TYPE ZLCTIMAGE_TT
  6397. * | [--->] IT_ZLCTVALUE_T TYPE ZLCTVALUE_TT
  6398. * | [<---] ES_ITEM_PUT_COND_DATA TYPE ZLCTE1CON_PUT_COND
  6399. * +--------------------------------------------------------------------------------------</SIGNATURE>
  6400. METHOD map_item_put_cond.
  6401. *&H***************************************************************
  6402. *&H SAP-Module : FI-LCT *
  6403. *&H Author : S.Kühnel *
  6404. *&H Company/Department: Sopra Steria GmbH *
  6405. *&H Phone : *
  6406. *&H E-Mail : sascha.kuehnel@soprasteria.com *
  6407. *&H Date of creation: 2018-03-01 *
  6408. *&D***************************************************************
  6409. *&D Description : *
  6410. *&D maps item_put_cond segment *
  6411. *&C***************************************************************
  6412. *&C Change history : *
  6413. *&C Developer | Code/Date | Description *
  6414. *&C -------------------------------------------------------------*
  6415. *&C <Name> | <code>.<Date>| <Description> *
  6416. *&C***************************************************************
  6417. DATA: ls_map_t TYPE zlct_lnl_map_t,
  6418. ls_zlct_opco_type_t TYPE zlct_opco_type_t,
  6419. lv_zahlrhythmus TYPE zlctcondrth.
  6420.  
  6421. IF is_zlctcond_t-zcondrth = '0100'.
  6422. lv_zahlrhythmus = is_zlctcond_t-zcondrth.
  6423. ELSE.
  6424. lv_zahlrhythmus = '0000'.
  6425. ENDIF.
  6426.  
  6427. READ TABLE mt_zlct_opco_type_t INTO ls_zlct_opco_type_t
  6428. WITH KEY segment = iv_parent optart = is_zlctoption_t-zoptart
  6429. condart = is_zlctcond_t-zcondart condrth = lv_zahlrhythmus.
  6430.  
  6431. IF sy-subrc <> 0.
  6432. EXIT.
  6433. ENDIF.
  6434.  
  6435. LOOP AT mt_lnl_map_t INTO ls_map_t WHERE segment = iv_segment.
  6436.  
  6437. CASE ls_map_t-element_type.
  6438.  
  6439. WHEN 0 OR 1 OR 2. "Konstante, Struktur, Tabelle
  6440.  
  6441. CALL METHOD zficln_lct_outbd_mapper=>map_lnl_general
  6442. EXPORTING
  6443. iv_segment = iv_segment
  6444. is_map_t = ls_map_t
  6445. is_zlctobject_t = is_zlctobject_t
  6446. is_zlctoption_t = is_zlctoption_t
  6447. is_zlctcond_t = is_zlctcond_t
  6448. is_zlctheader_t = is_zlctheader_t
  6449. is_zlctcontract_t = is_zlctcontract_t
  6450. is_zlctsale_t = is_zlctsale_t
  6451. it_zlctstatus_t = it_zlctstatus_t
  6452. it_zlctdate_t = it_zlctdate_t
  6453. it_zlctoption_t = it_zlctoption_t
  6454. it_zlctpartrel_t = it_zlctpartrel_t
  6455. it_zlctobject_t = it_zlctobject_t
  6456. it_zlctaro_t = it_zlctaro_t
  6457. it_zlctcoksst_t = it_zlctcoksst_t
  6458. it_zlctcond_t = it_zlctcond_t
  6459. it_zlctimage_t = it_zlctimage_t
  6460. it_zlctvalue_t = it_zlctvalue_t
  6461. IMPORTING
  6462. es_data = es_item_put_cond_data
  6463. EXCEPTIONS
  6464. mapping_error = 1
  6465. OTHERS = 2.
  6466. IF sy-subrc <> 0.
  6467. CONTINUE.
  6468. ENDIF.
  6469.  
  6470. WHEN 3. "freies Coding
  6471.  
  6472. CASE ls_map_t-element.
  6473.  
  6474. WHEN 'COND_TYPE'.
  6475.  
  6476. es_item_put_cond_data-cond_type = ls_zlct_opco_type_t-condart_lnl.
  6477.  
  6478. WHEN 'PAYM_RHYTHM'.
  6479.  
  6480. es_item_put_cond_data-paym_rhythm = map_zcondrth( is_zlctcond_t-zcondrth ).
  6481.  
  6482. WHEN 'PAYM_FORM'.
  6483.  
  6484. es_item_put_cond_data-paym_form = map_zcondzalw( is_zlctcond_t-zcondzalw ).
  6485.  
  6486. WHEN 'COND_VALUE'.
  6487.  
  6488. es_item_put_cond_data-cond_value = map_item_put_cond_value( is_zlctobject_t = is_zlctobject_t
  6489. is_zlctoption_t = is_zlctoption_t
  6490. is_zlctcond_t = is_zlctcond_t ).
  6491. *>>>>>>>>>>> beg ins Duc 20180921
  6492. WHEN 'VALID_FROM'.
  6493. es_item_put_cond_data-valid_from = get_valid_from( is_zlctcond_t ).
  6494. *** beg ins JB 20181030
  6495. IF ls_map_t-type_d = abap_true AND es_item_put_cond_data-valid_from = '00000000'.
  6496. es_item_put_cond_data-valid_from = ''.
  6497. ENDIF.
  6498. *** end ins JB 20181030
  6499. WHEN 'VALID_TO'.
  6500. es_item_put_cond_data-valid_to = get_valid_to( is_zlctcond_t ).
  6501. *** beg ins JB 20181030
  6502. IF ls_map_t-type_d = abap_true AND es_item_put_cond_data-valid_to = '00000000'.
  6503. es_item_put_cond_data-valid_to = ''.
  6504. ENDIF.
  6505. *** end ins JB 20181030
  6506. *>>>>>>>>>>> end ins Duc 20180921
  6507.  
  6508. ENDCASE.
  6509.  
  6510. ENDCASE.
  6511.  
  6512. ENDLOOP.
  6513.  
  6514. ENDMETHOD.
  6515.  
  6516.  
  6517. * <SIGNATURE>---------------------------------------------------------------------------------------+
  6518. * | Instance Private Method ZFICLN_LCT_OUTBD_MAPPER->MAP_ITEM_PUT_COND_VALUE
  6519. * +-------------------------------------------------------------------------------------------------+
  6520. * | [--->] IS_ZLCTOBJECT_T TYPE ZLCTOBJECT_T
  6521. * | [--->] IS_ZLCTOPTION_T TYPE ZLCTOPTION_T
  6522. * | [--->] IS_ZLCTCOND_T TYPE ZLCTCOND_T
  6523. * | [<-()] EV_COND_VALUE TYPE CHAR25
  6524. * +--------------------------------------------------------------------------------------</SIGNATURE>
  6525. METHOD map_item_put_cond_value.
  6526.  
  6527. DATA: lv_counter TYPE syindex.
  6528.  
  6529. *** Übernehmen des Wertes wie ursprünglich konzepiert
  6530. ev_cond_value = is_zlctcond_t-zcondwert.
  6531.  
  6532. *** Prüfen ob die Option Andienungsrecht nur einmal vorliegt.
  6533. *** Dies ist der Fall wenn der Betrag nicht nur auf der Kopfebene übergeben wird.
  6534.  
  6535.  
  6536. * LOOP AT mt_zlctcond_t ASSIGNING FIELD-SYMBOL(<ls_zlctcond>) WHERE zcondart = mc_condart_pm009
  6537. * AND zcondrth = mc_zcondrth_0100
  6538. * AND zoptguid = is_zlctoption_t-zoptguid
  6539. * AND zobjzuord = is_zlctoption_t-zobjzuord.
  6540. * ADD 1 TO lv_counter.
  6541. * ENDLOOP.
  6542. *
  6543. *
  6544. * IF lv_counter gt 1.
  6545. * CLEAR ev_cond_value.
  6546. * ENDIF.
  6547.  
  6548. ENDMETHOD.
  6549.  
  6550.  
  6551. * <SIGNATURE>---------------------------------------------------------------------------------------+
  6552. * | Static Public Method ZFICLN_LCT_OUTBD_MAPPER=>MAP_ITEM_QTY_REDUC
  6553. * +-------------------------------------------------------------------------------------------------+
  6554. * | [--->] IV_SEGMENT TYPE ZLCT_MAP_SEGMENT
  6555. * | [--->] IS_ZLCTOBJECT_T TYPE ZLCTOBJECT_T
  6556. * | [--->] IS_ZLCTHEADER_T TYPE ZLCTHEADER_T
  6557. * | [--->] IS_ZLCTCONTRACT_T TYPE ZLCTCONTRACT_T
  6558. * | [--->] IS_ZLCTSALE_T TYPE ZLCTSALE_T
  6559. * | [--->] IT_ZLCTSTATUS_T TYPE ZLCTSTATUS_TT
  6560. * | [--->] IT_ZLCTDATE_T TYPE ZLCTDATE_TT
  6561. * | [--->] IT_ZLCTOPTION_T TYPE ZLCTOPTION_TT
  6562. * | [--->] IT_ZLCTPARTREL_T TYPE ZLCTPARTREL_TT
  6563. * | [--->] IT_ZLCTOBJECT_T TYPE ZLCTOBJECT_TT
  6564. * | [--->] IT_ZLCTARO_T TYPE ZLCTARO_TT
  6565. * | [--->] IT_ZLCTCOKSST_T TYPE ZLCTCOKSST_TT
  6566. * | [--->] IT_ZLCTCOND_T TYPE ZLCTCOND_TT
  6567. * | [--->] IT_ZLCTIMAGE_T TYPE ZLCTIMAGE_TT
  6568. * | [--->] IT_ZLCTVALUE_T TYPE ZLCTVALUE_TT
  6569. * | [<---] ES_ITEM_QTY_REDUC_DATA TYPE ZLCTE1CON_ITEM_QTY_REDUC
  6570. * +--------------------------------------------------------------------------------------</SIGNATURE>
  6571. METHOD map_item_qty_reduc.
  6572. *&H***************************************************************
  6573. *&H SAP-Module : FI-LCT *
  6574. *&H Author : S.Kühnel *
  6575. *&H Company/Department: Sopra Steria GmbH *
  6576. *&H Phone : *
  6577. *&H E-Mail : sascha.kuehnel@soprasteria.com *
  6578. *&H Date of creation: 2018-03-01 *
  6579. *&D***************************************************************
  6580. *&D Description : *
  6581. *&D maps item_qty_reduc segment *
  6582. *&C***************************************************************
  6583. *&C Change history : *
  6584. *&C Developer | Code/Date | Description *
  6585. *&C -------------------------------------------------------------*
  6586. *&C <Name> | <code>.<Date>| <Description> *
  6587. *&C***************************************************************
  6588. DATA: ls_map_t TYPE zlct_lnl_map_t.
  6589.  
  6590.  
  6591. LOOP AT mt_lnl_map_t INTO ls_map_t WHERE segment = iv_segment.
  6592.  
  6593. CASE ls_map_t-element_type.
  6594.  
  6595. WHEN 0 OR 1 OR 2. "Konstante, Struktur, Tabelle
  6596.  
  6597. CALL METHOD zficln_lct_outbd_mapper=>map_lnl_general
  6598. EXPORTING
  6599. iv_segment = iv_segment
  6600. is_map_t = ls_map_t
  6601. is_zlctobject_t = is_zlctobject_t
  6602. is_zlctheader_t = is_zlctheader_t
  6603. is_zlctcontract_t = is_zlctcontract_t
  6604. is_zlctsale_t = is_zlctsale_t
  6605. it_zlctstatus_t = it_zlctstatus_t
  6606. it_zlctdate_t = it_zlctdate_t
  6607. it_zlctoption_t = it_zlctoption_t
  6608. it_zlctpartrel_t = it_zlctpartrel_t
  6609. it_zlctobject_t = it_zlctobject_t
  6610. it_zlctaro_t = it_zlctaro_t
  6611. it_zlctcoksst_t = it_zlctcoksst_t
  6612. it_zlctcond_t = it_zlctcond_t
  6613. it_zlctimage_t = it_zlctimage_t
  6614. it_zlctvalue_t = it_zlctvalue_t
  6615. IMPORTING
  6616. es_data = es_item_qty_reduc_data
  6617. EXCEPTIONS
  6618. mapping_error = 1
  6619. OTHERS = 2.
  6620. IF sy-subrc <> 0.
  6621. CONTINUE.
  6622. ENDIF.
  6623.  
  6624. WHEN 3. "freies Coding
  6625.  
  6626. CASE ls_map_t-element.
  6627. WHEN 'QUANTITY_REDUC'.
  6628. es_item_qty_reduc_data-quantity_reduc = CHA_QTY_REDUC_DATA( iv_zconres2 = is_zlctobject_t-zconres2 ).
  6629. WHEN OTHERS.
  6630.  
  6631. ENDCASE.
  6632.  
  6633. ENDCASE.
  6634.  
  6635. ENDLOOP.
  6636.  
  6637. ENDMETHOD.
  6638.  
  6639.  
  6640. * <SIGNATURE>---------------------------------------------------------------------------------------+
  6641. * | Static Public Method ZFICLN_LCT_OUTBD_MAPPER=>MAP_ITEM_RETOB
  6642. * +-------------------------------------------------------------------------------------------------+
  6643. * | [--->] IV_SEGMENT TYPE ZLCT_MAP_SEGMENT
  6644. * | [--->] IS_ZLCTOBJECT_T TYPE ZLCTOBJECT_T
  6645. * | [--->] IS_ZLCTHEADER_T TYPE ZLCTHEADER_T
  6646. * | [--->] IS_ZLCTCONTRACT_T TYPE ZLCTCONTRACT_T
  6647. * | [--->] IS_ZLCTSALE_T TYPE ZLCTSALE_T
  6648. * | [--->] IT_ZLCTSTATUS_T TYPE ZLCTSTATUS_TT
  6649. * | [--->] IT_ZLCTDATE_T TYPE ZLCTDATE_TT
  6650. * | [--->] IT_ZLCTOPTION_T TYPE ZLCTOPTION_TT
  6651. * | [--->] IT_ZLCTPARTREL_T TYPE ZLCTPARTREL_TT
  6652. * | [--->] IT_ZLCTOBJECT_T TYPE ZLCTOBJECT_TT
  6653. * | [--->] IT_ZLCTARO_T TYPE ZLCTARO_TT
  6654. * | [--->] IT_ZLCTCOKSST_T TYPE ZLCTCOKSST_TT
  6655. * | [--->] IT_ZLCTCOND_T TYPE ZLCTCOND_TT
  6656. * | [--->] IT_ZLCTIMAGE_T TYPE ZLCTIMAGE_TT
  6657. * | [--->] IT_ZLCTVALUE_T TYPE ZLCTVALUE_TT
  6658. * | [<---] ES_ITEM_RETOB_DATA TYPE ZLCTE1CON_ITEM_RETOB
  6659. * +--------------------------------------------------------------------------------------</SIGNATURE>
  6660. METHOD map_item_retob.
  6661. *&H***************************************************************
  6662. *&H SAP-Module : FI-LCT *
  6663. *&H Author : S.Kühnel *
  6664. *&H Company/Department: Sopra Steria GmbH *
  6665. *&H Phone : *
  6666. *&H E-Mail : sascha.kuehnel@soprasteria.com *
  6667. *&H Date of creation: 2018-03-01 *
  6668. *&D***************************************************************
  6669. *&D Description : *
  6670. *&D maps item_retob segment *
  6671. *&C***************************************************************
  6672. *&C Change history : *
  6673. *&C Developer | Code/Date | Description *
  6674. *&C -------------------------------------------------------------*
  6675. *&C <Name> | <code>.<Date>| <Description> *
  6676. *&C***************************************************************
  6677. DATA: ls_map_t TYPE zlct_lnl_map_t.
  6678.  
  6679. LOOP AT mt_lnl_map_t INTO ls_map_t WHERE segment = iv_segment.
  6680.  
  6681. CASE ls_map_t-element_type.
  6682.  
  6683. WHEN 0 OR 1 OR 2. "Konstante, Struktur, Tabelle
  6684.  
  6685. CALL METHOD zficln_lct_outbd_mapper=>map_lnl_general
  6686. EXPORTING
  6687. iv_segment = iv_segment
  6688. is_map_t = ls_map_t
  6689. is_zlctobject_t = is_zlctobject_t
  6690. is_zlctheader_t = is_zlctheader_t
  6691. is_zlctcontract_t = is_zlctcontract_t
  6692. is_zlctsale_t = is_zlctsale_t
  6693. it_zlctstatus_t = it_zlctstatus_t
  6694. it_zlctdate_t = it_zlctdate_t
  6695. it_zlctoption_t = it_zlctoption_t
  6696. it_zlctpartrel_t = it_zlctpartrel_t
  6697. it_zlctobject_t = it_zlctobject_t
  6698. it_zlctaro_t = it_zlctaro_t
  6699. it_zlctcoksst_t = it_zlctcoksst_t
  6700. it_zlctcond_t = it_zlctcond_t
  6701. it_zlctimage_t = it_zlctimage_t
  6702. it_zlctvalue_t = it_zlctvalue_t
  6703. IMPORTING
  6704. es_data = es_item_retob_data
  6705. EXCEPTIONS
  6706. mapping_error = 1
  6707. OTHERS = 2.
  6708. IF sy-subrc <> 0.
  6709. CONTINUE.
  6710. ENDIF.
  6711.  
  6712. WHEN 3. "freies Coding
  6713.  
  6714. CASE ls_map_t-element.
  6715.  
  6716. WHEN OTHERS.
  6717.  
  6718. ENDCASE.
  6719.  
  6720. ENDCASE.
  6721.  
  6722. ENDLOOP.
  6723.  
  6724. ENDMETHOD.
  6725.  
  6726.  
  6727. * <SIGNATURE>---------------------------------------------------------------------------------------+
  6728. * | Static Public Method ZFICLN_LCT_OUTBD_MAPPER=>MAP_ITEM_RV
  6729. * +-------------------------------------------------------------------------------------------------+
  6730. * | [--->] IV_SEGMENT TYPE ZLCT_MAP_SEGMENT
  6731. * | [--->] IS_ZLCTOBJECT_T TYPE ZLCTOBJECT_T
  6732. * | [--->] IS_ZLCTOPTION_T TYPE ZLCTOPTION_T
  6733. * | [--->] IS_ZLCTHEADER_T TYPE ZLCTHEADER_T
  6734. * | [--->] IS_ZLCTCONTRACT_T TYPE ZLCTCONTRACT_T
  6735. * | [--->] IS_ZLCTSALE_T TYPE ZLCTSALE_T
  6736. * | [--->] IT_ZLCTSTATUS_T TYPE ZLCTSTATUS_TT
  6737. * | [--->] IT_ZLCTDATE_T TYPE ZLCTDATE_TT
  6738. * | [--->] IT_ZLCTOPTION_T TYPE ZLCTOPTION_TT
  6739. * | [--->] IT_ZLCTPARTREL_T TYPE ZLCTPARTREL_TT
  6740. * | [--->] IT_ZLCTOBJECT_T TYPE ZLCTOBJECT_TT
  6741. * | [--->] IT_ZLCTARO_T TYPE ZLCTARO_TT
  6742. * | [--->] IT_ZLCTCOKSST_T TYPE ZLCTCOKSST_TT
  6743. * | [--->] IT_ZLCTCOND_T TYPE ZLCTCOND_TT
  6744. * | [--->] IT_ZLCTIMAGE_T TYPE ZLCTIMAGE_TT
  6745. * | [--->] IT_ZLCTVALUE_T TYPE ZLCTVALUE_TT
  6746. * | [<---] ES_ITEM_RV_DATA TYPE ZLCTE1CON_ITEM_RV
  6747. * +--------------------------------------------------------------------------------------</SIGNATURE>
  6748. METHOD map_item_rv.
  6749. *&H***************************************************************
  6750. *&H SAP-Module : FI-LCT *
  6751. *&H Author : S.Kühnel *
  6752. *&H Company/Department: Sopra Steria GmbH *
  6753. *&H Phone : *
  6754. *&H E-Mail : sascha.kuehnel@soprasteria.com *
  6755. *&H Date of creation: 2018-03-01 *
  6756. *&D***************************************************************
  6757. *&D Description : *
  6758. *&D maps item_rv segment *
  6759. *&C***************************************************************
  6760. *&C Change history : *
  6761. *&C Developer | Code/Date | Description *
  6762. *&C -------------------------------------------------------------*
  6763. *&C <Name> | <code>.<Date>| <Description> *
  6764. *&C***************************************************************
  6765.  
  6766. DATA: lv_counter TYPE syindex.
  6767.  
  6768. DATA: ls_map_t TYPE zlct_lnl_map_t,
  6769. ls_zlct_opco_type_t TYPE zlct_opco_type_t.
  6770.  
  6771. READ TABLE mt_zlct_opco_type_t INTO ls_zlct_opco_type_t
  6772. WITH KEY segment = iv_segment optart = is_zlctoption_t-zoptart.
  6773.  
  6774. IF sy-subrc <> 0.
  6775. EXIT.
  6776. ENDIF.
  6777.  
  6778. LOOP AT mt_lnl_map_t INTO ls_map_t WHERE segment = iv_segment.
  6779.  
  6780. CASE ls_map_t-element_type.
  6781.  
  6782. WHEN 0 OR 1 OR 2. "Konstante, Struktur, Tabelle
  6783.  
  6784. CALL METHOD zficln_lct_outbd_mapper=>map_lnl_general
  6785. EXPORTING
  6786. iv_segment = iv_segment
  6787. is_map_t = ls_map_t
  6788. is_zlctobject_t = is_zlctobject_t
  6789. is_zlctoption_t = is_zlctoption_t
  6790. is_zlctheader_t = is_zlctheader_t
  6791. is_zlctcontract_t = is_zlctcontract_t
  6792. is_zlctsale_t = is_zlctsale_t
  6793. it_zlctstatus_t = it_zlctstatus_t
  6794. it_zlctdate_t = it_zlctdate_t
  6795. it_zlctoption_t = it_zlctoption_t
  6796. it_zlctpartrel_t = it_zlctpartrel_t
  6797. it_zlctobject_t = it_zlctobject_t
  6798. it_zlctaro_t = it_zlctaro_t
  6799. it_zlctcoksst_t = it_zlctcoksst_t
  6800. it_zlctcond_t = it_zlctcond_t
  6801. it_zlctimage_t = it_zlctimage_t
  6802. it_zlctvalue_t = it_zlctvalue_t
  6803. IMPORTING
  6804. es_data = es_item_rv_data
  6805. EXCEPTIONS
  6806. mapping_error = 1
  6807. OTHERS = 2.
  6808. IF sy-subrc <> 0.
  6809. CONTINUE.
  6810. ENDIF.
  6811.  
  6812. WHEN 3. "freies Coding
  6813.  
  6814. CASE ls_map_t-element.
  6815. WHEN 'CA_RVG_AMOUNT'.
  6816. IF is_zlctoption_t-zoptart EQ mc_zoptart_rv01.
  6817. LOOP AT it_zlctcond_t ASSIGNING FIELD-SYMBOL(<ls_zlctcond>) WHERE zcondart = mc_condart_pm008
  6818. AND zcondrth = mc_zcondrth_0100
  6819. AND zoptguid = is_zlctoption_t-zoptguid
  6820. AND zobjzuord = is_zlctoption_t-zobjzuord.
  6821. .
  6822. ADD 1 TO lv_counter.
  6823. ENDLOOP.
  6824. IF lv_counter EQ 1.
  6825. WRITE: <ls_zlctcond>-zcondwert TO es_item_rv_data-ca_rvg_amount CURRENCY <ls_zlctcond>-zcondcurr.
  6826. ENDIF.
  6827. ENDIF.
  6828.  
  6829. WHEN OTHERS.
  6830.  
  6831. ENDCASE.
  6832.  
  6833. ENDCASE.
  6834.  
  6835. ENDLOOP.
  6836.  
  6837. ENDMETHOD.
  6838.  
  6839.  
  6840. * <SIGNATURE>---------------------------------------------------------------------------------------+
  6841. * | Static Public Method ZFICLN_LCT_OUTBD_MAPPER=>MAP_ITEM_RV_COND
  6842. * +-------------------------------------------------------------------------------------------------+
  6843. * | [--->] IV_SEGMENT TYPE ZLCT_MAP_SEGMENT
  6844. * | [--->] IV_PARENT TYPE ZLCT_MAP_SEGMENT
  6845. * | [--->] IS_ZLCTOBJECT_T TYPE ZLCTOBJECT_T
  6846. * | [--->] IS_ZLCTOPTION_T TYPE ZLCTOPTION_T
  6847. * | [--->] IS_ZLCTCOND_T TYPE ZLCTCOND_T
  6848. * | [--->] IS_ZLCTHEADER_T TYPE ZLCTHEADER_T
  6849. * | [--->] IS_ZLCTCONTRACT_T TYPE ZLCTCONTRACT_T
  6850. * | [--->] IS_ZLCTSALE_T TYPE ZLCTSALE_T
  6851. * | [--->] IT_ZLCTSTATUS_T TYPE ZLCTSTATUS_TT
  6852. * | [--->] IT_ZLCTDATE_T TYPE ZLCTDATE_TT
  6853. * | [--->] IT_ZLCTOPTION_T TYPE ZLCTOPTION_TT
  6854. * | [--->] IT_ZLCTPARTREL_T TYPE ZLCTPARTREL_TT
  6855. * | [--->] IT_ZLCTOBJECT_T TYPE ZLCTOBJECT_TT
  6856. * | [--->] IT_ZLCTARO_T TYPE ZLCTARO_TT
  6857. * | [--->] IT_ZLCTCOKSST_T TYPE ZLCTCOKSST_TT
  6858. * | [--->] IT_ZLCTCOND_T TYPE ZLCTCOND_TT
  6859. * | [--->] IT_ZLCTIMAGE_T TYPE ZLCTIMAGE_TT
  6860. * | [--->] IT_ZLCTVALUE_T TYPE ZLCTVALUE_TT
  6861. * | [<---] ES_ITEM_RV_COND_DATA TYPE ZLCTE1CON_RV_COND
  6862. * +--------------------------------------------------------------------------------------</SIGNATURE>
  6863. METHOD map_item_rv_cond.
  6864. *&H***************************************************************
  6865. *&H SAP-Module : FI-LCT *
  6866. *&H Author : S.Kühnel *
  6867. *&H Company/Department: Sopra Steria GmbH *
  6868. *&H Phone : *
  6869. *&H E-Mail : sascha.kuehnel@soprasteria.com *
  6870. *&H Date of creation: 2018-03-01 *
  6871. *&D***************************************************************
  6872. *&D Description : *
  6873. *&D maps item_rv_cond segment *
  6874. *&C***************************************************************
  6875. *&C Change history : *
  6876. *&C Developer | Code/Date | Description *
  6877. *&C -------------------------------------------------------------*
  6878. *&C <Name> | <code>.<Date>| <Description> *
  6879. *&C***************************************************************
  6880. DATA: ls_map_t TYPE zlct_lnl_map_t,
  6881. ls_zlct_opco_type_t TYPE zlct_opco_type_t,
  6882. lv_zahlrhythmus TYPE zlctcondrth.
  6883.  
  6884. IF is_zlctcond_t-zcondrth = '0100'.
  6885. lv_zahlrhythmus = is_zlctcond_t-zcondrth.
  6886. ELSE.
  6887. lv_zahlrhythmus = '0000'.
  6888. ENDIF.
  6889.  
  6890. READ TABLE mt_zlct_opco_type_t INTO ls_zlct_opco_type_t
  6891. WITH KEY segment = iv_parent optart = is_zlctoption_t-zoptart
  6892. condart = is_zlctcond_t-zcondart condrth = lv_zahlrhythmus.
  6893.  
  6894. IF sy-subrc <> 0.
  6895. EXIT.
  6896. ENDIF.
  6897.  
  6898.  
  6899. LOOP AT mt_lnl_map_t INTO ls_map_t WHERE segment = iv_segment.
  6900.  
  6901. CASE ls_map_t-element_type.
  6902.  
  6903. WHEN 0 OR 1 OR 2. "Konstante, Struktur, Tabelle
  6904.  
  6905. CALL METHOD zficln_lct_outbd_mapper=>map_lnl_general
  6906. EXPORTING
  6907. iv_segment = iv_segment
  6908. is_map_t = ls_map_t
  6909. is_zlctobject_t = is_zlctobject_t
  6910. is_zlctoption_t = is_zlctoption_t
  6911. is_zlctcond_t = is_zlctcond_t
  6912. is_zlctheader_t = is_zlctheader_t
  6913. is_zlctcontract_t = is_zlctcontract_t
  6914. is_zlctsale_t = is_zlctsale_t
  6915. it_zlctstatus_t = it_zlctstatus_t
  6916. it_zlctdate_t = it_zlctdate_t
  6917. it_zlctoption_t = it_zlctoption_t
  6918. it_zlctpartrel_t = it_zlctpartrel_t
  6919. it_zlctobject_t = it_zlctobject_t
  6920. it_zlctaro_t = it_zlctaro_t
  6921. it_zlctcoksst_t = it_zlctcoksst_t
  6922. it_zlctcond_t = it_zlctcond_t
  6923. it_zlctimage_t = it_zlctimage_t
  6924. it_zlctvalue_t = it_zlctvalue_t
  6925. IMPORTING
  6926. es_data = es_item_rv_cond_data
  6927. EXCEPTIONS
  6928. mapping_error = 1
  6929. OTHERS = 2.
  6930. IF sy-subrc <> 0.
  6931. CONTINUE.
  6932. ENDIF.
  6933.  
  6934. WHEN 3. "freies Coding
  6935.  
  6936. CASE ls_map_t-element.
  6937.  
  6938. WHEN 'COND_TYPE'.
  6939.  
  6940. es_item_rv_cond_data-cond_type = ls_zlct_opco_type_t-condart_lnl.
  6941.  
  6942. WHEN 'PAYM_RHYTHM'.
  6943.  
  6944. es_item_rv_cond_data-paym_rhythm = map_zcondrth( is_zlctcond_t-zcondrth ).
  6945.  
  6946. WHEN 'PAYM_FORM'.
  6947.  
  6948. es_item_rv_cond_data-paym_form = map_zcondzalw( is_zlctcond_t-zcondzalw ).
  6949. *>>>>>>>>>>> beg ins Duc 20180921
  6950. WHEN 'VALID_FROM'.
  6951. es_item_rv_cond_data-valid_from = get_valid_from( is_zlctcond_t ).
  6952. *** beg ins JB 20181030
  6953. IF ls_map_t-type_d = abap_true AND es_item_rv_cond_data-valid_from = '00000000'.
  6954. es_item_rv_cond_data-valid_from = ''.
  6955. ENDIF.
  6956. *** end ins JB 20181030
  6957. WHEN 'VALID_TO'.
  6958. es_item_rv_cond_data-valid_to = get_valid_to( is_zlctcond_t ).
  6959. *** beg ins JB 20181030
  6960. IF ls_map_t-type_d = abap_true AND es_item_rv_cond_data-valid_to = '00000000'.
  6961. es_item_rv_cond_data-valid_to = ''.
  6962. ENDIF.
  6963. *** end ins JB 20181030
  6964. *>>>>>>>>>>> end ins Duc 20180921
  6965.  
  6966. ENDCASE.
  6967.  
  6968. ENDCASE.
  6969.  
  6970. ENDLOOP.
  6971.  
  6972. ENDMETHOD.
  6973.  
  6974.  
  6975. * <SIGNATURE>---------------------------------------------------------------------------------------+
  6976. * | Static Public Method ZFICLN_LCT_OUTBD_MAPPER=>MAP_ITEM_TERM
  6977. * +-------------------------------------------------------------------------------------------------+
  6978. * | [--->] IV_SEGMENT TYPE ZLCT_MAP_SEGMENT
  6979. * | [--->] IS_ZLCTOBJECT_T TYPE ZLCTOBJECT_T
  6980. * | [--->] IS_ZLCTHEADER_T TYPE ZLCTHEADER_T
  6981. * | [--->] IS_ZLCTCONTRACT_T TYPE ZLCTCONTRACT_T
  6982. * | [--->] IS_ZLCTSALE_T TYPE ZLCTSALE_T
  6983. * | [--->] IT_ZLCTSTATUS_T TYPE ZLCTSTATUS_TT
  6984. * | [--->] IT_ZLCTDATE_T TYPE ZLCTDATE_TT
  6985. * | [--->] IT_ZLCTOPTION_T TYPE ZLCTOPTION_TT
  6986. * | [--->] IT_ZLCTPARTREL_T TYPE ZLCTPARTREL_TT
  6987. * | [--->] IT_ZLCTOBJECT_T TYPE ZLCTOBJECT_TT
  6988. * | [--->] IT_ZLCTARO_T TYPE ZLCTARO_TT
  6989. * | [--->] IT_ZLCTCOKSST_T TYPE ZLCTCOKSST_TT
  6990. * | [--->] IT_ZLCTCOND_T TYPE ZLCTCOND_TT
  6991. * | [--->] IT_ZLCTIMAGE_T TYPE ZLCTIMAGE_TT
  6992. * | [--->] IT_ZLCTVALUE_T TYPE ZLCTVALUE_TT
  6993. * | [<---] ES_ITEM_TERM TYPE ZLCTE1CON_ITEM_TERM
  6994. * +--------------------------------------------------------------------------------------</SIGNATURE>
  6995. METHOD map_item_term.
  6996. *&H***************************************************************
  6997. *&H SAP-Module : FI-LCT *
  6998. *&H Author : S.Kühnel *
  6999. *&H Company/Department: Sopra Steria GmbH *
  7000. *&H Phone : *
  7001. *&H E-Mail : sascha.kuehnel@soprasteria.com *
  7002. *&H Date of creation: 2018-03-01 *
  7003. *&D***************************************************************
  7004. *&D Description : *
  7005. *&D maps item_val_var segment *
  7006. *&C***************************************************************
  7007. *&C Change history : *
  7008. *&C Developer | Code/Date | Description *
  7009. *&C -------------------------------------------------------------*
  7010. *&C <Name> | <code>.<Date>| <Description> *
  7011. *&C***************************************************************
  7012.  
  7013. DATA: lc_zdatart_usdur TYPE zlctdatart VALUE 'USDUR',
  7014. lc_zdatart_gzidur TYPE zlctdatart VALUE 'GZIDUR'.
  7015.  
  7016. FIELD-SYMBOLS: <ls_zlctdate_t> TYPE zlctdate_t.
  7017.  
  7018.  
  7019. LOOP AT mt_lnl_map_t ASSIGNING FIELD-SYMBOL(<ls_map_t>) WHERE segment = iv_segment.
  7020.  
  7021. CASE <ls_map_t>-element_type.
  7022.  
  7023. WHEN 0 OR 1 OR 2. "Konstante, Struktur, Tabelle
  7024.  
  7025. CALL METHOD zficln_lct_outbd_mapper=>map_lnl_general
  7026. EXPORTING
  7027. iv_segment = iv_segment
  7028. is_map_t = <ls_map_t>
  7029. is_zlctobject_t = is_zlctobject_t
  7030. is_zlctheader_t = is_zlctheader_t
  7031. is_zlctcontract_t = is_zlctcontract_t
  7032. is_zlctsale_t = is_zlctsale_t
  7033. it_zlctstatus_t = it_zlctstatus_t
  7034. it_zlctdate_t = it_zlctdate_t
  7035. it_zlctoption_t = it_zlctoption_t
  7036. it_zlctpartrel_t = it_zlctpartrel_t
  7037. it_zlctobject_t = it_zlctobject_t
  7038. it_zlctaro_t = it_zlctaro_t
  7039. it_zlctcoksst_t = it_zlctcoksst_t
  7040. it_zlctcond_t = it_zlctcond_t
  7041. it_zlctimage_t = it_zlctimage_t
  7042. it_zlctvalue_t = it_zlctvalue_t
  7043. IMPORTING
  7044. es_data = es_item_term
  7045. EXCEPTIONS
  7046. mapping_error = 1
  7047. OTHERS = 2.
  7048. IF sy-subrc <> 0.
  7049. CONTINUE.
  7050. ENDIF.
  7051.  
  7052. WHEN 3. "freies Coding
  7053.  
  7054. CASE <ls_map_t>-element.
  7055. WHEN 'TERM_DATE'.
  7056. CASE is_zlctobject_t-zobjgrp3.
  7057. WHEN 'T1'
  7058. OR 'T2'
  7059. OR 'T3'
  7060. OR 'T4'.
  7061. LOOP AT it_zlctdate_t ASSIGNING <ls_zlctdate_t> WHERE zobjzuord = is_zlctobject_t-zobjid
  7062. AND zdatart = lc_zdatart_usdur.
  7063. es_item_term-term_date = <ls_zlctdate_t>-zdatebis.
  7064. ENDLOOP.
  7065. WHEN 'T5'.
  7066. LOOP AT it_zlctdate_t ASSIGNING <ls_zlctdate_t> WHERE zobjzuord = is_zlctobject_t-zobjid
  7067. AND zdatart = lc_zdatart_gzidur.
  7068. es_item_term-term_date = <ls_zlctdate_t>-zdatebis.
  7069. ENDLOOP.
  7070.  
  7071. ENDCASE.
  7072. ENDCASE.
  7073.  
  7074. ENDCASE.
  7075.  
  7076. ENDLOOP. "mt_lnl_map_t
  7077.  
  7078. ENDMETHOD.
  7079.  
  7080.  
  7081. * <SIGNATURE>---------------------------------------------------------------------------------------+
  7082. * | Static Public Method ZFICLN_LCT_OUTBD_MAPPER=>MAP_ITEM_TO
  7083. * +-------------------------------------------------------------------------------------------------+
  7084. * | [--->] IV_SEGMENT TYPE ZLCT_MAP_SEGMENT
  7085. * | [--->] IS_ZLCTOBJECT_T TYPE ZLCTOBJECT_T
  7086. * | [--->] IS_ZLCTOPTION_T TYPE ZLCTOPTION_T
  7087. * | [--->] IS_ZLCTHEADER_T TYPE ZLCTHEADER_T
  7088. * | [--->] IS_ZLCTCONTRACT_T TYPE ZLCTCONTRACT_T
  7089. * | [--->] IS_ZLCTSALE_T TYPE ZLCTSALE_T
  7090. * | [--->] IT_ZLCTSTATUS_T TYPE ZLCTSTATUS_TT
  7091. * | [--->] IT_ZLCTDATE_T TYPE ZLCTDATE_TT
  7092. * | [--->] IT_ZLCTOPTION_T TYPE ZLCTOPTION_TT
  7093. * | [--->] IT_ZLCTPARTREL_T TYPE ZLCTPARTREL_TT
  7094. * | [--->] IT_ZLCTOBJECT_T TYPE ZLCTOBJECT_TT
  7095. * | [--->] IT_ZLCTARO_T TYPE ZLCTARO_TT
  7096. * | [--->] IT_ZLCTCOKSST_T TYPE ZLCTCOKSST_TT
  7097. * | [--->] IT_ZLCTCOND_T TYPE ZLCTCOND_TT
  7098. * | [--->] IT_ZLCTIMAGE_T TYPE ZLCTIMAGE_TT
  7099. * | [--->] IT_ZLCTVALUE_T TYPE ZLCTVALUE_TT
  7100. * | [<---] ES_ITEM_TO_DATA TYPE ZLCTE1CON_ITEM_TO
  7101. * +--------------------------------------------------------------------------------------</SIGNATURE>
  7102. METHOD map_item_to.
  7103. *&H***************************************************************
  7104. *&H SAP-Module : FI-LCT *
  7105. *&H Author : S.Kühnel *
  7106. *&H Company/Department: Sopra Steria GmbH *
  7107. *&H Phone : *
  7108. *&H E-Mail : sascha.kuehnel@soprasteria.com *
  7109. *&H Date of creation: 2018-03-01 *
  7110. *&D***************************************************************
  7111. *&D Description : *
  7112. *&D maps item_to segment *
  7113. *&C***************************************************************
  7114. *&C Change history : *
  7115. *&C Developer | Code/Date | Description *
  7116. *&C -------------------------------------------------------------*
  7117. *&C <Name> | <code>.<Date>| <Description> *
  7118. *&C***************************************************************
  7119. DATA: lc_to01 TYPE c LENGTH 4 VALUE 'TO01',
  7120. lc_to02 TYPE c LENGTH 4 VALUE 'TO02',
  7121. lc_to03 TYPE c LENGTH 4 VALUE 'TO03',
  7122. lc_to10 TYPE c LENGTH 4 VALUE 'TO10',
  7123. lc_to11 TYPE c LENGTH 4 VALUE 'TO11',
  7124. lc_to12 TYPE c LENGTH 4 VALUE 'TO12',
  7125. lc_to_a TYPE c LENGTH 1 VALUE 'A',
  7126. lc_to_b TYPE c LENGTH 1 VALUE 'B'.
  7127.  
  7128.  
  7129. DATA: lv_counter TYPE syindex.
  7130.  
  7131. DATA: ls_map_t TYPE zlct_lnl_map_t,
  7132. ls_zlct_opco_type_t TYPE zlct_opco_type_t,
  7133. lv_zahlrhythmus TYPE zlctcondrth,
  7134. ls_zlctcond TYPE zlctcond_t,
  7135. ls_zlctcond_one TYPE zlctcond_t,
  7136. lv_item_count TYPE i.
  7137.  
  7138. READ TABLE mt_zlct_opco_type_t INTO ls_zlct_opco_type_t
  7139. WITH KEY segment = iv_segment optart = is_zlctoption_t-zoptart.
  7140.  
  7141. IF sy-subrc <> 0.
  7142. EXIT.
  7143. ENDIF.
  7144.  
  7145. LOOP AT mt_lnl_map_t INTO ls_map_t WHERE segment = iv_segment.
  7146.  
  7147. CASE ls_map_t-element_type.
  7148.  
  7149. WHEN 0 OR 1 OR 2. "Konstante, Struktur, Tabelle
  7150.  
  7151. CALL METHOD zficln_lct_outbd_mapper=>map_lnl_general
  7152. EXPORTING
  7153. iv_segment = iv_segment
  7154. is_map_t = ls_map_t
  7155. is_zlctobject_t = is_zlctobject_t
  7156. is_zlctoption_t = is_zlctoption_t
  7157. is_zlctheader_t = is_zlctheader_t
  7158. is_zlctcontract_t = is_zlctcontract_t
  7159. is_zlctsale_t = is_zlctsale_t
  7160. it_zlctstatus_t = it_zlctstatus_t
  7161. it_zlctdate_t = it_zlctdate_t
  7162. it_zlctoption_t = it_zlctoption_t
  7163. it_zlctpartrel_t = it_zlctpartrel_t
  7164. it_zlctobject_t = it_zlctobject_t
  7165. it_zlctaro_t = it_zlctaro_t
  7166. it_zlctcoksst_t = it_zlctcoksst_t
  7167. it_zlctcond_t = it_zlctcond_t
  7168. it_zlctimage_t = it_zlctimage_t
  7169. it_zlctvalue_t = it_zlctvalue_t
  7170. IMPORTING
  7171. es_data = es_item_to_data
  7172. EXCEPTIONS
  7173. mapping_error = 1
  7174. OTHERS = 2.
  7175. IF sy-subrc <> 0.
  7176. CONTINUE.
  7177. ENDIF.
  7178.  
  7179. WHEN 3. "freies Coding
  7180.  
  7181. CASE ls_map_t-element.
  7182.  
  7183. WHEN 'CA_TO_PENALTY_DATE'.
  7184.  
  7185. LOOP AT it_zlctcond_t INTO ls_zlctcond WHERE zoptguid = is_zlctoption_t-zoptguid.
  7186. CLEAR lv_zahlrhythmus.
  7187. IF ls_zlctcond-zcondrth = mc_zcondrth_0100.
  7188. lv_zahlrhythmus = ls_zlctcond-zcondrth.
  7189. ELSE.
  7190. lv_zahlrhythmus = '0000'.
  7191. ENDIF.
  7192.  
  7193. CLEAR ls_zlct_opco_type_t.
  7194. READ TABLE mt_zlct_opco_type_t INTO ls_zlct_opco_type_t
  7195. WITH KEY segment = iv_segment optart = is_zlctoption_t-zoptart
  7196. condart = ls_zlctcond-zcondart condrth = lv_zahlrhythmus.
  7197.  
  7198. IF sy-subrc = 0.
  7199. CLEAR ls_zlctcond_one.
  7200. ls_zlctcond_one = ls_zlctcond.
  7201. ADD 1 TO lv_item_count.
  7202. ENDIF.
  7203.  
  7204. ENDLOOP.
  7205.  
  7206. IF lv_item_count = 1.
  7207. es_item_to_data-ca_to_penalty_date = ls_zlctcond_one-zcondexdat.
  7208. ENDIF.
  7209.  
  7210. IF es_item_to_data-ca_to_penalty_date = '00000000'.
  7211. es_item_to_data-ca_to_penalty_date = ''.
  7212. ENDIF.
  7213.  
  7214. WHEN 'CA_TO_PARTNER'.
  7215.  
  7216. CASE is_zlctoption_t-zoptart.
  7217. WHEN lc_to01 OR lc_to02 OR lc_to03.
  7218. es_item_to_data-ca_to_partner = lc_to_a.
  7219. WHEN lc_to10 OR lc_to11 OR lc_to12.
  7220. es_item_to_data-ca_to_partner = lc_to_b.
  7221. ENDCASE.
  7222. WHEN 'CA_TO_PENALTY'.
  7223. *** Prüfen Optionsart auf TO01. -> Es kann nur als Einmalzahlung auftreten.
  7224. IF is_zlctoption_t-zoptart EQ lc_to01.
  7225. *** Prüfen auf Vertragsstrafe
  7226. LOOP AT it_zlctcond_t ASSIGNING FIELD-SYMBOL(<ls_zlctcond>) WHERE zcondart = mc_condart_pm005
  7227. AND zcondrth = mc_zcondrth_0100 " Prüfung der Einmalzahlung
  7228. AND zoptguid = is_zlctoption_t-zoptguid
  7229. AND zobjzuord = is_zlctoption_t-zobjzuord.
  7230. ADD 1 TO lv_counter.
  7231. ENDLOOP.
  7232. IF lv_counter EQ 1.
  7233. WRITE: <ls_zlctcond>-zcondwert TO es_item_to_data-ca_to_penalty CURRENCY <ls_zlctcond>-zcondcurr.
  7234. ENDIF.
  7235. ENDIF.
  7236.  
  7237. ENDCASE.
  7238.  
  7239. ENDCASE.
  7240.  
  7241. ENDLOOP.
  7242.  
  7243. ENDMETHOD.
  7244.  
  7245.  
  7246. * <SIGNATURE>---------------------------------------------------------------------------------------+
  7247. * | Static Public Method ZFICLN_LCT_OUTBD_MAPPER=>MAP_ITEM_TO_COND
  7248. * +-------------------------------------------------------------------------------------------------+
  7249. * | [--->] IV_SEGMENT TYPE ZLCT_MAP_SEGMENT
  7250. * | [--->] IV_PARENT TYPE ZLCT_MAP_SEGMENT
  7251. * | [--->] IS_ZLCTOBJECT_T TYPE ZLCTOBJECT_T
  7252. * | [--->] IS_ZLCTOPTION_T TYPE ZLCTOPTION_T
  7253. * | [--->] IS_ZLCTCOND_T TYPE ZLCTCOND_T
  7254. * | [--->] IS_ZLCTHEADER_T TYPE ZLCTHEADER_T
  7255. * | [--->] IS_ZLCTCONTRACT_T TYPE ZLCTCONTRACT_T
  7256. * | [--->] IS_ZLCTSALE_T TYPE ZLCTSALE_T
  7257. * | [--->] IT_ZLCTSTATUS_T TYPE ZLCTSTATUS_TT
  7258. * | [--->] IT_ZLCTDATE_T TYPE ZLCTDATE_TT
  7259. * | [--->] IT_ZLCTOPTION_T TYPE ZLCTOPTION_TT
  7260. * | [--->] IT_ZLCTPARTREL_T TYPE ZLCTPARTREL_TT
  7261. * | [--->] IT_ZLCTOBJECT_T TYPE ZLCTOBJECT_TT
  7262. * | [--->] IT_ZLCTARO_T TYPE ZLCTARO_TT
  7263. * | [--->] IT_ZLCTCOKSST_T TYPE ZLCTCOKSST_TT
  7264. * | [--->] IT_ZLCTCOND_T TYPE ZLCTCOND_TT
  7265. * | [--->] IT_ZLCTIMAGE_T TYPE ZLCTIMAGE_TT
  7266. * | [--->] IT_ZLCTVALUE_T TYPE ZLCTVALUE_TT
  7267. * | [<---] ES_ITEM_TO_COND_DATA TYPE ZLCTE1CON_TO_COND
  7268. * +--------------------------------------------------------------------------------------</SIGNATURE>
  7269. METHOD map_item_to_cond.
  7270. *&H***************************************************************
  7271. *&H SAP-Module : FI-LCT *
  7272. *&H Author : S.Kühnel *
  7273. *&H Company/Department: Sopra Steria GmbH *
  7274. *&H Phone : *
  7275. *&H E-Mail : sascha.kuehnel@soprasteria.com *
  7276. *&H Date of creation: 2018-03-01 *
  7277. *&D***************************************************************
  7278. *&D Description : *
  7279. *&D maps item_to_cond segment *
  7280. *&C***************************************************************
  7281. *&C Change history : *
  7282. *&C Developer | Code/Date | Description *
  7283. *&C -------------------------------------------------------------*
  7284. *&C <Name> | <code>.<Date>| <Description> *
  7285. *&C***************************************************************
  7286. DATA: ls_map_t TYPE zlct_lnl_map_t,
  7287. ls_zlct_opco_type_t TYPE zlct_opco_type_t,
  7288. lv_zahlrhythmus TYPE zlctcondrth.
  7289.  
  7290. IF is_zlctcond_t-zcondrth = '0100'.
  7291. lv_zahlrhythmus = is_zlctcond_t-zcondrth.
  7292. ELSE.
  7293. lv_zahlrhythmus = '0000'.
  7294. ENDIF.
  7295.  
  7296. READ TABLE mt_zlct_opco_type_t INTO ls_zlct_opco_type_t
  7297. WITH KEY segment = iv_parent optart = is_zlctoption_t-zoptart
  7298. condart = is_zlctcond_t-zcondart condrth = lv_zahlrhythmus.
  7299.  
  7300. IF sy-subrc <> 0.
  7301. EXIT.
  7302. ENDIF.
  7303.  
  7304. LOOP AT mt_lnl_map_t INTO ls_map_t WHERE segment = iv_segment.
  7305.  
  7306. CASE ls_map_t-element_type.
  7307.  
  7308. WHEN 0 OR 1 OR 2. "Konstante, Struktur, Tabelle
  7309.  
  7310. CALL METHOD zficln_lct_outbd_mapper=>map_lnl_general
  7311. EXPORTING
  7312. iv_segment = iv_segment
  7313. is_map_t = ls_map_t
  7314. is_zlctobject_t = is_zlctobject_t
  7315. is_zlctoption_t = is_zlctoption_t
  7316. is_zlctcond_t = is_zlctcond_t
  7317. is_zlctheader_t = is_zlctheader_t
  7318. is_zlctcontract_t = is_zlctcontract_t
  7319. is_zlctsale_t = is_zlctsale_t
  7320. it_zlctstatus_t = it_zlctstatus_t
  7321. it_zlctdate_t = it_zlctdate_t
  7322. it_zlctoption_t = it_zlctoption_t
  7323. it_zlctpartrel_t = it_zlctpartrel_t
  7324. it_zlctobject_t = it_zlctobject_t
  7325. it_zlctaro_t = it_zlctaro_t
  7326. it_zlctcoksst_t = it_zlctcoksst_t
  7327. it_zlctcond_t = it_zlctcond_t
  7328. it_zlctimage_t = it_zlctimage_t
  7329. it_zlctvalue_t = it_zlctvalue_t
  7330. IMPORTING
  7331. es_data = es_item_to_cond_data
  7332. EXCEPTIONS
  7333. mapping_error = 1
  7334. OTHERS = 2.
  7335. IF sy-subrc <> 0.
  7336. CONTINUE.
  7337. ENDIF.
  7338.  
  7339. WHEN 3. "freies Coding
  7340.  
  7341. CASE ls_map_t-element.
  7342.  
  7343. WHEN 'COND_TYPE'.
  7344.  
  7345. es_item_to_cond_data-cond_type = ls_zlct_opco_type_t-condart_lnl.
  7346.  
  7347. WHEN 'PAYM_RHYTHM'.
  7348.  
  7349. es_item_to_cond_data-paym_rhythm = map_zcondrth( is_zlctcond_t-zcondrth ).
  7350.  
  7351. WHEN 'PAYM_FORM'.
  7352.  
  7353. es_item_to_cond_data-paym_form = map_zcondzalw( is_zlctcond_t-zcondzalw ).
  7354.  
  7355. WHEN 'COND_VALUE'.
  7356.  
  7357. *** Ursprüngliche ungeprüfte Datenübernahme
  7358. es_item_to_cond_data-cond_value = is_zlctcond_t-zcondwert.
  7359.  
  7360. *>>>>>>>>>>> beg ins Duc 20180921
  7361. WHEN 'VALID_FROM'.
  7362. es_item_to_cond_data-valid_from = get_valid_from( is_zlctcond_t ).
  7363. *** beg ins JB 20181030
  7364. IF ls_map_t-type_d = abap_true AND es_item_to_cond_data-valid_from = '00000000'.
  7365. es_item_to_cond_data-valid_from = ''.
  7366. ENDIF.
  7367. *** end ins JB 20181030
  7368. WHEN 'VALID_TO'.
  7369. es_item_to_cond_data-valid_to = get_valid_to( is_zlctcond_t ).
  7370. *** beg ins JB 20181030
  7371. IF ls_map_t-type_d = abap_true AND es_item_to_cond_data-valid_to = '00000000'.
  7372. es_item_to_cond_data-valid_to = ''.
  7373. ENDIF.
  7374. *** end ins JB 20181030
  7375. *>>>>>>>>>>> end ins Duc 20180921
  7376.  
  7377. ENDCASE.
  7378.  
  7379. ENDCASE.
  7380.  
  7381. ENDLOOP.
  7382.  
  7383. ENDMETHOD.
  7384.  
  7385.  
  7386. * <SIGNATURE>---------------------------------------------------------------------------------------+
  7387. * | Static Public Method ZFICLN_LCT_OUTBD_MAPPER=>MAP_ITEM_VAL_VAR
  7388. * +-------------------------------------------------------------------------------------------------+
  7389. * | [--->] IV_SEGMENT TYPE ZLCT_MAP_SEGMENT
  7390. * | [--->] IS_ZLCTOBJECT_T TYPE ZLCTOBJECT_T
  7391. * | [--->] IS_ZLCTHEADER_T TYPE ZLCTHEADER_T
  7392. * | [--->] IS_ZLCTCONTRACT_T TYPE ZLCTCONTRACT_T
  7393. * | [--->] IS_ZLCTSALE_T TYPE ZLCTSALE_T
  7394. * | [--->] IT_ZLCTSTATUS_T TYPE ZLCTSTATUS_TT
  7395. * | [--->] IT_ZLCTDATE_T TYPE ZLCTDATE_TT
  7396. * | [--->] IT_ZLCTOPTION_T TYPE ZLCTOPTION_TT
  7397. * | [--->] IT_ZLCTPARTREL_T TYPE ZLCTPARTREL_TT
  7398. * | [--->] IT_ZLCTOBJECT_T TYPE ZLCTOBJECT_TT
  7399. * | [--->] IT_ZLCTARO_T TYPE ZLCTARO_TT
  7400. * | [--->] IT_ZLCTCOKSST_T TYPE ZLCTCOKSST_TT
  7401. * | [--->] IT_ZLCTCOND_T TYPE ZLCTCOND_TT
  7402. * | [--->] IT_ZLCTIMAGE_T TYPE ZLCTIMAGE_TT
  7403. * | [--->] IT_ZLCTVALUE_T TYPE ZLCTVALUE_TT
  7404. * | [<---] ES_ITEM_VAL_VAR_DATA TYPE ZLCTE1CON_ITEM_VAL_VAR
  7405. * +--------------------------------------------------------------------------------------</SIGNATURE>
  7406. METHOD map_item_val_var.
  7407. *&H***************************************************************
  7408. *&H SAP-Module : FI-LCT *
  7409. *&H Author : S.Kühnel *
  7410. *&H Company/Department: Sopra Steria GmbH *
  7411. *&H Phone : *
  7412. *&H E-Mail : sascha.kuehnel@soprasteria.com *
  7413. *&H Date of creation: 2018-03-01 *
  7414. *&D***************************************************************
  7415. *&D Description : *
  7416. *&D maps item_val_var segment *
  7417. *&C***************************************************************
  7418. *&C Change history : *
  7419. *&C Developer | Code/Date | Description *
  7420. *&C -------------------------------------------------------------*
  7421. *&C <Name> | <code>.<Date>| <Description> *
  7422. *&C***************************************************************
  7423.  
  7424. DATA: ls_map_t TYPE zlct_lnl_map_t.
  7425.  
  7426. LOOP AT mt_lnl_map_t INTO ls_map_t WHERE segment = iv_segment.
  7427.  
  7428. CASE ls_map_t-element_type.
  7429.  
  7430. WHEN 0 OR 1 OR 2. "Konstante, Struktur, Tabelle
  7431.  
  7432. CALL METHOD zficln_lct_outbd_mapper=>map_lnl_general
  7433. EXPORTING
  7434. iv_segment = iv_segment
  7435. is_map_t = ls_map_t
  7436. is_zlctobject_t = is_zlctobject_t
  7437. is_zlctheader_t = is_zlctheader_t
  7438. is_zlctcontract_t = is_zlctcontract_t
  7439. is_zlctsale_t = is_zlctsale_t
  7440. it_zlctstatus_t = it_zlctstatus_t
  7441. it_zlctdate_t = it_zlctdate_t
  7442. it_zlctoption_t = it_zlctoption_t
  7443. it_zlctpartrel_t = it_zlctpartrel_t
  7444. it_zlctobject_t = it_zlctobject_t
  7445. it_zlctaro_t = it_zlctaro_t
  7446. it_zlctcoksst_t = it_zlctcoksst_t
  7447. it_zlctcond_t = it_zlctcond_t
  7448. it_zlctimage_t = it_zlctimage_t
  7449. it_zlctvalue_t = it_zlctvalue_t
  7450. IMPORTING
  7451. es_data = es_item_val_var_data
  7452. EXCEPTIONS
  7453. mapping_error = 1
  7454. OTHERS = 2.
  7455. IF sy-subrc <> 0.
  7456. CONTINUE.
  7457. ENDIF.
  7458.  
  7459. WHEN 3. "freies Coding
  7460.  
  7461. CASE ls_map_t-element.
  7462. WHEN 'VAL_VAR_USER'.
  7463. IF is_zlctcontract_t-zconres1 = 'X'.
  7464. es_item_val_var_data-val_var_user = 'A'.
  7465. ENDIF.
  7466.  
  7467. ENDCASE.
  7468.  
  7469. ENDCASE.
  7470.  
  7471. ENDLOOP.
  7472.  
  7473. ENDMETHOD.
  7474.  
  7475.  
  7476. * <SIGNATURE>---------------------------------------------------------------------------------------+
  7477. * | Static Public Method ZFICLN_LCT_OUTBD_MAPPER=>MAP_LNL_GENERAL
  7478. * +-------------------------------------------------------------------------------------------------+
  7479. * | [--->] IV_SEGMENT TYPE ZLCT_MAP_SEGMENT
  7480. * | [--->] IS_MAP_T TYPE ZLCT_LNL_MAP_T
  7481. * | [--->] IS_ZLCTOBJECT_T TYPE ZLCTOBJECT_T(optional)
  7482. * | [--->] IS_ZLCTOPTION_T TYPE ZLCTOPTION_T(optional)
  7483. * | [--->] IS_ZLCTCOND_T TYPE ZLCTCOND_T(optional)
  7484. * | [--->] IS_ZLCTHEADER_T TYPE ZLCTHEADER_T
  7485. * | [--->] IS_ZLCTCONTRACT_T TYPE ZLCTCONTRACT_T
  7486. * | [--->] IS_ZLCTSALE_T TYPE ZLCTSALE_T
  7487. * | [--->] IT_ZLCTSTATUS_T TYPE ZLCTSTATUS_TT
  7488. * | [--->] IT_ZLCTDATE_T TYPE ZLCTDATE_TT
  7489. * | [--->] IT_ZLCTOPTION_T TYPE ZLCTOPTION_TT
  7490. * | [--->] IT_ZLCTPARTREL_T TYPE ZLCTPARTREL_TT
  7491. * | [--->] IT_ZLCTOBJECT_T TYPE ZLCTOBJECT_TT
  7492. * | [--->] IT_ZLCTARO_T TYPE ZLCTARO_TT
  7493. * | [--->] IT_ZLCTCOKSST_T TYPE ZLCTCOKSST_TT
  7494. * | [--->] IT_ZLCTCOND_T TYPE ZLCTCOND_TT
  7495. * | [--->] IT_ZLCTIMAGE_T TYPE ZLCTIMAGE_TT
  7496. * | [--->] IT_ZLCTVALUE_T TYPE ZLCTVALUE_TT
  7497. * | [<---] ES_DATA TYPE ANY
  7498. * | [EXC!] MAPPING_ERROR
  7499. * | [EXC!] MAPPING_TAB_MISSING
  7500. * +--------------------------------------------------------------------------------------</SIGNATURE>
  7501. METHOD map_lnl_general.
  7502. *&H***************************************************************
  7503. *&H SAP-Module : FI-LCT *
  7504. *&H Author : S.Kühnel *
  7505. *&H Company/Department: Sopra Steria GmbH *
  7506. *&H Phone : *
  7507. *&H E-Mail : sascha.kuehnel@soprasteria.com *
  7508. *&H Date of creation: 2018-03-01 *
  7509. *&D***************************************************************
  7510. *&D Description : *
  7511. *&D maps all fields according to cust table zlct_lnl_map_t *
  7512. *&C***************************************************************
  7513. *&C Change history : *
  7514. *&C Developer | Code/Date | Description *
  7515. *&C -------------------------------------------------------------*
  7516. *&C <Name> | <code>.<Date>| <Description> *
  7517. *&C***************************************************************
  7518. CONSTANTS: lc_objzuord TYPE c LENGTH 9 VALUE 'ZOBJZUORD'.
  7519.  
  7520.  
  7521. DATA: lv_lct_field TYPE name_feld VALUE 'lct_field',
  7522. lv_lnl_field TYPE name_feld VALUE 'lnl_field'.
  7523.  
  7524.  
  7525. DATA: lv_string TYPE string.
  7526.  
  7527. FIELD-SYMBOLS: <lt_tab> TYPE ANY TABLE,
  7528. <ls_struc> TYPE any,
  7529. <lv_source_field> TYPE any,
  7530. <lv_target_field> TYPE any.
  7531.  
  7532. ASSIGN COMPONENT is_map_t-element OF STRUCTURE es_data TO <lv_target_field>.
  7533. IF sy-subrc <> 0.
  7534. RAISE mapping_error.
  7535. ENDIF.
  7536.  
  7537. CASE is_map_t-element_type.
  7538.  
  7539. WHEN 0. "Konstante
  7540.  
  7541. <lv_target_field> = is_map_t-map_konstante.
  7542.  
  7543. WHEN 1. "Struktur
  7544.  
  7545. CONCATENATE 'IS_' is_map_t-map_struc_tab INTO lv_string.
  7546. ASSIGN (lv_string) TO <ls_struc>.
  7547. IF sy-subrc <> 0.
  7548. RAISE mapping_error.
  7549. ENDIF.
  7550.  
  7551. ASSIGN COMPONENT is_map_t-map_field OF STRUCTURE <ls_struc> TO <lv_source_field>.
  7552. IF sy-subrc <> 0.
  7553. RAISE mapping_error.
  7554. ENDIF.
  7555.  
  7556. <lv_target_field> = <lv_source_field>.
  7557.  
  7558. WHEN 2. "Tabelle
  7559. CONCATENATE 'IT_' is_map_t-map_struc_tab INTO lv_string.
  7560. ASSIGN (lv_string) TO <lt_tab>.
  7561.  
  7562. IF sy-subrc <> 0.
  7563. RAISE mapping_error.
  7564. ENDIF.
  7565.  
  7566. IF iv_segment CS 'ITEM' AND
  7567. ( is_map_t-map_struc_tab CS 'COKSST' OR
  7568. is_map_t-map_struc_tab CS 'COND' OR
  7569. is_map_t-map_struc_tab CS 'OPTION' OR
  7570. is_map_t-map_struc_tab CS 'DATE' ).
  7571.  
  7572. IF is_map_t-map_key_4 IS NOT INITIAL AND is_map_t-map_value_4 IS NOT INITIAL.
  7573.  
  7574. READ TABLE <lt_tab> ASSIGNING <ls_struc>
  7575. WITH KEY (lc_objzuord) = is_zlctobject_t-zobjid
  7576. (is_map_t-map_key_1) = is_map_t-map_value_1
  7577. (is_map_t-map_key_2) = is_map_t-map_value_2
  7578. (is_map_t-map_key_3) = is_map_t-map_value_3
  7579. (is_map_t-map_key_4) = is_map_t-map_value_4.
  7580.  
  7581. ELSEIF is_map_t-map_key_3 IS NOT INITIAL AND is_map_t-map_value_3 IS NOT INITIAL.
  7582.  
  7583. READ TABLE <lt_tab> ASSIGNING <ls_struc>
  7584. WITH KEY (lc_objzuord) = is_zlctobject_t-zobjid
  7585. (is_map_t-map_key_1) = is_map_t-map_value_1
  7586. (is_map_t-map_key_2) = is_map_t-map_value_2
  7587. (is_map_t-map_key_3) = is_map_t-map_value_3.
  7588.  
  7589. ELSEIF is_map_t-map_key_2 IS NOT INITIAL AND is_map_t-map_value_2 IS NOT INITIAL.
  7590.  
  7591. READ TABLE <lt_tab> ASSIGNING <ls_struc>
  7592. WITH KEY (lc_objzuord) = is_zlctobject_t-zobjid
  7593. (is_map_t-map_key_1) = is_map_t-map_value_1
  7594. (is_map_t-map_key_2) = is_map_t-map_value_2.
  7595.  
  7596. ELSEIF is_map_t-map_key_1 IS NOT INITIAL AND is_map_t-map_value_1 IS NOT INITIAL.
  7597.  
  7598. READ TABLE <lt_tab> ASSIGNING <ls_struc>
  7599. WITH KEY (lc_objzuord) = is_zlctobject_t-zobjid
  7600. (is_map_t-map_key_1) = is_map_t-map_value_1.
  7601.  
  7602. ELSE.
  7603.  
  7604. RAISE mapping_error.
  7605.  
  7606. ENDIF.
  7607.  
  7608. ELSE.
  7609.  
  7610. IF is_map_t-map_key_4 IS NOT INITIAL AND is_map_t-map_value_4 IS NOT INITIAL.
  7611.  
  7612. READ TABLE <lt_tab> ASSIGNING <ls_struc>
  7613. WITH KEY (is_map_t-map_key_1) = is_map_t-map_value_1
  7614. (is_map_t-map_key_2) = is_map_t-map_value_2
  7615. (is_map_t-map_key_3) = is_map_t-map_value_3
  7616. (is_map_t-map_key_4) = is_map_t-map_value_4.
  7617.  
  7618. ELSEIF is_map_t-map_key_3 IS NOT INITIAL AND is_map_t-map_value_3 IS NOT INITIAL.
  7619.  
  7620. READ TABLE <lt_tab> ASSIGNING <ls_struc>
  7621. WITH KEY (is_map_t-map_key_1) = is_map_t-map_value_1
  7622. (is_map_t-map_key_2) = is_map_t-map_value_2
  7623. (is_map_t-map_key_3) = is_map_t-map_value_3.
  7624.  
  7625. ELSEIF is_map_t-map_key_2 IS NOT INITIAL AND is_map_t-map_value_2 IS NOT INITIAL.
  7626.  
  7627. READ TABLE <lt_tab> ASSIGNING <ls_struc>
  7628. WITH KEY (is_map_t-map_key_1) = is_map_t-map_value_1
  7629. (is_map_t-map_key_2) = is_map_t-map_value_2.
  7630.  
  7631. ELSEIF is_map_t-map_key_1 IS NOT INITIAL AND is_map_t-map_value_1 IS NOT INITIAL.
  7632.  
  7633. READ TABLE <lt_tab> ASSIGNING <ls_struc>
  7634. WITH KEY (is_map_t-map_key_1) = is_map_t-map_value_1.
  7635.  
  7636. ELSE.
  7637.  
  7638. RAISE mapping_error.
  7639.  
  7640. ENDIF.
  7641.  
  7642. ENDIF.
  7643.  
  7644. IF <ls_struc> IS NOT ASSIGNED.
  7645. RAISE mapping_error.
  7646. ENDIF.
  7647.  
  7648. ASSIGN COMPONENT is_map_t-map_field OF STRUCTURE <ls_struc> TO <lv_source_field>.
  7649. IF sy-subrc <> 0.
  7650. RAISE mapping_error.
  7651. ENDIF.
  7652.  
  7653. <lv_target_field> = <lv_source_field>.
  7654. ENDCASE.
  7655.  
  7656. **** beg ins JB 20180918
  7657. IF <lv_target_field> IS ASSIGNED
  7658. AND is_map_t-mapping_tab IS NOT INITIAL.
  7659.  
  7660. CLEAR: lv_string.
  7661. UNASSIGN: <ls_struc>.
  7662.  
  7663. CONCATENATE 'LS_' is_map_t-mapping_tab INTO lv_string.
  7664. ASSIGN (lv_string) TO <ls_struc>.
  7665. IF sy-subrc <> 0.
  7666. RAISE mapping_tab_missing.
  7667. ENDIF.
  7668.  
  7669. SELECT SINGLE * FROM (is_map_t-mapping_tab) INTO <ls_struc> WHERE lct_field = <lv_target_field>.
  7670.  
  7671. IF sy-subrc EQ 0.
  7672. ASSIGN COMPONENT lv_lnl_field OF STRUCTURE <ls_struc> TO <lv_source_field>.
  7673. IF sy-subrc = 0.
  7674. CLEAR: <lv_target_field>.
  7675. <lv_target_field> = <lv_source_field>.
  7676. ENDIF.
  7677. ENDIF.
  7678. ENDIF.
  7679. **** end ins JB 20180918
  7680.  
  7681. IF <lv_target_field> IS ASSIGNED.
  7682. IF is_map_t-type_d = abap_true AND <lv_target_field> = '00000000'.
  7683. <lv_target_field> = ''.
  7684. ENDIF.
  7685. ENDIF.
  7686. ENDMETHOD.
  7687.  
  7688.  
  7689. * <SIGNATURE>---------------------------------------------------------------------------------------+
  7690. * | Static Private Method ZFICLN_LCT_OUTBD_MAPPER=>MAP_RV_AMOUNT_EXPECTED
  7691. * +-------------------------------------------------------------------------------------------------+
  7692. * | [--->] IS_ZLCTOBJECT_T TYPE ZLCTOBJECT_T
  7693. * | [--->] IT_ZLCTCOND_T TYPE ZLCTCOND_TT
  7694. * | [<-()] EV_RV_AMOUNT_EXPECTED TYPE CHAR025
  7695. * +--------------------------------------------------------------------------------------</SIGNATURE>
  7696. METHOD map_rv_amount_expected.
  7697. *&H***************************************************************
  7698. *&H SAP-Module : FI-LCT *
  7699. *&H Author : Juri Böhme *
  7700. *&H Company/Department: Sopra Steria GmbH *
  7701. *&H Phone : 01523 3955015 *
  7702. *&H E-Mail : Juri@Boehme-Beratung.de *
  7703. *&H Date of creation: 2018-09-13 *
  7704. *&D***************************************************************
  7705. *&D Description : *
  7706. *&D get value from zlctcond_t for amount_expected *
  7707. *&C***************************************************************
  7708. *&C Change history : *
  7709. *&C Developer | Code/Date | Description *
  7710. *&C -------------------------------------------------------------*
  7711. *&C <Name> | <code>.<Date>| <Description> *
  7712. *&C***************************************************************
  7713.  
  7714. LOOP AT it_zlctcond_t ASSIGNING FIELD-SYMBOL(<ls_zlctcond>) WHERE zcondrth = mc_zcondrth_0100
  7715. AND zobjzuord = is_zlctobject_t-zobjid.
  7716. ENDLOOP.
  7717.  
  7718.  
  7719. IF sy-subrc = 0.
  7720. WRITE: <ls_zlctcond>-zcondwert CURRENCY <ls_zlctcond>-zcondcurr TO ev_rv_amount_expected.
  7721. ELSE.
  7722. ENDIF.
  7723.  
  7724. ENDMETHOD.
  7725.  
  7726.  
  7727. * <SIGNATURE>---------------------------------------------------------------------------------------+
  7728. * | Static Public Method ZFICLN_LCT_OUTBD_MAPPER=>MAP_ZCONDRTH
  7729. * +-------------------------------------------------------------------------------------------------+
  7730. * | [--->] IV_ZCONDRTH TYPE ZLCTCONDRTH
  7731. * | [<-()] RV_ZCONDRTH TYPE ZLCT_LNL_CONDRTH
  7732. * +--------------------------------------------------------------------------------------</SIGNATURE>
  7733. METHOD map_zcondrth.
  7734. *&H***************************************************************
  7735. *&H SAP-Module : FI-LCT *
  7736. *&H Author : S.Kühnel *
  7737. *&H Company/Department: Sopra Steria GmbH *
  7738. *&H Phone : *
  7739. *&H E-Mail : sascha.kuehnel@soprasteria.com *
  7740. *&H Date of creation: 2018-03-01 *
  7741. *&D***************************************************************
  7742. *&D Description : *
  7743. *&D maps pay rhythm *
  7744. *&C***************************************************************
  7745. *&C Change history : *
  7746. *&C Developer | Code/Date | Description *
  7747. *&C -------------------------------------------------------------*
  7748. *&C <Name> | <code>.<Date>| <Description> *
  7749. *&C***************************************************************
  7750. DATA ls_zlct_pay_ryth_t TYPE zlct_pay_ryth_t.
  7751.  
  7752. READ TABLE mt_zlct_pay_ryth_t INTO ls_zlct_pay_ryth_t WITH KEY zcondrth = iv_zcondrth.
  7753.  
  7754. rv_zcondrth = ls_zlct_pay_ryth_t-zlnl_condrth.
  7755. ENDMETHOD.
  7756.  
  7757.  
  7758. * <SIGNATURE>---------------------------------------------------------------------------------------+
  7759. * | Static Public Method ZFICLN_LCT_OUTBD_MAPPER=>MAP_ZCONDZALW
  7760. * +-------------------------------------------------------------------------------------------------+
  7761. * | [--->] IV_ZCONDZALW TYPE ZLCTCONDZALW
  7762. * | [<-()] RV_ZCONDZALW TYPE ZLCT_LNLCONDZALW
  7763. * +--------------------------------------------------------------------------------------</SIGNATURE>
  7764. METHOD map_zcondzalw.
  7765. *&H***************************************************************
  7766. *&H SAP-Module : FI-LCT *
  7767. *&H Author : S.Kühnel *
  7768. *&H Company/Department: Sopra Steria GmbH *
  7769. *&H Phone : *
  7770. *&H E-Mail : sascha.kuehnel@soprasteria.com *
  7771. *&H Date of creation: 2018-03-01 *
  7772. *&D***************************************************************
  7773. *&D Description : *
  7774. *&D maps pay type *
  7775. *&C***************************************************************
  7776. *&C Change history : *
  7777. *&C Developer | Code/Date | Description *
  7778. *&C -------------------------------------------------------------*
  7779. *&C <Name> | <code>.<Date>| <Description> *
  7780. *&C***************************************************************
  7781. DATA ls_zlct_pay_type_t TYPE zlct_pay_type_t.
  7782.  
  7783. READ TABLE mt_zlct_pay_type_t INTO ls_zlct_pay_type_t WITH KEY zcondzalw = iv_zcondzalw.
  7784.  
  7785. rv_zcondzalw = ls_zlct_pay_type_t-zlnl_condzalw.
  7786. ENDMETHOD.
  7787. ENDCLASS.
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement