SAP系統PP模塊常用RFC接口

1.物料主數據
1.1創建/擴展物料主數據:
1.1.1 除分類視圖和檢驗視圖的創建和擴展
    CALL FUNCTION ‘BAPI_MATERIAL_SAVEDATA’
    EXPORTING
      HEADDATA             = IS_HEADER
      CLIENTDATA           = IS_MARA
      CLIENTDATAX          = IS_MARAX
      PLANTDATA            = IS_MARC
      PLANTDATAX           = IS_MARCX
      STORAGELOCATIONDATA  = IS_MARD
      STORAGELOCATIONDATAX = IS_MARDX
      VALUATIONDATA        = IS_MBEW
      VALUATIONDATAX       = IS_MBEWX
      SALESDATA            = IS_MVKE
      SALESDATAX           = IS_MVKEX
    IMPORTING
      RETURN               = OS_RETURN
    TABLES
      MATERIALDESCRIPTION  = IT_MAKT
      UNITSOFMEASURE       = IT_MARM
      UNITSOFMEASUREX      = IT_MARMX
      MATERIALLONGTEXT     = IT_TEXT
      TAXCLASSIFICATIONS   = IT_MLAN
      RETURNMESSAGES       = OT_LOG.
1.1.2 分類視圖的創建和擴展
      CALL FUNCTION ‘BAPI_OBJCL_CREATE’
      EXPORTING
        OBJECTKEYNEW   = ZOBJCT
        OBJECTTABLENEW = ‘MARA’
        CLASSNUMNEW    = IS_OBJECT-CLASSNUMNEW
        CLASSTYPENEW   = IS_OBJECT-CLASSTYPENEW
        STATUS         = ‘1’
        KEYDATE        = SY-DATUM
      IMPORTING
        CLASSIF_STATUS = EP_CLASSIF_STATUS
      TABLES
        RETURN         = TAB_LOG1.
1.1.3 檢驗視圖的創建和擴展
        CALL FUNCTION ‘BAPI_MATINSPCTRL_SAVEREPLICA’
        TABLES
          RETURN         = TAB_LOG
          INSPECTIONCTRL = IT_QMAT.
1.2 顯示物料主數據
1.2.1 主要的數據可直接查詢表MARA,MARC,MARD,MVKE,MARM,MLAN,MAKT,QMAT,MBEW;
1.2.2 分類視圖的顯示
        CALL FUNCTION ‘CLAF_CLASSIFICATION_OF_OBJECTS’
        EXPORTING
          class              = ‘BATCH’
          classtext          = ‘X’
          classtype          = ‘023’
          language           = sy-langu
          object             = p_object
          objecttable        = ‘MARA’
          key_date           = sy-datum
          initial_charact    = ‘X’
        TABLES
          t_class            = et_class
          t_objectdata       = et_objectdata
        EXCEPTIONS
          no_classification  = 1
          no_classtypes      = 2
          invalid_class_type = 3
          OTHERS             = 4.
1.2.3 文本的讀取
      CALL FUNCTION ‘READ_TEXT’
1.3 修改物料主數據(除修改分類視圖調用的函數不一樣外其餘相同)
          CALL FUNCTION ‘BAPI_OBJCL_CHANGE’
          EXPORTING
            objectkey          = zobjct
            objecttable        = is_object-objecttablenew”‘MARA’
            classnum           = is_object-classnumnew”‘BATCH’
            classtype          = is_object-classtypenew     “‘023’
            status             = ‘1’
            keydate            = sy-datum
          IMPORTING
            classif_status     = ep_classif_status
          TABLES
            allocvaluesnumnew  = it_allocvaluesnum
            allocvaluescharnew = it_allocvalueschar
            allocvaluescurrnew = it_allocvaluescurr
            return             = tab_log1.
1.4 刪除、解除刪除物料主數據
      CALL FUNCTION ‘BAPI_MATERIAL_SAVEDATA’
      EXPORTING
        headdata       = is_mathead
        clientdata     = is_mara
        clientdatax    = is_marax
        plantdata      = is_marc
        plantdatax     = is_marcx
        salesdata      = is_mvke
        salesdatax     = is_mvkex
      IMPORTING
        return         = os_log
      TABLES
        returnmessages = ot_log.
1.5 物料修改記錄的查詢
    CALL FUNCTION ‘CHANGEDOCUMENT_READ’
    EXPORTING
      objectclass                = ‘MATERIAL’
      objectid                   = ip_matnr
    TABLES
      editpos                    = ot_positions
    EXCEPTIONS
      no_position_found          = 1
      wrong_access_to_archive    = 2
      time_zone_conversion_error = 3
      OTHERS                     = 4.
