23 Ocak 2012 Pazartesi

İşçi Vizite Kağıdı - Örnek ABAP Uygulaması 6

REPORT ZPRSVK03 LINE-SIZE 80
                LINE-COUNT 65                            "53   53(8)
                NO STANDARD PAGE HEADING
                MESSAGE-ID ZY.
*----tables
TABLES: PERNR,
        PCL1,
        PCL2,
        T550A,
        T510P,
        PA0000,
        PA0001,
        HRP1000,
*        pa0003,
        PA0021,
        T9Y01,
        T9YSS,
        T591S,
        S001,
        T247,
        T577,
        SPELL,
        PC205,
        T9YD1.
*---infotypes
INFOTYPES:   0000,
             0001,
             0002,
             0003,
             0021,
             0076,
             2010,
             9004.
*----includes
INCLUDE RPC2CD00.
INCLUDE RPC2RXX0.                      "Cluster RX data definition
INCLUDE RPC2RX00.    "Cluster RX data definition internat. part
INCLUDE RPPPXD00.                      "Data definition buffer PCL1/PCL2
INCLUDE RPPPXD10.                      "Common part buffer PCL1/PCL2
INCLUDE RPPPXM00.                      "Buffer handling routine
*----data definitions
DATA : BEGIN OF FPPER OCCURS 0,
         FPPER    LIKE S001-SPMON,
         WORD(84),
         BETRGM(9) TYPE P DECIMALS 2,     "Matrah
         BETRGP(9) TYPE P DECIMALS 2,     "Prim
         BETRGC(9) TYPE P DECIMALS 2,     "Ceza
         STXT(13),
         SSKDY(2)  TYPE I,   " like pc207-anzhl,
       END OF FPPER.
DATA: SSKNO LIKE T9YD1-SSKNO,          "Personel sskno
         EMKDA    LIKE P0001-BEGDA,
         SSKIS    LIKE T9YD1-SSKNO,    "Is yeri sskno
         STRET    LIKE T9YD1-STRET,    "cadde ve konut numarasi
         CTEXT    LIKE T9Y01-CTEXT,    "Sehir
         PFACH(7),                     "t9yd1-pfach postakutusu
         NAME1    LIKE T9YD1-NAME1,    "Sirket adi
         GBDAT LIKE PA0002-GBDAT,      "Dogum tarihi
         BEGDA LIKE PA0000-BEGDA,      "ise giris tarihi
         PRSAY TYPE I,                 "personel alanindaki isçi sayisi
         SOBEG LIKE T550A-SOBEG,       "Kaza günü mesai baslangici
         MINBTR LIKE FPPER-BETRGM,
         CITY(2),
         YIL(4),
         AY(2),
         CURSORFIELD(20),
         TFANAM LIKE PA0021-FANAM,
         TFAVOR LIKE PA0021-FAVOR,
         TFAMSA LIKE PA0021-FAVOR,
         SSKDY(3) TYPE I,
         MONEND LIKE SY-DATUM,
         LOOPT TYPE I.
DATA: BEGIN OF IFANAM OCCURS 0,
         SIGN VALUE 'I',
         OPTION(2) VALUE 'CP',
         LOW LIKE PA0021-FANAM,
         HIGH LIKE PA0021-FANAM VALUE SPACE,
     END OF IFANAM.
DATA: BEGIN OF IFAVOR OCCURS 0,
         SIGN VALUE  'I',
         OPTION(2) VALUE  'CP',
         LOW LIKE PA0021-FAVOR,
         HIGH LIKE PA0021-FAVOR VALUE SPACE,
     END OF IFAVOR.
DATA: BEGIN OF IFAMSA OCCURS 0,
         SIGN VALUE  'I',
         OPTION(2) VALUE  'CP',
         LOW LIKE PA0021-FAMSA,
         HIGH LIKE PA0021-FAMSA VALUE SPACE,
     END OF IFAMSA.
*-- RP_HIRE+FIRE                                     "TL 23.02.2000
DATA : HIREDATE LIKE P0000-BEGDA,
       FIREDATE LIKE P0000-ENDDA.
DATA : BEGIN OF PHIFI OCCURS 5.
        INCLUDE STRUCTURE PHIFI.
DATA : END OF PHIFI.

*---selection screen
SELECTION-SCREEN BEGIN OF BLOCK SECIM WITH FRAME TITLE TEXT-005.
  PARAMETERS: E1  RADIOBUTTON GROUP GR1,
              E2  RADIOBUTTON GROUP GR1.
SELECTION-SCREEN END OF BLOCK SECIM.
SELECTION-SCREEN BEGIN OF BLOCK VIZITE WITH FRAME TITLE TEXT-000.
* parameters: mahis(4) default '5435'.
 SELECTION-SCREEN BEGIN OF LINE.
 SELECTION-SCREEN COMMENT 1(30) TEXT-001.
 SELECTION-SCREEN POSITION POS_LOW.
  PARAMETERS: IS(20),
              MAHIS(30).
 SELECTION-SCREEN END OF LINE.
 SELECTION-SCREEN BEGIN OF LINE.
 SELECTION-SCREEN COMMENT 1(30) TEXT-002.
 SELECTION-SCREEN POSITION POS_LOW.
  PARAMETERS: KAZSK(13),
              KAZYR(13),
              SDATE LIKE SY-DATUM DEFAULT SY-DATUM,
              STIME LIKE SY-UZEIT DEFAULT SY-UZEIT.
 SELECTION-SCREEN END OF LINE.
  PARAMETERS: ISBAS LIKE SY-UZEIT DEFAULT '080000'.
