目前日期文章:201811 (3)

瀏覽方式: 標題列表 簡短摘要

SELECT product , part , Level

FROM bom

START WITH product ='ProductName'

CONNECT BY PRIOR part = product

 

可與 INNER JOIN / OUTER JOIN 一起使用.

文章標籤

伊 發表在 痞客邦 留言(0) 人氣()

程式開發手冊 : 

http://4js.com/online_documentation/fjs-fgl-2.50.01-manual-html/

(直接看重點) http://4js.com/online_documentation/fjs-fgl-2.50.01-manual-html/#c_fgl_section_language_basics.html

 

程式錯誤訊息 : 

http://4js.com/online_documentation/fjs-fgl-2.50.01-manual-html/c_fgl_localization_026.html

 

SQL錯誤訊息 : 

http://4js.com/online_documentation/fjs-fgl-2.50.01-manual-html/c_fgl_odiagads_046.html

http://4js.com/online_documentation/fjs-fgl-2.50.01-manual-html/c_fgl_sql_programming_sqlca.html

 

SQLSTATE vs. SQLCODE

http://www.postgres.cn/docs/9.4/ecpg-errors.html

文章標籤

伊 發表在 痞客邦 留言(0) 人氣()

#string split function
#ignore empty value
#p_arg1: input value1 STRING
#p_arg2: input value2 STRING
#r_arr: return value1 DYNAMIC ARRAY OF STRING
#Example: CALL split(str1, str2, arr1)
#   str1 = 'abc-def--1-2'
#   str2 = '-'
#   arr1.getLength() = 4
#   arr1[1] = abc , arr1[2] = def , arr1[3] = 1 , arr1[4] = 2
FUNCTION split(p_arg1,p_arg2,r_arr)
    DEFINE p_arg1   STRING
    DEFINE p_arg2   STRING
    DEFINE r_arr    DYNAMIC ARRAY OF STRING
    DEFINE l_cnt    INTEGER
    DEFINE l_str    STRING
    DEFINE tok      base.StringTokenizer

    CALL r_arr.clear()
    
    LET tok = base.StringTokenizer.create(p_arg1,p_arg2)
    LET l_cnt = tok.countTokens()
    
    IF cl_null(p_arg2) OR l_cnt <= 0 THEN
        RETURN
    ELSE
        WHILE tok.hasMoreTokens()
            LET l_str = tok.nextToken()
            LET l_str = l_str.trim()
            IF NOT cl_null(l_str) THEN
                CALL r_arr.appendElement()
                LET r_arr[r_arr.getLength()] = l_str
            END IF
        END WHILE
    END IF
END FUNCTION

文章標籤

伊 發表在 痞客邦 留言(0) 人氣()