1.6 修改物料類型:使用BDC即可
1.7 查詢物料的諸多單位
1.7.1 主要數據可直接查詢表MARA,MARM表
單位相關表
T006                           計量單位
T006_OIB                  計量單位,附加定義
T006A                         分配內部到語言相關單位
(內部單位轉換到外部貿易、技術單位用T006A表,比如要顯示CAR則把數據庫中的KAR在次表中轉換)
T006B                         貿易分配到內部測量單位  
( 外部貿易單位和轉換到內部單位就是用T006B表,比如 PC轉到ST,CAR轉到KAR等)
T006C                         外部技術到內部測量單位的分配
T006D                         尺寸
T006D_OIB                 附加維數
T006E                          計量單位系統(組件,映射)
T006EE                        計量單位系統(實用程序)
T006ET                        計量單位系統(使用程序 -> 文
T006I                            計量單位的 ISO 代碼
T006J                           ISO 測量文本單位碼
T006M                          計量單位組
T006T                           維數文本…
1.7.2 單位轉換
1.7.2.1轉換爲外部格式
CALL FUNCTION ‘CONVERSION_EXIT_CUNIT_OUTPUT’
      EXPORTING
        input      =  
      IMPORTING
        output =     
1.7.2.1轉換爲內部格式
CALL FUNCTION ‘CONVERSION_EXIT_CUNIT_INPUT’
      EXPORTING
        input      =   
      IMPORTING
        output =       
1.7.2.2 物料數量不同單位的轉換
        CALL FUNCTION ‘MD_CONVERT_MATERIAL_UNIT’
        EXPORTING
          I_MATNR              = IOMAMO_TAB-MATNR
          I_IN_ME              = IOMAMO_TAB-ERFME
          I_OUT_ME             = ‘KG’
          I_MENGE              = IOMAMO_TAB-ERFMG
        IMPORTING
          E_MENGE              = IOMAMO_TAB-ERFMG
        EXCEPTIONS
          ERROR_IN_APPLICATION = 1
          ERROR                = 2
          OTHERS               = 3.
1.7.2.3 物料基本計量單位轉換爲其他單位
         CALL FUNCTION ‘MATERIAL_UNIT_CONVERSION’
________________________________________
2 庫存需求查詢
    CALL FUNCTION ‘MD_STOCK_REQUIREMENTS_LIST_API’
    EXPORTING
      matnr                    = ip_matnr
      werks                    = ip_werks
    IMPORTING
      e_mdsta                  = os_mdsta
    TABLES
      mdezx                    = ot_mdezx
    EXCEPTIONS
      material_plant_not_found = 1
      plant_not_found          = 2
      OTHERS                   = 3.
________________________________________

3 物料庫存查詢:通過標準程序RMMMBESTN做   SET PARAMETER ID XXXX FIELD XXXXX在RFC內接GET即可.
________________________________________
4 生產訂單
4.1 創建生產訂單
    CALL FUNCTION ‘BAPI_PRODORD_CREATE’
    EXPORTING
      ORDERDATA    = ORDERDATA
    IMPORTING
      RETURN       = RETURN
      ORDER_NUMBER = ORDER_NUMBER.
4.2 修改生產訂單
      CALL FUNCTION ‘BAPI_PRODORD_CHANGE’ “訂單數量和交貨數量未判斷
      EXPORTING
        NUMBER     = IS_ORDER-AUFNR
        ORDERDATA  = ORDERDATA
        ORDERDATAX = ORDERDATAX
      IMPORTING
        RETURN     = RETURN.
4.3 顯示生產訂單
    CALL FUNCTION ‘BAPI_PRODORD_GET_DETAIL’ “根據實際情況調整輸出信息
    EXPORTING
      NUMBER        = IP_AUFNR
      ORDER_OBJECTS = ORDER_OBJECTS
    TABLES
      HEADER        = HEADER
      OPERATION     = OPERATION
      PROD_REL_TOOL = PROD_REL_TOOL.
________________________________________
5.工程更改號
5.1創建、修改、刪除工程更改號
    CALL FUNCTION ‘CCAP_ECN_MAINTAIN’ “根據實際情況調整輸入信息
    EXPORTING
      CHANGE_HEADER            = CHANGE_HEADER
      OBJECT_BOM               = OBJECT_BOM
      OBJECT_DOC               = OBJECT_DOC
      OBJECT_TLIST             = OBJECT_TLIST
    IMPORTING
      CHANGE_NO                = CHANGE_NO
    EXCEPTIONS
      CHANGE_NO_ALREADY_EXISTS = 1
      ERROR                    = 2.
5.2 顯示工程更改號,查詢表 AENR , AENV即可
5.3 工程更改號有效期
      CALL FUNCTION ‘CC_CHANGE_NUMBER_READ’
      EXPORTING
        EAENNR          = IS_ZRFC_S_PP005-AENNR
      IMPORTING
        ADATUV          = ADATUV_X
      EXCEPTIONS
        NO_RECORD_FOUND = 1
        OTHERS          = 2.
________________________________________
6 BOM
6.1 初始化API
    CALL FUNCTION ‘CALO_INIT_API’.
6.2 創建BOM
  CALL FUNCTION ‘CSAP_MAT_BOM_MAINTAIN’
    EXPORTING
      MATERIAL            = IS_ZRFC_S_PP001-MATNR
      PLANT               = IS_ZRFC_S_PP001-WERKS
      BOM_USAGE           = IS_ZRFC_S_PP001-STLAN
      ALTERNATIVE         = IS_ZRFC_S_PP001-STLAL
      CHANGE_NO           = IS_ZRFC_S_PP001-AENNR
      I_STKO              = I_STKO
      FL_NO_CHANGE_DOC    = ‘ ‘
      FL_COMMIT_AND_WAIT  = ‘X’
      FL_CAD              = ‘ ‘
      FL_BOM_CREATE       = ‘X’
      FL_NEW_ITEM         = ‘X’
      FL_COMPLETE         = ‘X’
      FL_DEFAULT_VALUES   = ‘X’
      FL_IDENTIFY_BY_GUID = ‘ ‘
    IMPORTING
      FL_WARNING          = FL_WARNING
      O_STKO              = O_STKO
    TABLES
      T_STPO              = T_STPO
    EXCEPTIONS
      ERROR               = 1
      OTHERS              = 2.
6.3 拷貝日誌
    CALL FUNCTION ‘CALO_MSG_APPEND_DB_LOG’
    EXCEPTIONS
      LOG_OBJECT_NOT_FOUND    = 1
      LOG_SUBOBJECT_NOT_FOUND = 2
      LOG_INTERNAL_ERROR      = 3
      OTHERS                  = 4.
6.4 讀取日誌
  CALL FUNCTION ‘CALO_LOG_READ_MESSAGES’
    TABLES
      MESSAGES_AND_PARAMETERS = LT_MESSAGES
    EXCEPTIONS
      OTHERS                  = 1.
6.5 修改、刪除BOM
“修改時 IS_ZRFC_S_PP003-ITEM_GUID+ IS_ZRFC_S_PP003-ITEM_NO 爲項目唯一標示
“文本相關:擡頭長文本 OBJECT_ID = ‘0’,可選長文本  OBJECT_ID = ‘1’ 各需添加一行空行;行項目長文本OBJECT_ID = ‘2’,每個行項目文本需添加兩行空行
     CALL FUNCTION ‘CSAP_MAT_BOM_MAINTAIN’    
    EXPORTING
      MATERIAL    = IS_ZRFC_S_PP004-MATNR
      PLANT       = IS_ZRFC_S_PP004-WERKS
      BOM_USAGE   = ‘1’
      ALTERNATIVE = ‘1’
      FL_NEW_ITEM = ‘X’
      CHANGE_NO   = IS_ZRFC_S_PP004-AENNR
      I_STKO      = TSTK1
    IMPORTING
      FL_WARNING  = FLG_WARNING
      O_STKO      = TSTK2
    TABLES
      T_STPO      = TSTP3
      T_LTX_LINE  = IS_LTX_LINE
    EXCEPTIONS
      OTHERS      = 1.
6.6 讀取BOM(修改時調用)
      CALL FUNCTION ‘CSAP_MAT_BOM_OPEN’
      EXPORTING
        MATERIAL    = IS_ZRFC_S_PP005-MATNR
        PLANT       = IS_ZRFC_S_PP005-WERKS
        BOM_USAGE   = IS_ZRFC_S_PP005-STLAN
        ALTERNATIVE = IS_ZRFC_S_PP005-STLAL
        VALID_FROM  = DATUV
        CHANGE_NO   = IS_ZRFC_S_PP005-AENNR
      IMPORTING
        O_STKO      = STKO1
      TABLES
        T_STPO      = OT_STPO
      EXCEPTIONS
        ERROR       = 1
        OTHERS      = 2.
6.7 讀取BOM(顯示)
      CALL FUNCTION ‘CSAP_MAT_BOM_READ’
      EXPORTING
        MATERIAL    = IS_ZRFC_S_PP005-MATNR
        PLANT       = IS_ZRFC_S_PP005-WERKS
        BOM_USAGE   = IS_ZRFC_S_PP005-STLAN
        ALTERNATIVE = IS_ZRFC_S_PP005-STLAL
        VALID_FROM  = DATUV
        CHANGE_NO   = IS_ZRFC_S_PP005-AENNR
      TABLES
        T_STPO      = OT_STPO1
        T_LTX_LINE  = OT_LTX_LINE
      EXCEPTIONS
        ERROR       = 1
        OTHERS      = 2.
6.8 BOM更改記錄
    CONCATENATE : SY-MANDT  ‘M’  OT_STKO-BOM_NO INTO  OBJECTID.
    CALL FUNCTION ‘CHANGEDOCUMENT_READ’
    EXPORTING
      OBJECTCLASS                      = ‘STUE’
      OBJECTID                         = OBJECTID
      DATE_UNTIL                       = ‘99991231’
      TIME_UNTIL                       = ‘235959’
    TABLES
      EDITPOS                          = OT_EDITPOS
   EXCEPTIONS
     NO_POSITION_FOUND                = 1
     WRONG_ACCESS_TO_ARCHIVE          = 2
     TIME_ZONE_CONVERSION_ERROR       = 3
     OTHERS                           = 4.
6.9 BOM多層展開
    CALL FUNCTION ‘CS_BOM_EXPL_MAT_V2’
    EXPORTING
      altvo                 = ‘ ‘
      aufsw                 = ‘ ‘
      auskz                 = ‘ ‘
      bagrp                 = ‘ ‘
      beikz                 = ‘ ‘
      bessl                 = ‘ ‘
      brems                 = ‘ ‘
      capid                 = is_zrfc_s_pp008-capid
      datuv                 = is_zrfc_s_pp008-datuv
      drldt                 = ‘ ‘
      ehndl                 = ‘1’
      erskz                 = ‘ ‘
      erssl                 = ‘ ‘
      mtnrv                 = is_zrfc_s_pp008-matnr
      mehrs                 = ‘X’    “多層
      mmory                 = ‘1’
      stlal                 = is_zrfc_s_pp008-stlal
      stlan                 = ‘1’                                    
      werks                 = is_zrfc_s_pp008-werks
      aumgb                 = ‘X’
    IMPORTING
      topmat                = topmat
    TABLES
      stb                   = stb
      matcat                = matcat
    EXCEPTIONS
      alt_not_found         = 1
      call_invalid          = 2
      material_not_found    = 3
      missing_authorization = 4
      no_bom_found          = 5
      no_plant_data         = 6
      no_suitable_bom_found = 7
      conversion_error      = 8
      OTHERS                = 9.
6.10 BOM使用位置清單
    CALL FUNCTION ‘CS_WHERE_USED_MAT’
    EXPORTING
      DATUB                      = SY-DATUM
      DATUV                      = SY-DATUM
      MATNR                      = ZIDNRK
      WERKS                      = ZWERKS
    IMPORTING
      TOPMAT                     = TOPMAT
    TABLES
      WULTB                       = WULTB
      EQUICAT                    = EQUICAT
      KNDCAT                     = KNDCAT
      MATCAT                     = MATCAT
      STDCAT                     = STDCAT
      TPLCAT                     = TPLCAT
      PRJCAT                     = PRJCAT
    EXCEPTIONS
      CALL_INVALID               = 1
      MATERIAL_NOT_FOUND         = 2
      NO_WHERE_USED_REC_FOUND    = 3
      NO_WHERE_USED_REC_SELECTED = 4
      NO_WHERE_USED_REC_VALID    = 5
      OTHERS                     = 6.
________________________________________
7 工藝路線
7.1 創建修改工藝路線,使用BDC
7.2 查詢物料的工藝路線
    CALL FUNCTION ‘CP_SE_ALT_READ_BY_MAT’
    EXPORTING
      kunr_max  = ”
      kunr_min  = ”
      lifnr_max = ”
      lifnr_min = ”
      matnr     = is_zrfc_s_pp017-matnr
      plnal_max = ”
      plnal_min = ”
      plnme     = ”
      plnnr     = ”
      plnty_max = ”
      plnty_min = ‘N’
      statu     = ”
      aennr     = is_zrfc_s_pp017-aennr
      sttag     = is_zrfc_s_pp017-sttag
      werks_mat = is_zrfc_s_pp017-werks
    TABLES
      mapl_exp  = mapl_exp
      plko_exp  = plko_exp
    EXCEPTIONS
      not_found = 1
      OTHERS    = 2.
      CALL FUNCTION ‘CARO_ROUTING_READ’
      EXPORTING
        date_from            = date_from                   
        date_to              = date_from                   
        plnty                = ot_zrfc_s_pp018-plnty
        plnnr                = ot_zrfc_s_pp018-plnnr
        plnal                = ot_zrfc_s_pp018-plnal
        matnr                = is_zrfc_s_pp017-matnr
        buffer_del_flg       = ‘X’
        delete_all_cal_flg   = ‘X’
        adapt_flg            = ‘X’
        iv_create_add_change = ‘ ‘
      TABLES
        tsk_tab              = tsk_tab
        seq_tab              = seq_tab
        opr_tab              = opr_tab
        com_tab              = com_tab
      EXCEPTIONS
        not_found            = 1
        ref_not_exp          = 2
        not_valid            = 3
        OTHERS               = 4.

清涼的氣泡水居然有這5種好處 – TaiwanNutrition

氣泡水這兩年在台灣特別紅,PTT上討論不斷,尤其是台灣品牌也開始推出氣泡水之後,不用到進口超市,7-11也可以買到便宜的氣泡水,讓氣泡水更受歡迎。到底氣泡水在紅什麼呢?喝氣泡水跟喝水有什麼不一樣?喝氣泡水又真的比較健康嗎?以下這篇文章要帶你來5分鐘看透氣泡水。

氣泡水可以增加飽足感

氣泡水的原理

喝過氣泡水的人都會發現,氣泡水的味道和一般的碳酸飲料很像。其實氣泡水的製作沒有特殊技巧,就是在水裡打進碳酸飲料中都有的二氧化碳,讓二氧化碳在水中產生氣泡。

沒有經過調味的氣泡水是沒有味道的,熱量也跟水一樣是零,不過有些廠商為了讓氣泡水喝起來更順口,會在氣泡水中加入果汁糖漿,讓氣泡水帶有水果的甜味,雖然口感可能更好,但熱量就變得跟一般的有糖飲料一樣了。

氣泡水中加入二氧化碳,有碳酸飲料的口感

氣泡水的五大功效

雖然只是多加了二氧化碳,但氣泡水的功效可不少,其中最實用的有五大功效。

功效一:幫助體重管理

幫助減肥是氣泡水快速竄紅的主要原因之一。由於氣泡水裡的氣泡到胃裡之後會膨脹,產生飽足感,可以幫助抑制食慾。日本研究發現,250毫升的氣泡水,在胃裡會產生900毫升氣體,不用吃多少東西,一下子就覺得飽了。

更吸引人的是,氣泡水不像可樂的熱量那麼高,也不像零卡可樂含有阿斯巴甜等對身體不好的人造糖分,讓健康更有保障。

功效二:消除疲勞

運動後肌肉裡會產生乳酸,使身體感到痠痛,也因此特別感到疲倦。氣泡水裡二氧化碳產生的碳酸可以中和乳酸,幫助身體消除疲勞。運動完後喝點氣泡水,感覺特別煥然一新。

功效三:幫助消化,緩解便秘

很多上班族飲食不正常,吃的青菜又不夠多,常常有消化不良,甚至是便秘的問題。氣泡水中的碳酸可以刺激胃壁黏膜,促進腸胃蠕動,幫助消化,對於緩解便秘也很有幫助

功效四:加快新陳代謝

想要減肥成功,不只要少吃多動,也要身體的新陳代謝,排解體內過多的脂肪和熱量。氣泡水裡的碳酸,可以幫助加快新陳代謝,間接地幫助體重管理

功效五:清涼消暑

台灣的夏天越來越熱,只要出了冷氣房,汗就留個不停,這時候喝點冰的飲料,感覺特別消暑,但飲料喝多了又怕變胖,沒有熱量的氣泡水就成了好選擇。氣泡水中的二氧化碳和可樂一樣,可以幫助帶走熱量,很快就能降低體溫

喝氣泡水的好處

喝氣泡水最大的好處就是沒有熱量,又有可樂、汽水等碳酸飲料的口感,對於許多不愛喝水,只愛喝飲料的人,是個比較健康的補充水分的方法。衛福部建議成年人一天至少需要補充2000毫升的水,才能維持身體的正常機能

此外,對於想減肥的人來說,喝氣泡水也能幫助增加飽足感,減少熱量攝取,可以當作減肥食譜的一部份。就算不減肥,每天喝一杯氣泡水,也可以幫助維持消化系統的健康。

氣泡水中可以加入水果,清涼又營養

氣泡水的喝法

氣泡水好處這麼多,但要怎麼喝呢?營養師推薦,早上起床、吃過早餐後喝一杯氣泡水,可以促進新陳代謝,並補充睡眠中流失的水分。如果想增加飽足感,可以在吃飯當中喝1-2杯氣泡水,幫助減少食物攝取,增加飽足感。有的時候也可以加入像是檸檬、莓果等的一些水果,增加氣泡水的營養價值。另外,運動後喝一杯氣泡水,可以幫助消除疲勞。

值得注意的是,氣泡水一般建議不要空腹喝。空腹喝氣泡水不僅可能會造成脹氣,而且可能會使食慾增加。最好先吃點東西,再喝氣泡水。

氣泡水的缺點

氣泡水只要不喝過量,一般不會有什麼副作用。不過,如果本身腸胃就不好,有胃潰瘍,或十二指腸潰瘍、胃酸過多的人,盡量避免空腹喝氣泡水,以免腸胃道內酸性物質過多,加重病情。

此外,氣泡水裡的氣體多,如果喝太多容易造成脹氣,甚至消化不良、打嗝,建議不能用氣泡水完全取代水喝,每天還是要喝一點白開水平衡。

氣泡水哪裡買

現在氣泡水越來越受歡迎,除了costco、松青超市等進口商,其他一般超市也都買得到台灣產的氣泡水。如果嫌每天瓶裝氣泡水太貴,也可以自己在家做。只要有一台氣泡水機,就可以依照自己的口味,隨時做氣泡水,甚至氣泡酒來喝。

你喝過氣泡水了嗎?你覺得氣泡水味道如何?如果你也是氣泡水的愛好者,來下面留言跟我們分享你的心得吧。

[手紮] 永豐 sport 信用卡

每月燃燒7,000卡,輕鬆拿2%回饋,最高拿3.97%回饋! 再享Garmin﹑Fitbit運動手錶63折起及免費24分期

不小心從FB看到廣告, 稍微查一下實在是很適合自己。
平常有在運動根本就 一個禮拜就累積可以七倍。

加上搭配master 信用卡搭高捷免費。 立刻申辦。


wp woocommerce

 

編輯 woocommerce/templates/single-product/meta.php(啟用)

<?php do_action( ‘woocommerce_product_meta_end!’ ); ?>

編輯 woocommerce/templates/single-product/related.php(啟用)

if ( $related_productsx ) : ?>

[寵物友善餐廳] (高雄) 旅行養分-餐飲.活動.概念空間

-店家資訊於頁末-
是第二次帶著姆姆光顧『旅行養份』了,他是一間很棒的寵物友善餐廳,提醒各位前往前務必要先訂位唷!
這次多帶了新人—貓額子龍龍,龍龍可是第一次到寵餐呢!

關於貓咪外出一直有兩極的看法,因為貓貓敏感的習性,有人認為應該完全不要帶出門,但貓咪敏感的同時也有著好奇愛玩的狩獵天性,家貓總是待在家裡,尤其像台灣屬地狹人稠的居住環境,居家空間對它們來說實在不足以活動,常常看到姆姆寶貝待在家一天下來都快發霉了,才兩歲就像是十幾歲的老貓依樣沒生氣,或到處暴衝,這時候帶去好的寵餐,即使不能讓他們四處奔馳,至少能滿足他們對外面世界的好奇心,回到家的時候也會因為出去玩累了,而變得比較好帶呢!

真的非常喜歡這間寵物友善餐廳,在去過幾間高雄在地的寵餐後,這是我最喜歡的一間,馬上進入介紹吧!
閱讀全文 [寵物友善餐廳] (高雄) 旅行養分-餐飲.活動.概念空間

SAP ABAP日期函数介绍

1、获得最后一天
CALL FUNCTION ‘FIMA_DATE_CREATE’
EXPORTING
I_DATE                       = I_DATE “输入日期。sy-datum类型如:‘20110402’。
I_FLG_END_OF_MONTH            = ‘ ‘
I_YEARS                       = 2 “两年后的日期时间,既sy-datum的年加2所得日期,可为负数,表示前两年
I_MONTHS                      = 1 “一个月后的日期。既sy-datum的月加1所得日期,可为负数,表示前一个月
I_DAYS                        = 23 “23天后的日期。可为负数,表示23天前的日期
I_CALENDAR_DAYS               = 10 “10天后的日历。同I_DAYS参数。
I_SET_LAST_DAY_OF_MONTH       = ‘X’ “返回的日期为当前月份的最后一天
IMPORTING
E_DATE                        = E_DATE “返回的日期。如果I_DAYS和I_CALENDAR_DAYS都设置,则天数累加
E_FLG_END_OF_MONTH            = FLAG     “如果输入参数I_SET_LAST_DAY_OF_MONTH设置’X’了,则返回值为’X’。
E_DAYS_OF_I_DATE              = DAY. “返回输入日期的‘日’字段与I_DAYS字段的和。本例子为:25

2、获得周数

DATA WEEK LIKE SCAL-WEEK.
CALL FUNCTION ‘DATE_GET_WEEK’
EXPORTING
DATE               = SY-DATUM ”输入日期,如:‘20110402’
IMPORTING
WEEK               = WEEK.“返回输入日期为该年第几周。如:‘201113’。表示为2011年的第13周。
3、获得某周的第一天日期

DATA DATE LIKE SCAL-DATE.
CALL FUNCTION ‘WEEK_GET_FIRST_DAY’
EXPORTING
WEEK               = ‘201113’ “表示2011年的第13周
IMPORTING
DATE               = DATE. “返回的DATE值为20110328,既2011年第13周的第一天是3月28日。

4、得到输入日期N个月前/后的日期

4.1 返回指定月以前的日期
CALL FUNCTION ‘CCM_GO_BACK_MONTHS’
EXPORTING
CURRDATE         = sy-datum
BACKMONTHS       = 6
IMPORTING
NEWDATE          = DATE .
4.2 返回指定年,月,日以前或以后的日期.年月日得加减
CALL FUNCTION ‘RP_CALC_DATE_IN_INTERVAL’
EXPORTING
DATE            = sy-datum
DAYS            = 10
MONTHS          = 5
SIGNUM          = ‘+'”取值为‘+’或‘-’
YEARS           = 1
IMPORTING
CALC_DATE       = date  .
5、返回两个日期之间的年数、月数、天数

CALL FUNCTION ‘FIMA_DAYS_AND_MONTHS_AND_YEARS’
EXPORTING
I_DATE_FROM          = ‘20110402’
*   I_KEY_DAY_FROM       =
I_DATE_TO            = ‘20110522’
*   I_KEY_DAY_TO         =
*   I_FLG_SEPARATE       = ‘ ‘
IMPORTING
E_DAYS               = E_DAYS    “值为50
E_MONTHS             = E_MONTHS “值为2
E_YEARS              = E_YEARS .  “值为1
获取两日期之间天数函数:
FIMA_DAYS_AND_MONTHS_AND_YEARS
取得当月的第一天和最后一天
CONCATENATE sy-datum(6) ’01’ INTO so_date-low.
CALL FUNCTION ‘BKK_GET_MONTH_LASTDAY’
EXPORTING
i_date = sy-datum
IMPORTING
e_date = so_date-high.
so_date-sign = ‘I’. so_date-option = ‘BT’. APPEND so_date.
RP_CALC_DATE_IN_INTERVAL 年月日加减

6、获取输入日期月份的最后一天

BKK_GET_MONTH_LASTDAY
EXPORTING
I_DATE = ‘20110403’
IMPORTING
E_DATE = E_DATE. “E_DATE= ‘20110430’
7、日期有效性检查

DATE_CHECK_PLAUSIBILITY
8、获得所有的月份信息

DATA MONTH_NAMES LIKE T247 OCCURS 0.
CALL FUNCTION ‘MONTH_NAMES_GET’
EXPORTING
LANGUAGE                    = SY-LANGU
* IMPORTING
*   RETURN_CODE                 =
TABLES
MONTH_NAMES                 = MONTH_NAMES
* EXCEPTIONS
*   MONTH_NAMES_NOT_FOUND       = 1
*   OTHERS                      = 2
.
9.弹出一个窗口显示一个日历允许用户选择一个日期

CALL FUNCTION ‘F4_DATE’
EXPORTING
DATE_FOR_FIRST_MONTH               = SY-DATUM
DISPLAY                            = ‘X’ “如果为X则只显示日历窗口,而没有返回值
*   FACTORY_CALENDAR_ID                = ‘ ‘
*   GREGORIAN_CALENDAR_FLAG            = ‘ ‘
*   HOLIDAY_CALENDAR_ID                = ‘ ‘
*   PROGNAME_FOR_FIRST_MONTH           = ‘ ‘
IMPORTING
SELECT_DATE                        =  “返回值为选择的日期
*   SELECT_WEEK                        =
*   SELECT_WEEK_BEGIN                  =
*   SELECT_WEEK_END                    =
* EXCEPTIONS
*   CALENDAR_BUFFER_NOT_LOADABLE       = 1
*   DATE_AFTER_RANGE                   = 2
*   DATE_BEFORE_RANGE                  = 3
*   DATE_INVALID                       = 4
*   FACTORY_CALENDAR_NOT_FOUND         = 5
*   HOLIDAY_CALENDAR_NOT_FOUND         = 6
*   PARAMETER_CONFLICT                 = 7
*   OTHERS                             = 8

10、获取一年的第几周和这个周一和周日的日期

FM:GET_WEEK_INFO_BASED_ON_DATE
输入参数                        值
DATE                            2008.01.09
输出参数                        值
WEEK                            200802      <—-2008年第二周
MONDAY                          2008.01.07 <—-这个周周一的日期
SUNDAY                          2008.01.13 <—-周日的日期
11、输入日期是星期几

FM:DAY_IN_WEEK
输入参数                        值
DATUM                           2008.01.09
输出参数                        值
WOTNR                           3           <—-2008-1-9为周三
12、弹窗选择时间

CALL ‘F4_CLOCK’
EXPORTING
START_TIME = ’15:18:20’或‘151820’”输入时可选的
DISPLAY    =
IMPORTING
SELECTED_TIME = “返回选择的时间
13、 年和月的选择窗口

DATA MONTH LIKE ISELLIST-MONTH.
CALL FUNCTION ‘POPUP_TO_SELECT_MONTH’
EXPORTING
ACTUAL_MONTH                     = SY-DATUM+0(6)
*   FACTORY_CALENDAR                 = ‘ ‘
*   HOLIDAY_CALENDAR                 = ‘ ‘
LANGUAGE                         = SY-LANGU
START_COLUMN                     = 8
START_ROW                        = 5
IMPORTING
SELECTED_MONTH                   = MONTH “返回值为六位数字
*   RETURN_CODE                      =
EXCEPTIONS
FACTORY_CALENDAR_NOT_FOUND       = 1
HOLIDAY_CALENDAR_NOT_FOUND       = 2
MONTH_NOT_FOUND                  = 3
OTHERS                           = 4  .

14、获取周的信息

DATA WEEKDAY LIKE T246 OCCURS 0.
CALL FUNCTION ‘WEEKDAY_GET’
* EXPORTING
*   LANGUAGE                = SY-LANGU
* IMPORTING
*   RETURN_CODE             =
TABLES
WEEKDAY                 = WEEKDAY
* EXCEPTIONS
*   WEEKDAY_NOT_FOUND       = 1
*   OTHERS                  = 2

*———————————————————————————————–
计算两个日期间的工作天数,就是剔除了双休日后的天数.( 待考证)
DATE_CONVERT_TO_FACTORYDATE
HR_HK_DIFF_BT_2_DATES

根据当前时间如何找到上月的第一天和最后一天?
CALL FUNCTION ‘FIMA_DATE_CREATE’
EXPORTING
I_DATE                  = SY-DATUM
I_MONTHS                = ‘-1’
I_SET_LAST_DAY_OF_MONTH = ‘X’
IMPORTING
E_DATE                  = LASTDATE.
LASTDATE是上个月最后一天。
FIRSTDAY是上月第一天
CONCATENATE LASTDATE+(6) ’01’ INTO FIRSTDAY.。
当天是当年的第几周
DATE_GET_WEEK
得到该周第一天
WEEK_GET_FIRST_DAY
查找当前月份以前的月份(比如现在是4月份,如果我需要知道6个月之前是哪个月)
CCM_GO_BACK_MONTHS
RP_CALC_DATE_IN_INTERVAL
获取两日期之间天数函数:
FIMA_DAYS_AND_MONTHS_AND_YEARS
取得当月的第一天和最后一天
CONCATENATE sy-datum(6) ’01’ INTO so_date-low.
CALL FUNCTION ‘BKK_GET_MONTH_LASTDAY’
EXPORTING
i_date = sy-datum
IMPORTING
e_date = so_date-high.
so_date-sign = ‘I’. so_date-option = ‘BT’. APPEND so_date.
RP_CALC_DATE_IN_INTERVAL 年月日加减
DATE_CHECK_PLAUSIBILITY 日期有效性检查
SD_DATETIME_DIFFERENCE 两日期作差
DATE_CONVERT_TO_FACTORYDATE 把输入日期转为工厂日历日期
MONTH_NAMES_GET 获得所有的月和名字
F4_DATE     弹出一个窗口显示一个日历允许用户选择一个日期。
RP_LAST_DAY_OF_MONTHS 获得一个月的最后一天
FIRST_DAY_IN_PERIOD_GET 获得期间首日
LAST_DAY_IN_PERIOD_GET 获得期间末日
DATE_GET_WEEK      返回一个日期所在的周数。
CALL FUNCTION ‘HR_99S_INTERVAL_BETWEEN_DATES'”获得两个日期的年数
EXPORTING
begda   = gdat
endda   = sy-datum
IMPORTING
c_years = l_age.
关于星期(周)的函数
FM:GET_WEEK_INFO_BASED_ON_DATE输入参数                        值
DATE                            2008.01.09输出参数                        值
WEEK                            200802      <—-2008年第二周
MONDAY                          2008.01.07 <—-这个周周一的日期
SUNDAY                          2008.01.13 <—-周日的日期
FM:DAY_IN_WEEK(输入日期是星期几)

输入参数                        值
DATUM                           2008.01.09输出参数                        值
WOTNR                           3           <—-2008-1-9为周三
*更多关于Week的函数请看Function Group:CADA
*弹出选择周的对话框
AT SELECTION-SCREEN ON VALUE-REQUEST FOR s_week-low.
PERFORM getweek CHANGING s_week-low.FORM getweek CHANGING p_week .
DATA: begin_date TYPE d .
CALL FUNCTION ‘POPUP_CALENDAR_SDB’
EXPORTING
sel_week   = ‘X’
focus_day = sy-datum
IMPORTING
begin_date = begin_date.
CALL FUNCTION ‘GET_WEEK_INFO_BASED_ON_DATE’
EXPORTING
date = begin_date
IMPORTING
week = p_week.
ENDFORM.F4_CLOCK 选择时间*需求:只有显示年月,但要有日期的search helpPARAMETERS:p1(6) TYPE c.
AT SELECTION-SCREEN ON VALUE-REQUEST FOR p1.
DATA:l_date TYPE sy-datum.
CALL FUNCTION ‘F4_DATE’
EXPORTING
date_for_first_month          = sy-datum
IMPORTING
select_date                   = l_date
EXCEPTIONS
calendar_buffer_not_loadable = 1
date_after_range              = 2
date_before_range             = 3
date_invalid                  = 4
factory_calendar_not_found    = 5
holiday_calendar_not_found    = 6
parameter_conflict            = 7
OTHERS                        = 8.
IF sy-subrc <> 0.
MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
ENDIF.
p1 = l_date+0(6).* check plausibilty of dates
CALL FUNCTION ‘DATE_CHECK_PLAUSIBILITY’
EXPORTING
DATE = bkdf-dbbdt.TIME_CHECK_PLAUSIBILITY   判断是不是时间GET_CURRENT_YEAR
得到当前的财政年(fiscal year)
察看某日期的属性,包括该日期是星期几,第几天(周2=2),是不是公共假期等,需要输入国家日历。

DAY_ATTRIBUTES_GET判断某天是否是假日
HOLIDAY_CHECK_AND_GET_INFOPOPUP_TO_SELECT_MONTH 月份选择窗口比较日期和时间TYPE-POOLS : TRFF .
DATA : X_LOG_OP        TYPE TRFF_TYPE_C_2 .
CALL FUNCTION ‘FIMA_DATE_COMPARE’
EXPORTING
I_FLG_INTRADAY = ‘X’
I_DATE         = SY-DATUM
I_TIME         = SY-UZEIT
I_COMP_DATE    = L_MODIFY-MODDATE
I_COMP_TIME    = L_MODIFY-MODTIME
IMPORTING
E_LOG_OP       = X_LOG_OP.
p_months = -4.”前4月,如果为正,则是后面的日期

CALL FUNCTION ‘MONTH_PLUS_DETERMINE’
EXPORTING
MONTHS        = p_months
OLDDATE       = p_date
IMPORTING
NEWDATE       = p_date.获得某个日期所在的周,获得某周的第一天。
DATE_GET_WEEK 和 WEEK_GET_FIRST_DAY
function date_get_week.
*”———————————————————————-
*”*”Lokale Schnittstelle:
*”       IMPORTING
*”             VALUE(DATE) LIKE SCAL-DATE
*”       EXPORTING
*”             VALUE(WEEK) LIKE SCAL-WEEK
*”       EXCEPTIONS
*”              DATE_INVALID
*”———————————————————————-

函数模块作用:
获得某个日期所在的周。
=============================================
function week_get_first_day.
*”———————————————————————-
*”*”Lokale Schnittstelle:
*” IMPORTING
*”     VALUE(WEEK) LIKE SCAL-WEEK
*” EXPORTING
*”     VALUE(DATE) LIKE SCAL-DATE
*” EXCEPTIONS
*”      WEEK_INVALID
*”———————————————————————-

函数模块作用:
获得某周的第一天。
============================================
上述两个函数的功能已经包含在 HR_GBSSP_GET_WEEK_DATES 中了。从数据表中获得指定语言每周七天的名称,例如中文就是星期一、星期二……星期日,英文就是Sunday、Monday……Saturday。WEEKDAY_GETFUNCTION WEEKDAY_GET.
*”———————————————————————-
*”*”Lokale Schnittstelle:
*”       IMPORTING
*”             VALUE(LANGUAGE) LIKE SY-LANGU DEFAULT SY-LANGU
*”       EXPORTING
*”             VALUE(RETURN_CODE) LIKE SY-SUBRC
*”       TABLES
*”              WEEKDAY STRUCTURE T246
*”       EXCEPTIONS
*”              WEEKDAY_NOT_FOUND
*”———————————————————————-

函数模块作用:
从数据表中获得指定语言每周七天的名称,例如中文就是星期一、星期二……星期日,英文就是Sunday、Monday……Saturday。

输入参数:
LANGUAGE:指定语言代码,可以省略,如果不填就是当前登录语言。注意,在调用时如果指定某种特定语言,必须用一个字节的语言代码,例如中文是 1、英文是 E……,而不能用 ZH、EN,语言代码参见表 T002。

输出参数:
RETURN_CODE:返回码,查询数据库获得的返回码。但是由于这个函数会抛出异常,因此返回码的作用不大。

表:
WEEKDAY:结构与透明表 T246 相同,用来存储返回给用户的周日名称。

异常:
WEEKDAY_NOT_FOUND:没有找到周日的描述。 (作者:Helena)
转载于SAP学习门户网,原文链接:http://www.sap6.com/learn/abap/073502232016/4118.html