SELECTION-SCREEN BEGIN OF BLOCK TANIK WITH FRAME TITLE TEXT-003.
  PARAMETERS: TANIK1(15).
  PARAMETERS: TANIK2(15).
SELECTION-SCREEN END OF BLOCK TANIK.
  PARAMETERS: ISVEKAD(15),
              TARIH LIKE SY-DATUM DEFAULT SY-DATUM,
              SAAT  LIKE SY-UZEIT DEFAULT SY-UZEIT.
SELECTION-SCREEN END OF BLOCK VIZITE.
SELECTION-SCREEN BEGIN OF BLOCK VIZITE_YAKIN WITH FRAME TITLE TEXT-004.
SELECTION-SCREEN BEGIN OF LINE.
SELECTION-SCREEN COMMENT 1(30) TEXT-006.
  PARAMETERS: FAVOR LIKE P0021-FAVOR.
  PARAMETERS: FANAM LIKE P0021-FANAM.
SELECTION-SCREEN END OF LINE.
SELECTION-SCREEN BEGIN OF LINE.
SELECTION-SCREEN COMMENT 1(30) TEXT-007.
  PARAMETERS: FAMSA LIKE P0021-FAMSA.
  PARAMETERS: INTKY(30).
SELECTION-SCREEN END OF LINE.
SELECTION-SCREEN END OF BLOCK VIZITE_YAKIN.
*---Parameters.
*---initialization.
INITIALIZATION.
*---at selection-screen.
AT SELECTION-SCREEN.
  CLEAR : TFAMSA, TFANAM, TFAVOR, IFANAM, IFAVOR, IFAMSA.
  REFRESH : IFANAM, IFAVOR, IFAMSA.
  GET CURSOR FIELD CURSORFIELD.
  MOVE :  'I' TO IFANAM-SIGN,
          'CP' TO IFANAM-OPTION,
          'I' TO IFAVOR-SIGN,
          'CP' TO IFAVOR-OPTION,
          'I' TO IFAMSA-SIGN,
          'CP' TO IFAMSA-OPTION.
  CONCATENATE FANAM '*' INTO IFANAM-LOW.
  CONCATENATE FAVOR '*' INTO IFAVOR-LOW.
  CONCATENATE FAMSA '*' INTO IFAMSA-LOW.
  APPEND IFANAM.
  APPEND IFAVOR.
  APPEND IFAMSA.
  IF CURSORFIELD = 'FAVOR'.
    SELECT SINGLE FAMSA FANAM FAVOR INTO (TFAMSA, TFANAM, TFAVOR)
                                   FROM PA0021
                                   WHERE PERNR EQ PNPPERNR-LOW
                                   AND FAVOR IN IFAVOR
                                   AND FANAM IN IFANAM.
  ELSEIF CURSORFIELD = 'FAMSA'.
    SELECT SINGLE FAMSA FANAM FAVOR INTO (TFAMSA, TFANAM, TFAVOR)
                                   FROM PA0021
                                   WHERE PERNR EQ PNPPERNR-LOW
                                   AND FAMSA IN IFAMSA.
  ENDIF.
  MOVE: TFANAM TO FANAM,
        TFAVOR TO FAVOR,
        TFAMSA TO FAMSA.
  SELECT SINGLE STEXT INTO INTKY FROM T591S WHERE INFTY EQ '0021'
                                      AND SUBTY EQ FAMSA
                                      AND SPRSL EQ SY-LANGU.
*---Yapilan is ve mahiyeti
  CLEAR: IS, MAHIS.
  SELECT SINGLE * FROM PA0001 WHERE PERNR IN PNPPERNR
                              AND   BEGDA LE SDATE
                              AND   ENDDA GE SDATE.
  SELECT SINGLE STEXT INTO IS FROM HRP1000 WHERE PLVAR EQ '01'
                              AND   OTYPE EQ 'C '
                              AND   OBJID EQ PA0001-STELL
                              AND   LANGU EQ SY-LANGU.
  SELECT SINGLE STEXT INTO MAHIS FROM HRP1000 WHERE PLVAR EQ '01'
                                 AND   OTYPE EQ 'O '
                                 AND   OBJID EQ PA0001-ORGEH
                                 AND   LANGU EQ SY-LANGU.

*---top-of-page.
TOP-OF-PAGE.
IF SY-UCOMM NE 'SVK1'.
  IF E2 = 'X'.
    PERFORM TOP_OF_PAGE_WRITE_SURFACE_02.
  ELSEIF E1 = 'X'.
    PERFORM TOP_OF_PAGE_WRITE_SURFACE_01.
  ENDIF.
