Advertisement
wiby15

LXPTSPPAYR

Nov 12th, 2019
141
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 22.60 KB | None | 0 0
  1. *CREATED BY : MARISZA
  2. *CREATED DATE : 20190521
  3. *PAYROLL PINJAMAN TASPEN
  4.  
  5. FLXFTSPINDKIF E K DISK
  6. FLXLTSPPEN IF E K DISK
  7. FLXLTSPDPM UF E K DISK
  8. FLXLKWJCR UF E K DISK
  9. FLXL0021 IF E K DISK
  10. FLXLKWJLOGKIF A E K DISK
  11. FLXLKWJCH UF E K DISK
  12. FTBLMSG IF E K DISK
  13. FRKLMAS IF E K DISK
  14. FSAFMAS IF E K DISK
  15. FSAFTAB IF E K DISK
  16.  
  17.  
  18.  
  19. DCOMARA EUDS EXTNAME(FEFCOMM)
  20.  
  21. D DSTGL DS
  22. D DSYY 1 4 0
  23. D DSMM 5 6 0
  24. D DSYYMM 1 6 0
  25.  
  26. D DSBLINFO DS
  27. D DSPERIODE 1 6 0
  28. D DSTIPE 7 7 0
  29. D DSNOPEN 8 22
  30.  
  31. D acnox S 10 0
  32. D SAFMASACNO S 10 0
  33. D SAFMASBRCOD S 3 0
  34. D SAFMASPDID S 3 0
  35.  
  36. D SAFTABBRCOD S 3 0
  37. D SAFTABPDID S 3 0
  38.  
  39. ISACMAS
  40. I ACNO ACNOSAF
  41. I BLCUR BLCURSAF
  42.  
  43. C *DTAARA DEFINE *LDA COMARA
  44. C IN COMARA
  45.  
  46. C KTSPDPM1 KLIST
  47. C KFLD DTHNBLN
  48. C KFLD DNOREK
  49. C KFLD DNOPEN
  50.  
  51. C KTSPDPM2 KLIST
  52. C KFLD DTHNBLN
  53. C KFLD DNOREK
  54.  
  55. C KTSPPEN KLIST
  56. C KFLD PIDINDUK
  57. C KFLD PNOPEN
  58.  
  59. C KTBFMSG KLIST
  60. C KFLD TBID
  61. C KFLD TBKEY
  62.  
  63. C KKWJCR1 KLIST
  64. C KFLD CNOREK
  65. C KFLD CTIPE
  66. C* KFLD CNOPIN
  67.  
  68. C* KKWJCR2 KLIST
  69. C* KFLD CTIPE
  70. C* KFLD CNOPIN
  71.  
  72. C K002 KLIST
  73. C KFLD CNOPIN
  74. C KFLD THN
  75. C KFLD MM
  76.  
  77. C KKWJCH1 KLIST
  78. C KFLD HNOREK
  79. C KFLD HTHNBLN
  80. C KFLD HRCSTA
  81.  
  82. C KKWJCH2 KLIST
  83. C KFLD HNOREK
  84. C KFLD HTHNBLN
  85.  
  86. C KKWJLOGK1 KLIST
  87. C KFLD LNOREK
  88. C KFLD LTHNBLN
  89. C KFLD LTIPE
  90. C KFLD LNOPEN
  91.  
  92. C KKWJLOGK2 KLIST
  93. C KFLD LNOREK
  94. C KFLD LTHNBLN
  95. C KFLD LTIPE
  96.  
  97. C KSAFTAB KLIST
  98. C KFLD ZPDID
  99. C KFLD ZBRCOD
  100.  
  101. C KSAFTAB2 KLIST
  102. C KFLD SAFTABBRCOD
  103. C KFLD SAFTABPDID
  104.  
  105. C KSAFMAS KLIST
  106. C KFLD SAFMASBRCOD
  107. C KFLD SAFMASPDID
  108. C KFLD SAFMASACNO
  109.  
  110. *SALMIN
  111. C Z-ADD 0 SALMIN 13 0
  112.  
  113. *INIT PARAMETER PAYROLL
  114. C Z-ADD 0 LTOTALGAJI 16 0
  115. C Z-ADD 0 LTOTALKWJ 16 0
  116. C Z-ADD 0 LBLKOTEN 16 0
  117. C Z-ADD 0 LANGSURAN 16 0
  118.  
  119. *INIT PARAMETER BLOKIR
  120. C Z-ADD 0 ZACNO 10 0
  121. C MOVEL *BLANK ZKODE 10
  122. C Z-ADD 0 ZNOM 15 2
  123. C Z-ADD 0 ZTGLEFF 8 0
  124. C MOVE *BLANK ZTGLAKH 8 0
  125. C MOVEL *BLANK ZKET1 30
  126. C MOVEL *BLANK ZKET 30
  127. C MOVEL *BLANK ZINFO1 50
  128. C Z-ADD 0 ZRETVAL 1 0
  129. C MOVEL *BLANK ZRETMSG 30
  130.  
  131.  
  132. *-------------------------------------------------------------------*
  133. *MAIN PROGRAM
  134. *-------------------------------------------------------------------*
  135.  
  136. C *ENTRY PLIST
  137. C PARM ZPERIODE 6 0
  138. C PARM ZIDINDUK 10 0
  139. C EVAL DSTGL =%CHAR(ZPERIODE)
  140.  
  141. C Z-ADD 0 XNOMINAL 14 2
  142. C Z-ADD 0 ZNOMINAL 14 2
  143. C
  144. C ZIDINDUK CHAIN LXRTSPINDK 7373
  145. C IF *IN73 = '0' AND CRCSTAINDK = 1
  146. C Z-ADD CIDINDUK PIDINDUK
  147. C MOVEL '' PNOPEN
  148. C KTSPPEN SETLL LXRTSPPEN
  149. C ZIDINDUK READE LXRTSPPEN 7070
  150.  
  151. C DOW NOT *IN70
  152.  
  153. C Z-ADD 0 LTOTALGAJI
  154. C EXSR CEKDAPEM
  155.  
  156. C Z-ADD 0 LTOTALKWJ
  157.  
  158. C EXSR CEKSAFMAS
  159. C EXSR CEKSALMIN
  160. C EXSR GETKWJCR
  161. C EXSR GETKWJCH
  162. C EXSR GETKWJDR
  163.  
  164. C IF DSTSOTN = 30
  165. C EXSR BLKOTEN
  166. C ENDIF
  167.  
  168.  
  169. C PIDINDUK READE LXRTSPPEN 7070
  170. C ENDDO
  171. C ENDIF
  172.  
  173. C SETON LR
  174. C RETURN
  175.  
  176. *-------------------------------------------------------------------*
  177. *SUB ROUTINE
  178. *-------------------------------------------------------------------*
  179.  
  180. C CEKDAPEM BEGSR
  181. C Z-ADD PNOREK DNOREK
  182. C Z-ADD ZPERIODE DTHNBLN
  183. C MOVEL '' DNOPEN
  184.  
  185.  
  186. C KTSPDPM1 SETLL LXRTSPDPM
  187. C KTSPDPM2 READE LXRTSPDPM 7171
  188. C DOW NOT*IN71
  189.  
  190. C Z-ADD 3460 TRIDT
  191. C Z-ADD CNOREKINDK ACNOT
  192. C Z-ADD DNOREK ACNOC
  193. C Z-ADD DNOMINAL AMTR
  194.  
  195. C EVAL TRDES1 = 'TASPEN ' + %CHAR(DTHNBLN)
  196. C +' ' + DNOPEN
  197.  
  198. C EXSR INITTRF
  199. C EXSR TRFGAJI
  200.  
  201. C UPDATE LXRTSPDPM 74
  202.  
  203. C KTSPDPM2 READE LXRTSPDPM 7171
  204. C ENDDO
  205. C ENDSR
  206.  
  207. *INIT TRANSAKSI
  208. C INITTRF BEGSR
  209. C MOVE '44444444' PASSTR
  210. C Z-ADD 0 PCTLP
  211. C MOVE SYDT CQDATT
  212. C MOVE '0' PREQJ
  213. C Z-ADD UBU SGBUC
  214. C Z-ADD 0 SGIDC
  215. C Z-ADD UBU SGBUT
  216. C Z-ADD 0 SGIDT
  217. C Z-ADD 0 CCCODT
  218. C Z-ADD 0 CCCODC
  219. C OUT COMARA
  220. C ENDSR
  221.  
  222. *CALL FEPMAIN DANA PENSIUN
  223. C TRFGAJI BEGSR
  224. C CALL 'FEPMAIN'
  225. C IN COMARA
  226. C RTNID COMP '0' 80
  227. C N80 CALL 'FEPMSGR4'
  228. C* IF *IN80
  229. C CALL 'FEPMSGR4'
  230. *SUKSES
  231. C IF TRST = 5
  232. C Z-ADD 1 DSTSBYR
  233. C ADD AMTR LTOTALGAJI
  234. C Z-ADD SYDT DTRNDAT
  235. C MOVEL BTCOD DTRNUID
  236. *PENDING
  237. C ELSEIF TRST = 2
  238. C Z-ADD 9 DSTSBYR
  239. C EVAL DKET = 'PENDING'
  240. *GAGAL
  241. C ELSE
  242. C Z-ADD 9 DSTSBYR
  243. C MOVEL 'MSG' TBID
  244. C EVAL TBKEY = %INT(RTNMSG)
  245. C KTBFMSG CHAIN MSGREC 7272
  246. C N72 EVAL DKET = TBDESC
  247. C 72 EVAL DKET = 'RTNMSG = ' + RTNMSG
  248. C ENDIF
  249. C* ENDIF
  250. *
  251. C TIME DTRNTIM
  252. C Z-ADD SYDT DTRNDAT
  253. C MOVEL UIDSGN DTRNUID
  254. C ENDSR
  255.  
  256.  
  257. *GET KEWAJIBAN CHANNELING
  258. C GETKWJCR BEGSR
  259. C Z-ADD PNOREK CNOREK
  260. C Z-ADD 2 CTIPE
  261.  
  262. C KKWJCR1 SETLL LXRKWJCR
  263. C CNOREK READE LXRKWJCR 7676
  264. C DOW NOT*IN76 AND CTIPE = 2
  265.  
  266. C IF CLPERIODE < ZPERIODE
  267. C Z-ADD CNOPIN NOPIN
  268. C Z-ADD DSYY THN
  269. C Z-ADD DSMM MM
  270. C
  271. C K002 CHAIN RSREC 7777
  272. C IF NOT *IN77
  273. C EVAL LANGSURAN = POKOK + BUNGA
  274. C ENDIF
  275. *CALL FEPMAIN
  276. C Z-ADD 4360 TRIDT
  277. C Z-ADD CNOREK ACNOT
  278. C Z-ADD CREKESC ACNOC
  279.  
  280. C Z-ADD 0 XNOMINAL
  281. C Z-ADD 0 ZNOMINAL
  282.  
  283. C Z-ADD 0 ZPDID 3 0
  284. C Z-ADD 0 ZBRCOD 3 0
  285. C
  286. C CNOREK CHAIN SACMAS 4343
  287. C IF *IN43 = '0'
  288. C Z-ADD BLCURSAF XNOMINAL
  289. C Z-ADD PDID ZPDID
  290. C Z-ADD BRCOD ZBRCOD
  291. C ENDIF
  292.  
  293. C EXSR CEKSALMIN
  294. C EVAL ZNOMINAL = XNOMINAL - SALMIN - AMBLK
  295.  
  296. C MOVEL *BLANK ZKET1
  297. C IF ZNOMINAL > 0
  298. C IF ZNOMINAL < LANGSURAN
  299. C Z-ADD ZNOMINAL AMTR
  300. C EVAL TRDES1 = 'SBG KWJ ' + %CHAR(DTHNBLN)
  301. C + ' ' + %CHAR(DNOREK)
  302.  
  303. C EVAL ZKET1= 'OVERBOOK SEBAGIAN'
  304. C
  305. C ELSE
  306. C Z-ADD LANGSURAN AMTR
  307. C EVAL TRDES1 = 'KWJ ' + %CHAR(DTHNBLN)
  308. C + ' ' + %CHAR(DNOREK)
  309. C ENDIF
  310. C ENDIF
  311.  
  312.  
  313. C EXSR INITTRF
  314. C EXSR CALLFECR
  315. *END CALL FEPMAIN
  316.  
  317. C* Z-ADD ZPERIODE HTHNBLN
  318. C UPDATE LXRKWJCR 91
  319. C ENDIF
  320. C CNOREK READE LXRKWJCR 7676
  321. C ENDDO
  322. C ENDSR
  323.  
  324. *GET KEWAJIBAN CHANNELING MURNI
  325. C GETKWJCH BEGSR
  326. C Z-ADD PNOREK HNOREK
  327. C Z-ADD 0 HTHNBLN
  328. C Z-ADD 1 HRCSTA
  329. C* Z-ADD 1 HMITRA
  330. C KKWJCH1 SETLL LXRKWJCH
  331. C KKWJCH2 READE LXRKWJCH 7979
  332. C DOW NOT*IN79
  333.  
  334. *CALL FEPMAIN
  335. C Z-ADD 4360 TRIDT
  336. C Z-ADD HNOREK ACNO
  337. C Z-ADD HNOREK ACNOT
  338. C Z-ADD HREKESC ACNOC
  339.  
  340. C Z-ADD 0 ZBRCOD 3 0
  341. C Z-ADD 0 ZPDID 3 0
  342.  
  343. C ACNO CHAIN SACMAS 4545
  344. C IF NOT *IN45
  345. C Z-ADD BLCURSAF XNOMINAL
  346.  
  347. C Z-ADD PDID ZPDID
  348. C Z-ADD BRCOD ZBRCOD
  349. C ENDIF
  350. C EXSR CEKSALMIN
  351. C EVAL ZNOMINAL = XNOMINAL - SALMIN - AMBLK
  352.  
  353. C MOVEL *BLANK ZKET1
  354. C IF ZNOMINAL > 0
  355. C IF ZNOMINAL < HNOMINAL
  356. C Z-ADD ZNOMINAL AMTR
  357. C EVAL TRDES1 = 'SBG ' + 'KWJ ' + %CHAR(DTHNBLN)
  358. C + ' ' + %CHAR(DNOREK)
  359.  
  360. C EVAL ZKET1= 'OVERBOOK SEBAGIAN'
  361.  
  362. C ELSE
  363. C Z-ADD HNOMINAL AMTR
  364. C EVAL TRDES1 = 'KWJ '+ %CHAR(DTHNBLN)
  365. C + ' ' + %CHAR(DNOREK)
  366. C ENDIF
  367. C ENDIF
  368.  
  369. C EXSR INITTRF
  370. C EXSR CALLFECH
  371.  
  372. C Z-ADD ZPERIODE HTHNBLN
  373. C UPDATE LXRKWJCH
  374. *END CALL FEPMAIN
  375.  
  376. C KKWJCH2 READE LXRKWJCH 7979
  377. C ENDDO
  378. C ENDSR
  379.  
  380. *BLOKIR OTENTIKASI
  381. C BLKOTEN BEGSR
  382. C Z-ADD ZPERIODE DSPERIODE
  383. C Z-ADD DJNSDPM DSTIPE
  384. C MOVEL DNOPEN DSNOPEN
  385. *
  386. C Z-ADD DNOREK ZACNO
  387. C MOVEL 'TSP' ZKODE
  388. C EVAL LBLKOTEN = LTOTALGAJI - LTOTALKWJ
  389. C IF LBLKOTEN <= 0
  390.  
  391. C Z-ADD SALMIN ZNOM
  392. C ELSE
  393. C Z-ADD LBLKOTEN ZNOM
  394. C Z-ADD SYDT ZTGLEFF
  395. C MOVE 20500101 ZTGLAKH
  396. C MOVEL *BLANK ZKET
  397. C EVAL ZKET = 'BLOKIR SISA DANA PENSIUN '
  398. C + 'PERIODE ' + %CHAR(ZPERIODE)
  399. C EVAL ZINFO1 = DSBLINFO
  400. C Z-ADD 0 ZRETVAL
  401. C MOVEL *BLANK ZRETMSG
  402. *
  403. C CALL 'SAPBLKTAB'
  404. C PARM ZACNO
  405. C PARM ZKODE
  406. C PARM ZNOM
  407. C PARM ZTGLEFF
  408. C PARM ZTGLAKH
  409. C PARM ZKET
  410. C PARM ZINFO1
  411. C PARM ZRETVAL
  412. C PARM ZRETMSG
  413. C ENDIF
  414. C ENDSR
  415.  
  416. *GET KEWAJIBAN DIRECT
  417. C GETKWJDR BEGSR
  418. C Z-ADD PNOREK LNOREK
  419. C Z-ADD ZPERIODE LTHNBLN
  420. C Z-ADD 1 LTIPE
  421. C Z-ADD 1 LMITRA
  422. C KKWJLOGK1 SETLL LXRKWJLOGK
  423. C KKWJLOGK2 READE LXRKWJLOGK 8181
  424. C DOW NOT*IN81
  425.  
  426. C ADD LNOMINAL LTOTALKWJ
  427.  
  428. C KKWJLOGK2 READE LXRKWJLOGK 8181
  429. C ENDDO
  430. C ENDSR
  431.  
  432. *FEPMAIN KREDIT CHANNELLING
  433. C CALLFECR BEGSR
  434. C CALL 'FEPMAIN'
  435. C IN COMARA
  436. C RTNID COMP '0' 80
  437. C N80 CALL 'FEPMSGR4'
  438. *SUKSES
  439. C IF TRST = 5
  440. C Z-ADD ZPERIODE CLPERIODE
  441. C Z-ADD 1 LRCSTA
  442. C ADD AMTR LTOTALKWJ
  443. *PENDING
  444. C ELSEIF TRST = 2
  445. C Z-ADD 9 LRCSTA
  446. C EVAL LKET = 'PENDING'
  447. *GAGAL
  448. C ELSE
  449. C Z-ADD 9 LRCSTA
  450. C MOVEL 'MSG' TBID
  451. C EVAL TBKEY = %INT(RTNMSG)
  452. C KTBFMSG CHAIN MSGREC 7272
  453. C N72 EVAL LKET = TBDESC
  454. C 72 EVAL LKET = 'RTNMSG = ' + RTNMSG
  455. C ENDIF
  456. *
  457.  
  458. C* IF LRCSTA = 1 OR LRCSTA = 9
  459. C MOVEL CNOPEN LNOPEN
  460. C Z-ADD CNOPIN LNOPIN
  461. C Z-ADD CNOREK LNOREK
  462. C MOVEL DNAMA LNAMA
  463. C Z-ADD ZPERIODE LTHNBLN
  464. C Z-ADD AMTR LNOMINAL
  465. C Z-ADD CTIPE LTIPE
  466. C Z-ADD CREKESC LREKESC
  467. C Z-ADD CMITRA LMITRA
  468. C Z-ADD 0 LCHNKE
  469. C TIME LINPTIM
  470. C Z-ADD SYDT LINPDAT
  471. C MOVEL UIDSGN LINPUID
  472. C MOVEL ZKET1 LKET
  473.  
  474. C WRITE LXRKWJLOGK 78
  475.  
  476. C* ENDIF
  477. C ENDSR
  478.  
  479. *FEPMAIN KREDIT CHANNELLING MURNI
  480. C CALLFECH BEGSR
  481. C CALL 'FEPMAIN'
  482. C IN COMARA
  483. C RTNID COMP '0' 80
  484. C N80 CALL 'FEPMSGR4'
  485. *SUKSES
  486. C IF TRST = 5
  487. C Z-ADD 1 LRCSTA
  488. C ADD AMTR LTOTALKWJ
  489. *PENDING
  490. C ELSEIF TRST = 2
  491. C Z-ADD 9 LRCSTA
  492. C EVAL LKET = 'PENDING'
  493. *GAGAL
  494. C ELSE
  495. C Z-ADD 9 LRCSTA
  496. C MOVEL 'MSG' TBID
  497. C EVAL TBKEY = %INT(RTNMSG)
  498. C KTBFMSG CHAIN MSGREC 7272
  499. C N72 EVAL LKET = TBDESC
  500. C 72 EVAL LKET = 'RTNMSG = ' + RTNMSG
  501. C ENDIF
  502.  
  503. C* IF LRCSTA = 1 OR LRCSTA = 9
  504. *
  505. C MOVEL HNOPEN LNOPEN
  506. C Z-ADD 0 LNOPIN
  507. C Z-ADD HNOREK LNOREK
  508. C MOVEL DNAMA LNAMA
  509. C Z-ADD ZPERIODE LTHNBLN
  510. C Z-ADD AMTR LNOMINAL
  511. C Z-ADD 3 LTIPE
  512. C Z-ADD HREKESC LREKESC
  513. C Z-ADD HCHNKE LCHNKE
  514. C Z-ADD HMITRA LMITRA
  515. C TIME LINPTIM
  516. C Z-ADD SYDT LINPDAT
  517. C MOVEL UIDSGN LINPUID
  518. C MOVEL ZKET1 LKET
  519. C WRITE LXRKWJLOGK 78
  520.  
  521. C* ENDIF
  522. C ENDSR
  523.  
  524. *CEK SAFMAS
  525. C CEKSAFMAS BEGSR
  526. C Z-ADD ACNOC SAFMASACNO
  527. C SAFMASACNO CHAIN SACMAS 9090
  528. C IF NOT *IN90
  529. C Z-ADD BRCOD SAFMASBRCOD
  530. C Z-ADD PDID SAFMASPDID
  531. C ENDIF
  532. C ENDSR
  533.  
  534. *CEK SALDO MINIMAL
  535. C CEKSALMIN BEGSR
  536. C Z-ADD SAFMASBRCOD SAFTABBRCOD
  537. C Z-ADD SAFMASPDID SAFTABPDID
  538. C KSAFTAB2 CHAIN SACTAB 9595
  539. C IF NOT*IN95
  540. C Z-ADD MINBAL SALMIN
  541. C ELSE
  542. C Z-ADD 0 SALMIN
  543. C ENDIF
  544. C ENDSR
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement