Fixed length file read: ------------------------------------------- ----------------------- Communicate fixed long ファ ル ル 区 区 り り - Function: Fixed long ファ ファ ル 区 切 切 取 取 取 区 区 区 处理 处理 处理 引 引 引 引 引 引 处理 处理 处理 处理 引 引 处理 处理 引 处理 处理 处理 处理 处理 处理 处理 处理 处理 处理 处理 处理 处理 处理 处理 处理 处理 处理 处理 处理 处理- PNU_POS_BEGIN in Number Start Position - PNU_POS_LEN in Number Number - 戻 戻 値: VARCHAR2 Procedure ----------------------------- -------------------------------------- Function fnc_get_substr (PV2_String In Varchar2, PNU_POS_BEGIN in Number, PNU_POS_LEN In Number) Return VARCHAR2 IS BEGIN IF PNU_POS_BEGIN> 0 and PNU_POS_LEN> 0 THEN
If Length (PV2_String)> PNU_POS_BEGIN PNU_POS_LEN - 1 THEN
Return TRIM (Substrb (PV2_String, PNU_POS_BEGIN, PNU_POS_LEN);
Else
Return GCV2_NULL;
END IF;
ELSE RETURN GCV2_NULL; END IF;
EXCEPTION WHEN OTHERS THEN RETURN GCV2_NULL;
END FNC_GET_SUBSTR; becomes long, CSV, Tab and other files read ----------------------------------- ------------------------------ - A common Canada Chang ブ ブ ブ 切 关 关 关 数 机 机 机 机 机 机 机 机 机 机 机 机 机 机 机 机 り 机 り 机 り り 机 り り り 机 り 机 り 机: PV2_STRING IN VARCHAR2 Handling フィ フィ ド - PNU_Position In Number Project Position - PV2_SEParate In Varchar2 can be 変 変 ブ ブ - 戻 戻 値: varchar2 Processing Results --------------------- --------------------------------------------- Function FNC_GET_POSSTR (PV2_String In varchar2, pnu_position in number, pv2_separate in varchar2) Return varchar2 is WNU_POS_BEGIN Number; WNU_POS_END NUMBER; Begin
IF PNU_Position = 1 THEN
WNU_POS_BEGIN: = 1; if IF INSTRB (PV2_String, Pv2_seParate, 1, 1) = 0 THEN RETURN GCV2_NULL; ELSE WNU_POS_END: = INSTRB (PV2_String, PV2_SEPARATE, 1, 1); END IF;
Elsif PNU_Position> 0 THEN
IF INSTRB (PV2_String, Pv2_separate, 1, PNU_Position) = 0 THEN
IF INSTRB (pv2_string, pv2_separate, 1, pnu_position-1) = 0 ThenReturn GCV2_NULL;
Else
WNU_POS_BEGIN: = INSTRB (pv2_string, pv2_separate, 1, pnu_position-1) 1; WNU_POS_END: = Length (pv2_string);
END IF;
Else
WNU_POS_BEGIN: = INSTRB (pv2_string, pv2_separate, 1, pnu_position-1) 1; WNU_POS_END: = INSTRB (PV2_String, Pv2_seParate, 1, PNU_Position);
END IF;
Else
Return GCV2_NULL;
END IF;
Return TRIM (Substrb (PV2_String, WNU_POS_BEGIN, WNU_POS_END - WNU_POS_BEGIN-1);
EXCEPTION WHEN OTHERS THEN RETURN GCV2_NULL; END FNC_GET_POSSTR;