ENDIF.
*---end-of-page.
END-OF-PAGE.
  NEW-PAGE.
*---start-of-selection.
START-OF-SELECTION.
  PERFORM SET_INITIAL_CONDITIONS.

GET PERNR.
*--
  CALL FUNCTION 'RP_HIRE+FIRE'
    EXPORTING
        BEG = PN/BEGDA
        END = PN/ENDDA
    IMPORTING
        HIRE_DATE = SDATE
        FIRE_DATE = SDATE
    TABLES
        PP0000 = P0000
        PP0001 = P0001
        PPHIFI = PHIFI .

  RP-PROVIDE-FROM-LAST P0001 SPACE SDATE SDATE.
* check:  p0001-plans ne '99999999' ,           "TL 23.02.2000
  CHECK: P0001-PERSG IN PNPPERSG.
  RP-PROVIDE-FROM-LAST P9004 SPACE SDATE SDATE.
  CHECK SY-SUBRC EQ 0.
  IF P0001-PERSG = 2. EMKDA = P0001-BEGDA. ENDIF. "retire ?
  SELECT SINGLE * FROM T9YD1 WHERE WERKS EQ P0001-WERKS AND
                                   BTRTL EQ P0001-BTRTL.
  SELECT SINGLE * FROM T9Y01 WHERE CITY = T9YD1-CITY.
  CD-KEY-PERNR = PERNR-PERNR.
  RP-IMP-C2-CD.
  PERFORM FILL_TAB_RGDIR.
  SELECT SINGLE SSKNO NAME1  STRET PFACH CITY
         INTO (SSKIS, NAME1, STRET, PFACH, CITY)
          FROM T9YD1
          WHERE WERKS EQ P0001-WERKS
          AND  BTRTL EQ P0001-BTRTL
          AND  BEGDA LE TARIH
          AND  ENDDA GE TARIH.
*---end-of-selection.
END-OF-SELECTION.
  SET PF-STATUS 'SVK1'.
  IF E1 = 'X'.
    PERFORM WRITE_SURFACE_TO_SCREEN_01.
    PERFORM WRITE_LIST_TO_SCREEN_01.
    PERFORM END_OF_PAGE_WRITE_SURFACE_01.
  ELSE.
    PERFORM WRITE_LIST_TO_SCREEN_02.
    PERFORM END_OF_PAGE_WRITE_SURFACE_02.
    PERFORM END_OF_PAGE_WRITE_SURFACE_01.
  ENDIF.
*----at user-command.
AT USER-COMMAND.
  CASE SY-UCOMM.
    WHEN 'LEAV'.
      SET SCREEN 0.
      LEAVE SCREEN.
    WHEN 'CANC'.
      LEAVE SCREEN.
    WHEN 'PRNT'.
      PERFORM PRINT_TO_PAGE.
  ENDCASE.
*&---------------------------------------------------------------------*
*&      Form  WRITE_SURFACE_TO_SCREEN_01
*&---------------------------------------------------------------------*
FORM WRITE_SURFACE_TO_SCREEN_01.
  FORMAT COLOR COL_POSITIVE INTENSIFIED OFF.
  WRITE:
   /01 SY-VLINE,
    02 'SIGORTALININ',
    80 SY-VLINE.
  ULINE (80).
  WRITE:
   /01 SY-VLINE,
    02 '1)Sicil No:',
    47 SY-VLINE,
    48 P9004-SSKNO,
    80 SY-VLINE,
   /01 SY-VLINE,
    02 '2)Adi ve Soyadi:',
    47 SY-VLINE,
    48 P0001-ENAME,
    80 SY-VLINE,
   /01 SY-VLINE,
    02 '3)Dogum Tarihi:',
    47 SY-VLINE,
    48 P0002-GBDAT,
    80 SY-VLINE,
   /01 SY-VLINE,
    02 '4)Ise Giris Tarihi:',
    47 SY-VLINE,
    48 P0000-BEGDA,
    80 SY-VLINE,
   /01 SY-VLINE,
    02 '5)Vztye çikmak için isyer.ayrildg.trh ve saat',
    47 SY-VLINE,
*   48 tarih,                                      "TL 23.02.2000
*   60 saat,                                       "TL 23.02.2000
    80 SY-VLINE.
  ULINE (80).
 WRITE:
  / SY-VLINE,
    02 'IS KAZASI HALINDE',
    80 SY-VLINE.
  ULINE (80).
  WRITE:
   /01 SY-VLINE,
    02 '6)Olay Tarihindeki Isçi Sayisi:',
    47 SY-VLINE, PRSAY,
    80 SY-VLINE,
   /01 SY-VLINE,
    02 '7)Sigort. Yaptigi Is ve Bu Is. Mahiyeti:',
    47 SY-VLINE,
    48 IS+(15),MAHIS+(15),
    80 SY-VLINE,
   /01 SY-VLINE,
    02 '8)Is Kzs.ols sekli,vuku buldg.yer,trh ve saat',
    47 SY-VLINE,
    48 KAZSK,
    55 ',',
    56 KAZYR,
    63 ',',
*    64 sdate,                             "TL 23.02.2000
    74 ',',
