2017年12月30日 星期六

ABAP/4 : How to create multi line textbox on screen

在 SAP Screen 中加入 Textbox 不像一般 Visual Studio 把 Textbox multiline 設為 True 即可,需要先建立 Custom Control,再透過 Customer Control 建立 cl_gui_custom_container 用來裝載 cl_gui_textedit。

2017年12月8日 星期五

Python - Using Python With Oracle Database 11g

要使用 Python 連線 Oracle,基本上要準備以下工具,目前要使用的是 Python 2.7 進行 Oracle 11g 的連線

上敘 1, 2 點基本安裝在本文就不說明,從 3, 4 進行說明

cx_oracle 主要是 python 擴充的 Library 用於 Oracle 資料庫的連線存取,而 Oracle Instance Client 則是連線時會需要使用到 oci.dll, oraociei12.dll 這兩個 dll 檔

首先先到 https://pypi.python.org/pypi/cx_Oracle/5.2.1 下載 cx_oracle,目前我使用的是 32bit windows 7 且 Python 2.7,因此選擇的版本是 32bit

2017年9月20日 星期三

GCP - Create google cloud SDK environment with python in windows

本文將介紹如何使用 google cloud SDK 在本機進行 python 程式開發環境的建置與測試,過程中因為需要使用到 Google Cloud Platform 上的帳號,Project 以及 App Engine,因此需參照前一篇: GCP - How to create PostgreSQL + Python environment in Google Cloud Platform 進行帳號與 Project 的建置

2017年9月17日 星期日

GCP - How to create PostgreSQL + Python environment in Google Cloud Platform

當要自行架設網站時,不想花錢購買系統軟體的前題下,一般都會選擇 Linux + MySQL/PostgreSQL + Java/Python,如果還要架設 WEB server 還可以選擇 Apache + Tomcat + JSP/PHP,加上伺服器的管理,這樣對只想專注在程式語言開發的人,往往在環境架設上就會花費大量的時間,隨著 Google 提供的 Google Cloud Platform 以上環境的建置不需要任何硬體的花費,安裝上也因相對簡單與快速,甚至很容易就可以重建環境,目前第一年試用免費,未來則會依要使用的環境進行付費。

2017年8月19日 星期六

ABAP/4 : BAPI:BAPI_INCOMINGINVOICE_CANCEL Reversed Invoice (MR8M)

接續前面一篇 ABAP/4 : BAPI:BAPI_GOODSMVT_CANCEL Reversed MM DOC (MBST) 迴轉 MM Document 的 BAPI,基於資料一致性,通常如果收貨文件回轉後就需要連同發票驗證一起迴轉,而發票驗證的迴轉則會使用 BAPI_INCOMINGINVOICE_CANCEL

ABAP/4 : BAPI:BAPI_GOODSMVT_CANCEL Reversed MM DOC (MBST)

當 MM Document 過帳後,如果須要進行迴轉時,一般透過 MBST 進行迴轉,有時需要透過系統自動迴轉時,則可以使用 BAPI:BAPI_GOODSMVT_CANCEL,進行

2017年8月2日 星期三

REGULAR EXPRESSION SAMPLE

REGULAR EXPRESSION SAMPLE

Hyper Link : '(https?://[^\s)";]+\.(\w|/)*)'

https?:// => s 可有可無,所以可以是 http:// or https://
[^\s)";]+ => [^] 除了內容值以外的值,\s 空白,則表示非空白, ), ", ;,這邊可以考慮再加上 (,而 + 指至少出現 1 or 多次
\. => 不使用 Regular Expression 的 . (除換行外其他字符)
(\w|/)* => 在第一個 https:// 後的第一個 . 後,\w : 0-9, a-z, A-Z 或 /,* 可出現也可不出現

2017年7月31日 星期一

IMG - How to create selection parameters for ME2L

一般在月結前財務人員會確認 GR/IR 的數量是否一致,為避免收貨人員已入庫但財務人員未進行發票驗證,所以通常需要確保 PO History 的 GR Qty = IR Qty,而 SAP 本身提供 T-Code ME2L 針對 PO 進行相關資料的確認。

其中在 ME2L 可透過 Selection Parameters 查詢 GR/IR 相關設定,以下將說明如何簡單設定 Selection Parameters 讓 User 能夠透過 ME2L 查詢 GR <> IR 數量不一致的清單

2017年7月30日 星期日

Python - Example for web crawler in python (網路爬蟲簡單幾句捉取股票成交金額)

在工作上有時會有使用者需求,要去捉取某個網頁上特定的資訊以供廠內系統使用 (講白話就是公司不想花錢請廠商直接提供,做 IT 只要硬著頭皮自己去網站捉 .... XD),最常見像是海關三旬匯率,或目前即時股票即時資訊,以下就教你一步一步做到捉取網頁上特定欄位資訊

2017年3月8日 星期三

ABAP/4 - How to find the table maintenance be used in which tcode?

SAP Table 在 SE11 時可以確認該 Table 是否有建立 Table Maintenance,但當只知道 Table Maintenance 的名稱時,卻沒有辦法查到該 Table Maintenance 是否有維護 T-Code (不像 SE80 可以看到 Program 對應的 T-Code),因此可能造成同一個 Table Maintenance 有多個 T-Code (不知情的情況下造成重覆建立)。

2017年3月4日 星期六

ABAP/4 Standard report screen 1000 add customize button (not change status)

在 ABAP/4 Report 中如果要自行在 STATUS 中加入按鈕,如果使用 SET PF-STATUS <STATUS> 會造成報表預設的 Status 被更換,連同原本的 Background 功能也消失,因此如果要自行增加 Report 在 Selection Screen 上的按鈕,則可由 Table: sscrfields. 進行設定

2017年2月18日 星期六

ABAP/4 : How to trigger double click in ALV & WRITE REPORT

當 ALV 顯示出文件時,希望能透過 Double Click 在文件號碼時,能夠使用 Call Transaction 進到該文件 SAP Standard TCode 畫面時,則可進行下面的程式撰寫

2017年2月11日 星期六

SAP IMG - F.13 Automatic Clearing IMG & Clearing rule (TCODE : OB74 & OBYC related)

當 User 要大量針對特定科目借方貸方金額相互 Clearing 時,除了自行用 F-04 結清外,可使用 F.13 進行大量科目結清,但其結清的 Rule 主要有兩種判斷方式

1. OB74 for normal clearing rule by customized rule
2. OBYC GR/IR for "GR/IR account special process"


ABAP/4 : How to trigger REPORT END-OF-PAGE block event (SKIP or RESERVE)

在 ABAP/4 Report 中時常發現報表的 END-OF-PAGE 會被驅動

2017年1月8日 星期日

SAP - SAP location IMG path & where-used

以下內容將說明 SAP 主檔 Location 的 IMG 位置,以及使用到的 T-Code

1. Define Location

IMG -> Enterprise Structure -> Definition -> Logistics - General -> Define Location

2017年1月1日 星期日

How to install & specified python version or distreibtuion package version in google colab

在買了 RTX 3080 要來 挖礦...  嗯~是跑機器學習後,結果發現了 GOOGLE COLAB,其實之前在「GAN 對抗式生成網路」一書就有看到,但資訊人就是什麼都想自己安裝,在本機用 Anaconda + pyCharm 弄了 GPU 環境,結果有天從新竹回家發現家裡沒...