*    75 stime+(2),                         "TL 23.02.2000
    77 ':',
*    78 stime+2(2),                        "TL 23.02.2000
    80 SY-VLINE,
   /01 SY-VLINE,
    02 '9)Olay günündeki is basi saati:',
    47 SY-VLINE,
*    48 t550a-sobeg,
    48 ISBAS,
    80 SY-VLINE,
   /01 SY-VLINE,
    02 '10)Taniklarin ad ve soyadlari:',
    47 SY-VLINE,
    48 TANIK1,
    63 ',',
    64 TANIK2,
    80 SY-VLINE.
  WRITE AT /1(80) SY-ULINE.
  WRITE:
   /01 SY-VLINE,
    02 '11)Sigortalinin prim halinin sona erip ermedigi ermisse',
       'tarihi(A)',
    67 SY-VLINE,
* if emkda ne 0. write 68 emkda. endif.          "TL 23.02.2000
    68 SDATE,                                    "TL 23.02.2000
    80 SY-VLINE.
  WRITE AT /1(80) SY-ULINE.
  WRITE:
   /01 SY-VLINE,
       '12)',
    14 SY-VLINE,
    15 'Pr',
    17 SY-VLINE,
    27 'Hakettigi Ücretler(C)',
    56 SY-VLINE,
    68 SY-VLINE,
    69 'Isyer. veya',
    80 SY-VLINE,
   /01 SY-VLINE,
    07 'Aylar',
    14 SY-VLINE,
    15 'im',
    17 SY-VLINE.
  WRITE AT 18(38) SY-ULINE.
  WRITE:
    56 SY-VLINE,
    57 'Prim veya',
    68 SY-VLINE,
    69 'mahkemece',
    80 SY-VLINE,
   /01 SY-VLINE,
    08 '(B)',
    14 SY-VLINE,
    15 'Ö',
    17 SY-VLINE,
    29 SY-VLINE,
    56 SY-VLINE,
    57 'Ikramiye',
    68 SY-VLINE,
    69 'öden. karar',
    80 SY-VLINE,
   /01 SY-VLINE,
    14 SY-VLINE,
    15 'de',
    17 SY-VLINE,
    20 'Rakamla',
    29 SY-VLINE,
    38 'Yaziyla',
    56 SY-VLINE,
    68 SY-VLINE,
    69 'verilen',
    80 SY-VLINE,
   /01 SY-VLINE,
    14 SY-VLINE,
    15 'me',
    17 SY-VLINE,
    29 SY-VLINE,
    56 SY-VLINE,
    68 SY-VLINE,
    69 'ücret',
    80 SY-VLINE.
  WRITE AT /1(80) SY-ULINE.
ENDFORM.                               " WRITE
*&---------------------------------------------------------------------*
*&      Form  SET_INITIAL_CONDITIONS
*&---------------------------------------------------------------------*
FORM SET_INITIAL_CONDITIONS.
  MONEND = TARIH.
  MONEND+6(2) = '01'.
  CALL FUNCTION 'RP_LAST_DAY_OF_MONTHS'
       EXPORTING
            DAY_IN            = MONEND
       IMPORTING
            LAST_DAY_OF_MONTH = MONEND.
  MOVE 12 TO LOOPT.
  IF E1  NE SPACE . MOVE 6 TO LOOPT. ENDIF.
  FPPER-FPPER = TARIH+(6).
  DO LOOPT  TIMES.
    IF TARIH EQ MONEND.
      SELECT SINGLE LTX FROM T247 INTO FPPER-STXT
                WHERE SPRAS EQ SY-LANGU AND
                      MNR   EQ FPPER+4(2).
      APPEND FPPER.
    IF FPPER-FPPER+4(2) = 1.
       FPPER-FPPER+0(4) = FPPER-FPPER+0(4) - 1.
       FPPER-FPPER+4(2) = 13.
    ENDIF.
      FPPER-FPPER+4(2) = FPPER-FPPER+4(2) - 1.
    ELSE.
      IF FPPER-FPPER+4(2) = 1.
        FPPER-FPPER+0(4) = FPPER-FPPER+0(4) - 1.
        FPPER-FPPER+4(2) = 13.
      ENDIF.
      FPPER-FPPER+4(2) = FPPER-FPPER+4(2) - 1.
      SELECT SINGLE LTX FROM T247 INTO FPPER-STXT
                WHERE SPRAS EQ SY-LANGU AND
                      MNR   EQ FPPER+4(2).
      APPEND FPPER.
    ENDIF.
  ENDDO.
  CLEAR PRSAY.
  SELECT * FROM PA0000 WHERE MASSN NE '10'
                       AND   BEGDA LE SDATE
                       AND   ENDDA GE SDATE.
    SELECT SINGLE * FROM PA0001 WHERE  PERNR EQ PA0000-PERNR
                                AND    BEGDA LE SDATE
                                AND    ENDDA GE SDATE.
     CHECK PA0001-PLANS NE '99999999'.
     PRSAY = PRSAY + 1.
  ENDSELECT.
ENDFORM.                               " SET_INITIAL_CONDITIONS
*&---------------------------------------------------------------------*
*&      Form  PRINT_TO_PAGE
*&---------------------------------------------------------------------*
FORM PRINT_TO_PAGE.
*if e1 = 'X'.
  PERFORM TOP_OF_PAGE_PRINT_SURFACE_01.
  PERFORM PRINT_SURFACE_TO_SCREEN_01.
  PERFORM PRINT_LIST_TO_SCREEN_01.
  PERFORM END_OF_PAGE_PRINT_SURFACE_01.
*elseif e2 = 'X'.
*  perform top_of_page_print_surface_02.
*  perform print_list_to_screen_02.
*  perform end_of_page_print_surface_01.
*endif.
ENDFORM.                               " PRINT_TO_PAGE
*&---------------------------------------------------------------------*
*&      Form  WRITE_LIST_TO_SCREEN_01
*&---------------------------------------------------------------------*
FORM WRITE_LIST_TO_SCREEN_01.
  FORMAT COLOR COL_POSITIVE INTENSIFIED OFF.
  CLEAR SSKDY.
  LOOP AT FPPER.
    SSKDY = SSKDY + FPPER-SSKDY.
    IF SSKDY GT 120. DELETE FPPER.  ENDIF.
  ENDLOOP.
  SORT FPPER BY FPPER ASCENDING.
  LOOP AT FPPER.
    CHECK FPPER-SSKDY NE 0.
    WRITE:
     /01 SY-VLINE,
      14 SY-VLINE,
      17 SY-VLINE,
      29 SY-VLINE,
      30 FPPER-WORD+(26),
      56 SY-VLINE,
      68 SY-VLINE,
      80 SY-VLINE,
     /01 SY-VLINE,
      02 FPPER-FPPER+0(4),
      06 '/',
      07 FPPER-SSKDY,
      17 SY-VLINE,
      07 FPPER-STXT+0(7),
      14 SY-VLINE,
      18(11) FPPER-BETRGM CURRENCY 'TRL',
      29 SY-VLINE,
      30 FPPER-WORD+26(26),
      56 SY-VLINE,
      57(11) FPPER-BETRGP CURRENCY 'TRL',
      68 SY-VLINE,
      69(11) FPPER-BETRGC CURRENCY 'TRL',
      80 SY-VLINE,
     /01 SY-VLINE,
      14 SY-VLINE,
      17 SY-VLINE,
      29 SY-VLINE,
      30 FPPER-WORD+52(26),
      56 SY-VLINE,
      68 SY-VLINE,
      80 SY-VLINE.
    WRITE AT /1(80) SY-ULINE.
  ENDLOOP.
ENDFORM.                               " WRITE_LIST_TO_SCREEN
*&---------------------------------------------------------------------*
*&      Form  FILL_TAB_RGDIR
*&---------------------------------------------------------------------*
FORM FILL_TAB_RGDIR.
  RX-KEY-PERNR = PERNR-PERNR.
  LOOP AT FPPER.
    LOOP AT RGDIR WHERE FPPER = FPPER-FPPER.
      UNPACK RGDIR-SEQNR TO RX-KEY-SEQNO.
      RP-IMP-C2-RX.
      CHECK RP-IMP-RX-SUBRC EQ 0.
      SELECT SINGLE * FROM T9YSS WHERE BEGDA LE RGDIR-FPBEG
                                   AND ENDDA GE RGDIR-FPEND.
      LOOP AT RT  .
        CASE RT-LGART.
          WHEN '/104'.
            MINBTR = T9YSS-ASSTB / 30 * RT-ANZHL.
            FPPER-SSKDY = RT-ANZHL.
            FPPER-BETRGM = RT-BETRG.
            PERFORM SPELL_AMOUNT.
            IF MINBTR > RT-BETRG. FPPER-BETRGM = MINBTR. ENDIF.
          WHEN 'Y550'. FPPER-BETRGP = RT-BETRG.
          WHEN '/111'. FPPER-BETRGC = RT-BETRG.
        ENDCASE.
      ENDLOOP.
    ENDLOOP.
    MODIFY FPPER.
  ENDLOOP.
ENDFORM.                               " FILL_TAB_RGDIR
*&---------------------------------------------------------------------*
*&      Form  SPELL_AMOUNT
*&---------------------------------------------------------------------*
FORM SPELL_AMOUNT.
  CLEAR SPELL.
  CALL FUNCTION 'SPELL_AMOUNT'
       EXPORTING
            LANGUAGE  = SY-LANGU
            CURRENCY  = SY-WAERS
            AMOUNT    = RT-BETRG
            FILLER    = ''
       IMPORTING
            IN_WORDS  = SPELL
       EXCEPTIONS
            NOT_FOUND = 1
            TOO_LARGE = 2.
  MOVE SPELL-WORD TO FPPER-WORD.
  MODIFY FPPER.
ENDFORM.                               " SPELL_AMOUNT
*&---------------------------------------------------------------------*
*&      Form  TOP_OF_PAGE_WRITE_SURFACE_02
*&---------------------------------------------------------------------*
FORM TOP_OF_PAGE_WRITE_SURFACE_02.
  FORMAT COLOR COL_NEGATIVE INTENSIFIED OFF.
  WRITE AT /1(80) SY-ULINE.
  WRITE:
   /01 SY-VLINE,
    35 'VIZITE KAGIDI',
    80 SY-VLINE,
   /01 SY-VLINE,
    20 'SIGORTALIININ ESLERI VE GEÇINDIRMEKLE YÜKÜMLÜ',
    80 SY-VLINE,
   /01 SY-VLINE,
    30 'OLDUKLARI ÇOCUKLARINA AIT',
    80 SY-VLINE,
   /01 SY-VLINE,
    02 'Isyerinin Ünvani:',
    20 NAME1,
    80 SY-VLINE,
   /01 SY-VLINE,
    02 'Adres           :',
    20 STRET,
       'P.K.:',
       PFACH,
       CTEXT,
    80 SY-VLINE,
   /01 SY-VLINE,
    80 SY-VLINE,
   /01 SY-VLINE,
    68 TARIH,
    80 SY-VLINE,
   /01 SY-VLINE,
    02 'Sigortali Tedavinin yapilabilmesi için sicil kartini göstermek',
       'zorundasin',
    80 SY-VLINE.
  ULINE (80).
  WRITE: /01 SY-VLINE,
          02 'SIGORTALININ',
          80 SY-VLINE.
  ULINE (80).
  WRITE:
   /01 SY-VLINE,
    02 '1)Sicil No:',
    60 SY-VLINE,
    61 P9004-SSKNO,
    80 SY-VLINE,
   /01 SY-VLINE,
    02 '2)Adi ve Soyadi:',
    60 SY-VLINE,
    61 P0001-ENAME,
    80 SY-VLINE,
   /01 SY-VLINE,
    02 '3)Ise Giris Tarihi:',
    60 SY-VLINE,
    61 P0000-BEGDA,
    80 SY-VLINE,
   /01 SY-VLINE,
    02 '4)Sigrtali prim halinin sona erip ermedigi ermisse tarihi',
    60 SY-VLINE.
    IF EMKDA NE 0. WRITE 61 EMKDA. ENDIF.
  WRITE 80 SY-VLINE.
  WRITE: AT /1(80) SY-ULINE,
   /01 SY-VLINE,
    02 '5)Hastanin Adi Soyadi           :',
    60 SY-VLINE,
    61 FAVOR,
    70 FANAM,
    80 SY-VLINE,
   /01 SY-VLINE,
    04 'Sigortaliya karabet derecesi  :',
    60 SY-VLINE,
    61 INTKY,
    80 SY-VLINE.
  WRITE: AT /1(80) SY-ULINE,
   /01 SY-VLINE,
    02 '6)Aylar           (B)',
    40 SY-VLINE,
    45 'Prim ödeme Gün Sayisi' ,
    80 SY-VLINE,
   /01 SY-VLINE,
    40 SY-VLINE,
    80 SY-VLINE.
  WRITE: AT /1(80) SY-ULINE.
ENDFORM.                               " TOP_OF_PAGE_WRITE_SURFACE_02
*&---------------------------------------------------------------------*
*&      Form  END_OF_PAGE_WRITE_SURFACE_02
*&---------------------------------------------------------------------*
FORM END_OF_PAGE_WRITE_SURFACE_02.
  FORMAT COLOR COL_NORMAL INTENSIFIED OFF.
  WRITE:
   / SY-VLINE, 3 'NOT: Bu belge ile ver. bilgi. yanlis olmasi',
     'sebep. esi ve geçin. yük. oldugu', 80 SY-VLINE,
   / SY-VLINE, 3 'çocuk. için kurumca yersiz olarak yap. her türlü',
    'masraflar isverenden alinir.' , 80 SY-VLINE.
  WRITE AT /1(80) SY-ULINE.
ENDFORM.                               " END_OF_PAGE_WRITE_SURFACE_02
*&---------------------------------------------------------------------*
*&      Form  WRITE_LIST_TO_SCREEN_02
*&---------------------------------------------------------------------*
FORM WRITE_LIST_TO_SCREEN_02.
  FORMAT COLOR COL_NORMAL INTENSIFIED OFF.
  SORT FPPER BY FPPER ASCENDING.
  LOOP AT FPPER.
    WRITE:
    / SY-VLINE, FPPER-FPPER+0(4), 7 '/', 8 FPPER-STXT,
      40 SY-VLINE,50 FPPER-SSKDY, 80 SY-VLINE.
    WRITE AT /1(80) SY-ULINE.
  ENDLOOP.
ENDFORM.                               " WRITE_LIST_TO_SCREEN_02
*&---------------------------------------------------------------------*
*&      Form  END_OF_PAGE_WRITE_SURFACE_01
*&---------------------------------------------------------------------*
FORM END_OF_PAGE_WRITE_SURFACE_01.
  FORMAT COLOR COL_POSITIVE INTENSIFIED OFF.
  WRITE:
  / SY-VLINE, 2 'Sosyal Sigortalar', 19 SY-VLINE, 20 'M', 21 SY-VLINE,
    'Is Kodu', 29 SY-VLINE, 'Sube K.', 35 SY-VLINE, 36 'Sira No',
    47 SY-VLINE, 48 'Is',51 SY-VLINE,52 'IçK',
    55 SY-VLINE,56 'Isveren veya Vekilinin', 80 SY-VLINE,
  / SY-VLINE,
    AT 19(37) SY-ULINE,
    60 'Adi, Soyadi,',
    80 SY-VLINE,
  / SY-VLINE, 'Isyeri Sicil No', 19 SY-VLINE,20 SSKIS+0(1),
    21 SY-VLINE, 22 SSKIS+1(1), 23 SY-VLINE, 24 SSKIS+2(1),
    25 SY-VLINE, 26 SSKIS+3(1), 27 SY-VLINE, 28 SSKIS+4(1),
    29 SY-VLINE, 30 SSKIS+5(1), 31 SY-VLINE, 32 SSKIS+6(1),
    33 SY-VLINE, 34 SSKIS+7(1), 35 SY-VLINE, 36 SSKIS+8(1),
    37 SY-VLINE, 38 SSKIS+9(1), 39 SY-VLINE, 40 SSKIS+10(1),
    41 SY-VLINE, 42 SSKIS+11(1), 43 SY-VLINE, 44 SSKIS+13(1),
    45 SY-VLINE, 46 SSKIS+13(1), 47 SY-VLINE, 48 SSKIS+14(1),
    49 SY-VLINE, 50 SSKIS+15(1), 51 SY-VLINE, 52 SSKIS+16(1),
    53 SY-VLINE, 54 SSKIS+17(1), 55 SY-VLINE,
    58 'Imzasi ve Kasesi', 80 SY-VLINE,
  / SY-VLINE,
    AT 19(37) SY-ULINE,
    60 ISVEKAD,
    80 SY-VLINE,
  / SY-VLINE,
    80 SY-VLINE,
  / SY-VLINE,
    80 SY-VLINE,
  / SY-VLINE,
    80 SY-VLINE,
  / SY-VLINE,
    80 SY-VLINE,
  / SY-VLINE,
    80 SY-VLINE,
  / SY-VLINE,
    80 SY-VLINE.
  ULINE (80).
ENDFORM.                               " END_OF_PAGE_WRITE_SURFACE_01
*&---------------------------------------------------------------------*
*&      Form  TOP_OF_PAGE_WRITE_SURFACE_01
*&---------------------------------------------------------------------*
FORM TOP_OF_PAGE_WRITE_SURFACE_01.
  FORMAT COLOR COL_NEGATIVE INTENSIFIED OFF.
  WRITE AT /1(80) SY-ULINE.
  WRITE:
   /01 SY-VLINE,
    30 'ISÇI VIZITE KAGIDI',
    80 SY-VLINE,
   /01 SY-VLINE,
    32 'SIGORTALIYA AIT',
    80 SY-VLINE,
   /01 SY-VLINE,
    80 SY-VLINE,
   /01 SY-VLINE,
    02 'Isyerinin Ünvani:',
    20 NAME1,
    80 SY-VLINE,
   /01 SY-VLINE,
    02 'Adres           :',
    20 STRET,'P.K.',
       PFACH,
       CTEXT,
    80 SY-VLINE,
   /01 SY-VLINE,
    80 SY-VLINE,
   /01 SY-VLINE,
    68 TARIH,
    80 SY-VLINE,
   /01 SY-VLINE,
    80 SY-VLINE,
   /01 SY-VLINE,
    02 'Sigortali Tedavinin yapilabilmesi için sicil kartini göstermek',
       'zorundasin',
    80 SY-VLINE.
  ULINE (80).
ENDFORM.                    " TOP_OF_PAGE_WRITE_SURFACE_01
*&---------------------------------------------------------------------*
*&      Form  PRINT_SURFACE_TO_SCREEN_01
*&---------------------------------------------------------------------*
FORM PRINT_SURFACE_TO_SCREEN_01.
  FORMAT COLOR COL_KEY INTENSIFIED ON.
  SKIP TO LINE 12.
  WRITE: 42 P9004-SSKNO.
  SKIP TO LINE 14.
  WRITE: 42 P0001-ENAME.
  SKIP TO LINE 16.
  WRITE: 42 P0002-GBDAT.
  SKIP TO LINE 18.
  WRITE: 42 P0000-BEGDA.
  SKIP TO LINE 21.
  WRITE: 42 TARIH, 56 SAAT.
IF E2 NE SPACE.
  SKIP TO LINE 24.
  WRITE: 42(19) FAVOR,61(19) FANAM.
ENDIF.
  SKIP TO LINE 26.
  WRITE: 42 PRSAY.
  SKIP TO LINE 28.
  WRITE: 42 IS+(19), MAHIS+(19).
  SKIP TO LINE 31.
  WRITE: 42 KAZSK,
         52 ',',
         53 KAZYR,
         63 ',',
         64 SDATE,
         74 ',',
         75 STIME+(2),
         77 ':',
         78 STIME+2(2).
  SKIP TO LINE 33.
*  write: 42 t550a-sobeg.
  WRITE: 42 ISBAS.
  SKIP TO LINE 35.
  WRITE: 42 TANIK1,
         63 ',',
         64 TANIK2.
  SKIP TO LINE 38.
  IF EMKDA NE 0.
    WRITE: 42 'SONA ERDI',
           55 EMKDA.
  ELSE.
    WRITE 42 'DEVAM EDIYOR'.
  ENDIF.
ENDFORM.                    " PRINT_SURFACE_TO_SCREEN_01
*&---------------------------------------------------------------------*
*&      Form  PRINT_LIST_TO_SCREEN_01
*&---------------------------------------------------------------------*
FORM PRINT_LIST_TO_SCREEN_01.
  FORMAT COLOR COL_KEY INTENSIFIED ON.
  SORT FPPER BY FPPER ASCENDING.
    SKIP TO LINE 46.
  LOOP AT FPPER.
*    linno = fpper+4(2) + 45.
    WRITE:
*           /30 fpper-word+(26),
           /07 FPPER-FPPER+0(4),
            11 '/',
            12(7) FPPER-STXT,
            26(2) FPPER-SSKDY,
            36(12) FPPER-BETRGM CURRENCY 'TRL'.
*            30 fpper-word+26(26),
*            57(12) fpper-betrgp currency 'TRL',
*            69(12) fpper-betrgc currency 'TRL'.
*           /30 fpper-word+52(26).
*  skip 1.
  ENDLOOP.
ENDFORM.                    " PRINT_LIST_TO_SCREEN_01
*&---------------------------------------------------------------------*
*&      Form  END_OF_PAGE_PRINT_SURFACE_01
*&---------------------------------------------------------------------*
FORM END_OF_PAGE_PRINT_SURFACE_01.
  FORMAT COLOR COL_KEY INTENSIFIED ON.
  SKIP TO LINE 55.
*  write: 20 sskis+0(1),
*         22 sskis+1(1),
*         24 sskis+2(1),
*         26 sskis+3(1),
*         28 sskis+4(1),
*         30 sskis+5(1),
*         32 sskis+6(1),
*         34 sskis+7(1),
*         36 sskis+8(1),
*         38 sskis+9(1),
*         40 sskis+10(1),
*         42 sskis+11(1),
*         44 sskis+13(1),
*         46 sskis+13(1),
*         48 sskis+14(1),
*         50 sskis+15(1),
*         52 sskis+16(1),
*         54 sskis+17(1).
  SKIP TO LINE 61.
  WRITE:  65 ISVEKAD.
ENDFORM.                    " END_OF_PAGE_PRINT_SURFACE_01
*&---------------------------------------------------------------------*
*&      Form  PRINT_LIST_TO_SCREEN_02
*&---------------------------------------------------------------------*
FORM PRINT_LIST_TO_SCREEN_02.
  FORMAT COLOR COL_KEY INTENSIFIED ON.
  SORT FPPER BY FPPER ASCENDING.
  SKIP TO LINE 20.
  LOOP AT FPPER.
    WRITE:
    /01 FPPER-FPPER+0(4),
     07 '/', 8 FPPER-STXT,
     50 FPPER-SSKDY.
    SKIP 1.
  ENDLOOP.
ENDFORM.                    " PRINT_LIST_TO_SCREEN_02
*&---------------------------------------------------------------------*
*&      Form  TOP_OF_PAGE_PRINT_SURFACE_02
*&---------------------------------------------------------------------*
FORM TOP_OF_PAGE_PRINT_SURFACE_02.
  FORMAT COLOR COL_KEY INTENSIFIED ON.
  SKIP TO LINE 3.
  WRITE: 20 NAME1.
  SKIP TO LINE 4.
  WRITE: 20 STRET,
            'P.K.:',
            PFACH,
            CTEXT.
  SKIP TO LINE 6.
  WRITE: 68 TARIH.
  SKIP TO LINE 8.
  WRITE: 61 P9004-SSKNO.
  SKIP TO LINE 9.
  WRITE: 61 P0001-ENAME.
  SKIP TO LINE 10.
  WRITE: 61 P0000-BEGDA.
  SKIP TO LINE 11.
    IF EMKDA NE 0. WRITE 61 EMKDA. ENDIF.
  SKIP TO LINE 13.
  WRITE: 61 FAVOR,
         70 FANAM.
  SKIP TO LINE 14.
  WRITE: 61 INTKY.
ENDFORM.                    " TOP_OF_PAGE_PRINT_SURFACE_02
*&---------------------------------------------------------------------*
*&      Form  TOP_OF_PAGE_PRINT_SURFACE_01
*&---------------------------------------------------------------------*
FORM TOP_OF_PAGE_PRINT_SURFACE_01.
  FORMAT COLOR COL_KEY INTENSIFIED ON.
  SKIP TO LINE 1.
*  write: 25 name1.
  SKIP TO LINE 3.
*  write: 25 pfach,
*            ctext.
  SKIP TO LINE 5.
  WRITE: 70 TARIH.
ENDFORM.                    " TOP_OF_PAGE_PRINT_SURFACE_01

Hiç yorum yok:

Yorum Gönder